From 3faa7f7508e0f11f5d052e9d952b33e88afea85f Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Wed, 26 May 2021 11:23:09 +0200 Subject: [PATCH 01/43] Switch to GNAT Community 2021 Ref. #494 --- .github/workflows/tests.yml | 18 +++++++++--------- README.md | 2 +- defaults.gpr | 2 +- examples/apps/ping/src/icmpv4.ads | 4 +--- 4 files changed, 12 insertions(+), 14 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 46e2f59b0..5f6feeca0 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -51,7 +51,7 @@ jobs: key: ${{ runner.os }}-python${{ env.PYTHON_VERSION }}-${{ hashFiles('setup.py', '*.cfg', '*.ini', '.pylintrc', '.flake8') }} - name: Install toolchain if: ${{ needs.skip_check_general.outputs.should_skip != 'true' }} - uses: ada-actions/toolchain@ce2020 + uses: ada-actions/toolchain@ce2021 with: distrib: community - name: Install dependencies @@ -144,7 +144,7 @@ jobs: key: ${{ runner.os }}-python${{ env.PYTHON_VERSION }}-${{ hashFiles('setup.py', '*.cfg', '*.ini', '.pylintrc', '.flake8') }} - name: Install toolchain if: ${{ needs.skip_check_python.outputs.should_skip != 'true' }} - uses: ada-actions/toolchain@ce2020 + uses: ada-actions/toolchain@ce2021 with: distrib: community - name: Install dependencies @@ -195,7 +195,7 @@ jobs: ~/.local/bin key: ${{ runner.os }}-python${{ env.PYTHON_VERSION }}-${{ hashFiles('setup.py', '*.cfg', '*.ini', '.pylintrc', '.flake8') }} - name: Install toolchain - uses: ada-actions/toolchain@ce2020 + uses: ada-actions/toolchain@ce2021 with: distrib: community - name: Install dependencies @@ -241,7 +241,7 @@ jobs: submodules: true - name: Install toolchain if: ${{ needs.skip_check_spark.outputs.should_skip != 'true' }} - uses: ada-actions/toolchain@ce2020 + uses: ada-actions/toolchain@ce2021 with: distrib: community - name: Test @@ -259,7 +259,7 @@ jobs: with: submodules: true - name: Install toolchain - uses: ada-actions/toolchain@ce2020 + uses: ada-actions/toolchain@ce2021 with: distrib: community - name: Build runtime @@ -316,7 +316,7 @@ jobs: key: ${{ runner.os }}-python${{ env.PYTHON_VERSION }}-${{ hashFiles('setup.py', '*.cfg', '*.ini', '.pylintrc', '.flake8') }} - name: Install toolchain if: ${{ needs.skip_check_spark.outputs.should_skip != 'true' }} - uses: ada-actions/toolchain@ce2020 + uses: ada-actions/toolchain@ce2021 with: distrib: community - name: Install dependencies @@ -362,7 +362,7 @@ jobs: ~/.local/bin key: ${{ runner.os }}-python${{ env.PYTHON_VERSION }}-${{ hashFiles('setup.py', '*.cfg', '*.ini', '.pylintrc', '.flake8') }} - name: Install toolchain - uses: ada-actions/toolchain@ce2020 + uses: ada-actions/toolchain@ce2021 with: distrib: community - name: Install dependencies @@ -424,7 +424,7 @@ jobs: key: ${{ runner.os }}-python${{ env.PYTHON_VERSION }}-${{ hashFiles('setup.py', '*.cfg', '*.ini', '.pylintrc', '.flake8') }} - name: Install toolchain if: ${{ needs.skip_check_apps.outputs.should_skip != 'true' }} - uses: ada-actions/toolchain@ce2020 + uses: ada-actions/toolchain@ce2021 with: distrib: community - name: Install dependencies @@ -471,7 +471,7 @@ jobs: ~/.local/bin key: ${{ runner.os }}-python${{ env.PYTHON_VERSION }}-${{ hashFiles('setup.py', '*.cfg', '*.ini', '.pylintrc', '.flake8') }} - name: Install toolchain - uses: ada-actions/toolchain@ce2020 + uses: ada-actions/toolchain@ce2021 with: distrib: community - name: Install dependencies diff --git a/README.md b/README.md index 8e6dace01..d78986b54 100644 --- a/README.md +++ b/README.md @@ -268,7 +268,7 @@ if parse_message(b"\x01\x00\x04\x01\x02\x03\x04") != create_message(): As a prerequisite, the following dependencies need to be installed: -- [GNAT Community](https://www.adacore.com/download) >= 2020 +- [GNAT Community](https://www.adacore.com/download) >= 2021 - [GMP](https://gmplib.org/) This is provided as a package for various distributions, e.g., libgmp-dev (Debian/Ubuntu), gmp-devel (Fedora) or gmp (Arch Linux). RecordFlux can be installed from PyPI: diff --git a/defaults.gpr b/defaults.gpr index 13c0e21e9..15057d420 100644 --- a/defaults.gpr +++ b/defaults.gpr @@ -10,7 +10,7 @@ abstract project Defaults is "--warnings=error", "--proof-warnings", "--no-axiom-guard", - "--no-counterexample", + "--counterexamples=off", "-j0" ); diff --git a/examples/apps/ping/src/icmpv4.ads b/examples/apps/ping/src/icmpv4.ads index f8f3fb2cb..506da0b06 100644 --- a/examples/apps/ping/src/icmpv4.ads +++ b/examples/apps/ping/src/icmpv4.ads @@ -1,4 +1,3 @@ -with SPARK.Heap; with RFLX.IPv4; with RFLX.RFLX_Builtin_Types; with Ada.Text_IO; @@ -22,8 +21,7 @@ is procedure Ping (Addr : String) with Global => (In_Out => (Ping_State, - Ada.Text_IO.File_System, - SPARK.Heap.Dynamic_Memory), + Ada.Text_IO.File_System), Input => Ada.Real_Time.Clock_Time); procedure Generate (Buf : in out RFLX.RFLX_Builtin_Types.Bytes_Ptr; From 7b3419593a0e3fb06abccff1e380573f5715fd94 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Wed, 26 May 2021 15:37:30 +0200 Subject: [PATCH 02/43] Remove workarounds for earlier GNAT Community versions Ref. #494 --- rflx/generator/common.py | 12 +- rflx/generator/generator.py | 5 +- rflx/generator/parser.py | 81 +- rflx/generator/serializer.py | 2 +- .../rflx-enumeration-generic_message.adb | 9 - .../generated/rflx-ethernet-generic_frame.adb | 144 --- .../rflx-expression-generic_message.adb | 15 - .../generated/rflx-icmp-generic_message.adb | 874 ------------------ .../generated/rflx-ipv4-generic_option.adb | 86 -- .../generated/rflx-ipv4-generic_packet.adb | 321 +------ .../rflx-sequence-generic_inner_message.adb | 24 - .../rflx-sequence-generic_message.adb | 163 +--- ...rflx-sequence-generic_messages_message.adb | 24 - ..._sequence_size_defined_by_message_size.adb | 24 - .../generated/rflx-tlv-generic_message.adb | 38 - .../generated/rflx-udp-generic_datagram.adb | 60 -- 16 files changed, 33 insertions(+), 1849 deletions(-) diff --git a/rflx/generator/common.py b/rflx/generator/common.py index dfb6b512a..a5742caf6 100644 --- a/rflx/generator/common.py +++ b/rflx/generator/common.py @@ -543,23 +543,13 @@ def sufficient_space_for_field_condition(field_name: ada.Name) -> ada.Expr: ) -def initialize_field_statements( - message: model.Message, field: model.Field, prefix: str -) -> Sequence[ada.Statement]: +def initialize_field_statements(field: model.Field) -> Sequence[ada.Statement]: return [ ada.CallStatement( "Reset_Dependent_Fields", [ada.Variable("Ctx"), ada.Variable(field.affixed_name)], ), ada.Assignment("Ctx.Message_Last", ada.Variable("Last")), - # WORKAROUND: - # Limitation of GNAT Community 2019 / SPARK Pro 20.0 - # Provability of predicate is increased by adding part of - # predicate as assert - ada.PragmaStatement( - "Assert", - [message_structure_invariant(message, prefix)], - ), ada.Assignment( ada.Indexed(ada.Variable("Ctx.Cursors"), ada.Variable(field.affixed_name)), ada.NamedAggregate( diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index e9ab12870..4d12dd4e2 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -2055,8 +2055,9 @@ def __create_equal_function( ], ) + @staticmethod def __create_switch_procedures( - self, message: Message, sequence_fields: ty.Mapping[Field, Type] + message: Message, sequence_fields: ty.Mapping[Field, Type] ) -> UnitPart: def specification(field: Field) -> ProcedureSpecification: return ProcedureSpecification( @@ -2230,7 +2231,7 @@ def specification(field: Field) -> ProcedureSpecification: "Invalid", [Variable("Ctx"), Variable(f.affixed_name)], ), - common.initialize_field_statements(message, f, self.__prefix), + common.initialize_field_statements(f), ) ] ), diff --git a/rflx/generator/parser.py b/rflx/generator/parser.py index 86b14f917..cdf853806 100644 --- a/rflx/generator/parser.py +++ b/rflx/generator/parser.py @@ -12,7 +12,6 @@ Call, CallStatement, Case, - CaseStatement, Div, Equal, Expr, @@ -28,7 +27,6 @@ Mod, Mul, NamedAggregate, - NullStatement, Number, ObjectDeclaration, Old, @@ -44,7 +42,6 @@ Selected, Size, Slice, - Statement, String, Subprogram, SubprogramBody, @@ -177,8 +174,8 @@ def result(field: Field, message: Message) -> NamedAggregate: ], ) + @staticmethod def create_verify_procedure( - self, message: Message, scalar_fields: Mapping[Field, Scalar], composite_fields: Sequence[Field], @@ -248,7 +245,7 @@ def create_verify_procedure( [ ( Call("Composite_Field", [Variable("Fld")]), - [set_context_cursor_composite(scalar_fields, composite_fields)], + [set_context_cursor_composite_field("Fld")], ) ], [set_context_cursor_scalar()], @@ -256,35 +253,35 @@ def create_verify_procedure( if scalar_fields and composite_fields else set_context_cursor_scalar() if scalar_fields and not composite_fields - else set_context_cursor_composite(scalar_fields, composite_fields), - # WORKAROUND: - # Limitation of GNAT Community 2019 / SPARK Pro 20.0 - # Provability of predicate is increased by adding part of - # predicate as assert - PragmaStatement("Assert", [common.message_structure_invariant(message, self.prefix)]), - # WORKAROUND: - # Limitation of GNAT Community 2019 / SPARK Pro 20.0 - # Provability of predicate is increased by splitting - # assignment in multiple statements - IfStatement( + else set_context_cursor_composite_field("Fld"), + *( [ - ( - Equal(Variable("Fld"), Variable(f.affixed_name)), + # ISSUE: Componolit/RecordFlux#664 + # The provability of the context predicate is increased by splitting the + # assignment into multiple statements. + IfStatement( [ - Assignment( - Indexed( - Variable("Ctx.Cursors"), - Call("Successor", [Variable("Ctx"), Variable("Fld")]), - ), - NamedAggregate( - ("State", Variable("S_Invalid")), - ("Predecessor", Variable("Fld")), - ), + ( + Equal(Variable("Fld"), Variable(f.affixed_name)), + [ + Assignment( + Indexed( + Variable("Ctx.Cursors"), + Call("Successor", [Variable("Ctx"), Variable("Fld")]), + ), + NamedAggregate( + ("State", Variable("S_Invalid")), + ("Predecessor", Variable("Fld")), + ), + ) + ], ) - ], + for f in message.fields + ] ) - for f in message.fields ] + if len(message.fields) > 1 + else [] ), ] @@ -826,32 +823,6 @@ def set_context_cursor_scalar() -> Assignment: ) -def set_context_cursor_composite( - scalar_fields: Mapping[Field, Scalar], composite_fields: Sequence[Field] -) -> Statement: - # WORKAROUND: - # Limitation of GNAT Community 2020 - # The provability of the predicate of `Ctx` is increased by - # duplicating the assignment inside of a case statement. - return ( - CaseStatement( - Variable("Fld"), - [ - *[ - ( - Variable(f.affixed_name), - [set_context_cursor_composite_field(f.affixed_name)], - ) - for f in composite_fields - ], - *([(Variable("others"), [NullStatement()])] if scalar_fields else []), - ], - ) - if len(composite_fields) > 1 - else set_context_cursor_composite_field("Fld") - ) - - def set_context_cursor_composite_field(field_name: str) -> Assignment: return Assignment( Indexed( diff --git a/rflx/generator/serializer.py b/rflx/generator/serializer.py index 293e5fb8d..ba79cb981 100644 --- a/rflx/generator/serializer.py +++ b/rflx/generator/serializer.py @@ -772,7 +772,7 @@ def specification_public(field: Field) -> ProcedureSpecification: SubprogramBody( specification_private(f), common.field_bit_location_declarations(Variable(f.affixed_name)), - common.initialize_field_statements(message, f, self.prefix), + common.initialize_field_statements(f), [ Precondition( AndThen( diff --git a/tests/spark/generated/rflx-enumeration-generic_message.adb b/tests/spark/generated/rflx-enumeration-generic_message.adb index fd12886ff..c8fc1e115 100644 --- a/tests/spark/generated/rflx-enumeration-generic_message.adb +++ b/tests/spark/generated/rflx-enumeration-generic_message.adb @@ -160,15 +160,6 @@ is Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Priority)) - then - Ctx.Cursors (F_Priority).Last - Ctx.Cursors (F_Priority).First + 1 = RFLX.Enumeration.Priority_Base'Size - and then Ctx.Cursors (F_Priority).Predecessor = F_Initial - and then Ctx.Cursors (F_Priority).First = Ctx.First)); - if Fld = F_Priority then - Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); - end if; else Ctx.Cursors (Fld) := (State => S_Invalid, Predecessor => F_Final); end if; diff --git a/tests/spark/generated/rflx-ethernet-generic_frame.adb b/tests/spark/generated/rflx-ethernet-generic_frame.adb index 4c96f5c49..10c57127d 100644 --- a/tests/spark/generated/rflx-ethernet-generic_frame.adb +++ b/tests/spark/generated/rflx-ethernet-generic_frame.adb @@ -348,78 +348,6 @@ is else Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); end if; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Destination)) - then - Ctx.Cursors (F_Destination).Last - Ctx.Cursors (F_Destination).First + 1 = RFLX.Ethernet.Address'Size - and then Ctx.Cursors (F_Destination).Predecessor = F_Initial - and then Ctx.Cursors (F_Destination).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Source)) - then - Ctx.Cursors (F_Source).Last - Ctx.Cursors (F_Source).First + 1 = RFLX.Ethernet.Address'Size - and then Ctx.Cursors (F_Source).Predecessor = F_Destination - and then Ctx.Cursors (F_Source).First = Ctx.Cursors (F_Destination).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Type_Length_TPID)) - then - Ctx.Cursors (F_Type_Length_TPID).Last - Ctx.Cursors (F_Type_Length_TPID).First + 1 = RFLX.Ethernet.Type_Length_Base'Size - and then Ctx.Cursors (F_Type_Length_TPID).Predecessor = F_Source - and then Ctx.Cursors (F_Type_Length_TPID).First = Ctx.Cursors (F_Source).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_TPID)) - and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100# - then - Ctx.Cursors (F_TPID).Last - Ctx.Cursors (F_TPID).First + 1 = RFLX.Ethernet.TPID_Base'Size - and then Ctx.Cursors (F_TPID).Predecessor = F_Type_Length_TPID - and then Ctx.Cursors (F_TPID).First = Types.Bit_Index (Ctx.Cursors (F_Type_Length_TPID).First) - and then (if - Structural_Valid (Ctx.Cursors (F_TCI)) - then - Ctx.Cursors (F_TCI).Last - Ctx.Cursors (F_TCI).First + 1 = RFLX.Ethernet.TCI'Size - and then Ctx.Cursors (F_TCI).Predecessor = F_TPID - and then Ctx.Cursors (F_TCI).First = Ctx.Cursors (F_TPID).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Type_Length)) - then - Ctx.Cursors (F_Type_Length).Last - Ctx.Cursors (F_Type_Length).First + 1 = RFLX.Ethernet.Type_Length_Base'Size - and then Ctx.Cursors (F_Type_Length).Predecessor = F_TCI - and then Ctx.Cursors (F_Type_Length).First = Ctx.Cursors (F_TCI).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Type_Length).Value.Type_Length_Value) * 8 - and then Ctx.Cursors (F_Payload).Predecessor = F_Type_Length - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Type_Length).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Type_Length).Last) - and then Ctx.Cursors (F_Payload).Predecessor = F_Type_Length - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Type_Length).Last + 1)))) - and then (if - Structural_Valid (Ctx.Cursors (F_Type_Length)) - and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100# - then - Ctx.Cursors (F_Type_Length).Last - Ctx.Cursors (F_Type_Length).First + 1 = RFLX.Ethernet.Type_Length_Base'Size - and then Ctx.Cursors (F_Type_Length).Predecessor = F_Type_Length_TPID - and then Ctx.Cursors (F_Type_Length).First = Types.Bit_Index (Ctx.Cursors (F_Type_Length_TPID).First) - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Type_Length).Value.Type_Length_Value) * 8 - and then Ctx.Cursors (F_Payload).Predecessor = F_Type_Length - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Type_Length).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Type_Length).Last) - and then Ctx.Cursors (F_Payload).Predecessor = F_Type_Length - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Type_Length).Last + 1)))))); if Fld = F_Destination then Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); elsif Fld = F_Source then @@ -623,78 +551,6 @@ is begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Destination)) - then - Ctx.Cursors (F_Destination).Last - Ctx.Cursors (F_Destination).First + 1 = RFLX.Ethernet.Address'Size - and then Ctx.Cursors (F_Destination).Predecessor = F_Initial - and then Ctx.Cursors (F_Destination).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Source)) - then - Ctx.Cursors (F_Source).Last - Ctx.Cursors (F_Source).First + 1 = RFLX.Ethernet.Address'Size - and then Ctx.Cursors (F_Source).Predecessor = F_Destination - and then Ctx.Cursors (F_Source).First = Ctx.Cursors (F_Destination).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Type_Length_TPID)) - then - Ctx.Cursors (F_Type_Length_TPID).Last - Ctx.Cursors (F_Type_Length_TPID).First + 1 = RFLX.Ethernet.Type_Length_Base'Size - and then Ctx.Cursors (F_Type_Length_TPID).Predecessor = F_Source - and then Ctx.Cursors (F_Type_Length_TPID).First = Ctx.Cursors (F_Source).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_TPID)) - and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100# - then - Ctx.Cursors (F_TPID).Last - Ctx.Cursors (F_TPID).First + 1 = RFLX.Ethernet.TPID_Base'Size - and then Ctx.Cursors (F_TPID).Predecessor = F_Type_Length_TPID - and then Ctx.Cursors (F_TPID).First = Types.Bit_Index (Ctx.Cursors (F_Type_Length_TPID).First) - and then (if - Structural_Valid (Ctx.Cursors (F_TCI)) - then - Ctx.Cursors (F_TCI).Last - Ctx.Cursors (F_TCI).First + 1 = RFLX.Ethernet.TCI'Size - and then Ctx.Cursors (F_TCI).Predecessor = F_TPID - and then Ctx.Cursors (F_TCI).First = Ctx.Cursors (F_TPID).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Type_Length)) - then - Ctx.Cursors (F_Type_Length).Last - Ctx.Cursors (F_Type_Length).First + 1 = RFLX.Ethernet.Type_Length_Base'Size - and then Ctx.Cursors (F_Type_Length).Predecessor = F_TCI - and then Ctx.Cursors (F_Type_Length).First = Ctx.Cursors (F_TCI).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Type_Length).Value.Type_Length_Value) * 8 - and then Ctx.Cursors (F_Payload).Predecessor = F_Type_Length - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Type_Length).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Type_Length).Last) - and then Ctx.Cursors (F_Payload).Predecessor = F_Type_Length - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Type_Length).Last + 1)))) - and then (if - Structural_Valid (Ctx.Cursors (F_Type_Length)) - and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100# - then - Ctx.Cursors (F_Type_Length).Last - Ctx.Cursors (F_Type_Length).First + 1 = RFLX.Ethernet.Type_Length_Base'Size - and then Ctx.Cursors (F_Type_Length).Predecessor = F_Type_Length_TPID - and then Ctx.Cursors (F_Type_Length).First = Types.Bit_Index (Ctx.Cursors (F_Type_Length_TPID).First) - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Type_Length).Value.Type_Length_Value) * 8 - and then Ctx.Cursors (F_Payload).Predecessor = F_Type_Length - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Type_Length).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Type_Length).Last) - and then Ctx.Cursors (F_Payload).Predecessor = F_Type_Length - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Type_Length).Last + 1)))))); Ctx.Cursors (F_Payload) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Payload), Predecessor => Ctx.Cursors (F_Payload).Predecessor); Ctx.Cursors (Successor (Ctx, F_Payload)) := (State => S_Invalid, Predecessor => F_Payload); end Initialize_Payload_Private; diff --git a/tests/spark/generated/rflx-expression-generic_message.adb b/tests/spark/generated/rflx-expression-generic_message.adb index 1d4d42933..9873231bd 100644 --- a/tests/spark/generated/rflx-expression-generic_message.adb +++ b/tests/spark/generated/rflx-expression-generic_message.adb @@ -162,15 +162,6 @@ is Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Payload)) - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = 16 - and then Ctx.Cursors (F_Payload).Predecessor = F_Initial - and then Ctx.Cursors (F_Payload).First = Ctx.First)); - if Fld = F_Payload then - Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); - end if; else Ctx.Cursors (Fld) := (State => S_Invalid, Predecessor => F_Final); end if; @@ -218,12 +209,6 @@ is begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Payload)) - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = 16 - and then Ctx.Cursors (F_Payload).Predecessor = F_Initial - and then Ctx.Cursors (F_Payload).First = Ctx.First)); Ctx.Cursors (F_Payload) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Payload), Predecessor => Ctx.Cursors (F_Payload).Predecessor); Ctx.Cursors (Successor (Ctx, F_Payload)) := (State => S_Invalid, Predecessor => F_Payload); end Initialize_Payload_Private; diff --git a/tests/spark/generated/rflx-icmp-generic_message.adb b/tests/spark/generated/rflx-icmp-generic_message.adb index 3c1343113..c24dbe32b 100644 --- a/tests/spark/generated/rflx-icmp-generic_message.adb +++ b/tests/spark/generated/rflx-icmp-generic_message.adb @@ -800,443 +800,6 @@ is else Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); end if; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Tag)) - then - Ctx.Cursors (F_Tag).Last - Ctx.Cursors (F_Tag).First + 1 = RFLX.ICMP.Tag_Base'Size - and then Ctx.Cursors (F_Tag).Predecessor = F_Initial - and then Ctx.Cursors (F_Tag).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Code_Destination_Unreachable)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - then - Ctx.Cursors (F_Code_Destination_Unreachable).Last - Ctx.Cursors (F_Code_Destination_Unreachable).First + 1 = RFLX.ICMP.Code_Destination_Unreachable_Base'Size - and then Ctx.Cursors (F_Code_Destination_Unreachable).Predecessor = F_Tag - and then Ctx.Cursors (F_Code_Destination_Unreachable).First = Ctx.Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Checksum)) - then - Ctx.Cursors (F_Checksum).Last - Ctx.Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Ctx.Cursors (F_Checksum).Predecessor = F_Code_Destination_Unreachable - and then Ctx.Cursors (F_Checksum).First = Ctx.Cursors (F_Code_Destination_Unreachable).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (F_Gateway_Internet_Address).Last - Ctx.Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Ctx.Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Ctx.Cursors (F_Gateway_Internet_Address).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Ctx.Cursors (F_Identifier)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Ctx.Cursors (F_Identifier).Last - Ctx.Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Ctx.Cursors (F_Identifier).Predecessor = F_Checksum - and then Ctx.Cursors (F_Identifier).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Sequence_Number)) - then - Ctx.Cursors (F_Sequence_Number).Last - Ctx.Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Ctx.Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Ctx.Cursors (F_Sequence_Number).First = Ctx.Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Sequence_Number).Last) - and then Ctx.Cursors (F_Data).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Ctx.Cursors (F_Originate_Timestamp).Last - Ctx.Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Originate_Timestamp).First = Ctx.Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Receive_Timestamp)) - then - Ctx.Cursors (F_Receive_Timestamp).Last - Ctx.Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Ctx.Cursors (F_Receive_Timestamp).First = Ctx.Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Transmit_Timestamp)) - then - Ctx.Cursors (F_Transmit_Timestamp).Last - Ctx.Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Ctx.Cursors (F_Transmit_Timestamp).First = Ctx.Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Ctx.Cursors (F_Pointer)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Ctx.Cursors (F_Pointer).Last - Ctx.Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Ctx.Cursors (F_Pointer).Predecessor = F_Checksum - and then Ctx.Cursors (F_Pointer).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_24)) - then - Ctx.Cursors (F_Unused_24).Last - Ctx.Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Ctx.Cursors (F_Unused_24).Predecessor = F_Pointer - and then Ctx.Cursors (F_Unused_24).First = Ctx.Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_24 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_32)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Ctx.Cursors (F_Unused_32).Last - Ctx.Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Ctx.Cursors (F_Unused_32).Predecessor = F_Checksum - and then Ctx.Cursors (F_Unused_32).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_32 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_32).Last + 1)))) - and then (if - Structural_Valid (Ctx.Cursors (F_Code_Redirect)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (F_Code_Redirect).Last - Ctx.Cursors (F_Code_Redirect).First + 1 = RFLX.ICMP.Code_Redirect_Base'Size - and then Ctx.Cursors (F_Code_Redirect).Predecessor = F_Tag - and then Ctx.Cursors (F_Code_Redirect).First = Ctx.Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Checksum)) - then - Ctx.Cursors (F_Checksum).Last - Ctx.Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Ctx.Cursors (F_Checksum).Predecessor = F_Code_Redirect - and then Ctx.Cursors (F_Checksum).First = Ctx.Cursors (F_Code_Redirect).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (F_Gateway_Internet_Address).Last - Ctx.Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Ctx.Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Ctx.Cursors (F_Gateway_Internet_Address).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Ctx.Cursors (F_Identifier)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Ctx.Cursors (F_Identifier).Last - Ctx.Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Ctx.Cursors (F_Identifier).Predecessor = F_Checksum - and then Ctx.Cursors (F_Identifier).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Sequence_Number)) - then - Ctx.Cursors (F_Sequence_Number).Last - Ctx.Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Ctx.Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Ctx.Cursors (F_Sequence_Number).First = Ctx.Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Sequence_Number).Last) - and then Ctx.Cursors (F_Data).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Ctx.Cursors (F_Originate_Timestamp).Last - Ctx.Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Originate_Timestamp).First = Ctx.Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Receive_Timestamp)) - then - Ctx.Cursors (F_Receive_Timestamp).Last - Ctx.Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Ctx.Cursors (F_Receive_Timestamp).First = Ctx.Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Transmit_Timestamp)) - then - Ctx.Cursors (F_Transmit_Timestamp).Last - Ctx.Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Ctx.Cursors (F_Transmit_Timestamp).First = Ctx.Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Ctx.Cursors (F_Pointer)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Ctx.Cursors (F_Pointer).Last - Ctx.Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Ctx.Cursors (F_Pointer).Predecessor = F_Checksum - and then Ctx.Cursors (F_Pointer).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_24)) - then - Ctx.Cursors (F_Unused_24).Last - Ctx.Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Ctx.Cursors (F_Unused_24).Predecessor = F_Pointer - and then Ctx.Cursors (F_Unused_24).First = Ctx.Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_24 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_32)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Ctx.Cursors (F_Unused_32).Last - Ctx.Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Ctx.Cursors (F_Unused_32).Predecessor = F_Checksum - and then Ctx.Cursors (F_Unused_32).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_32 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_32).Last + 1)))) - and then (if - Structural_Valid (Ctx.Cursors (F_Code_Time_Exceeded)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - then - Ctx.Cursors (F_Code_Time_Exceeded).Last - Ctx.Cursors (F_Code_Time_Exceeded).First + 1 = RFLX.ICMP.Code_Time_Exceeded_Base'Size - and then Ctx.Cursors (F_Code_Time_Exceeded).Predecessor = F_Tag - and then Ctx.Cursors (F_Code_Time_Exceeded).First = Ctx.Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Checksum)) - then - Ctx.Cursors (F_Checksum).Last - Ctx.Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Ctx.Cursors (F_Checksum).Predecessor = F_Code_Time_Exceeded - and then Ctx.Cursors (F_Checksum).First = Ctx.Cursors (F_Code_Time_Exceeded).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (F_Gateway_Internet_Address).Last - Ctx.Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Ctx.Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Ctx.Cursors (F_Gateway_Internet_Address).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Ctx.Cursors (F_Identifier)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Ctx.Cursors (F_Identifier).Last - Ctx.Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Ctx.Cursors (F_Identifier).Predecessor = F_Checksum - and then Ctx.Cursors (F_Identifier).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Sequence_Number)) - then - Ctx.Cursors (F_Sequence_Number).Last - Ctx.Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Ctx.Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Ctx.Cursors (F_Sequence_Number).First = Ctx.Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Sequence_Number).Last) - and then Ctx.Cursors (F_Data).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Ctx.Cursors (F_Originate_Timestamp).Last - Ctx.Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Originate_Timestamp).First = Ctx.Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Receive_Timestamp)) - then - Ctx.Cursors (F_Receive_Timestamp).Last - Ctx.Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Ctx.Cursors (F_Receive_Timestamp).First = Ctx.Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Transmit_Timestamp)) - then - Ctx.Cursors (F_Transmit_Timestamp).Last - Ctx.Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Ctx.Cursors (F_Transmit_Timestamp).First = Ctx.Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Ctx.Cursors (F_Pointer)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Ctx.Cursors (F_Pointer).Last - Ctx.Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Ctx.Cursors (F_Pointer).Predecessor = F_Checksum - and then Ctx.Cursors (F_Pointer).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_24)) - then - Ctx.Cursors (F_Unused_24).Last - Ctx.Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Ctx.Cursors (F_Unused_24).Predecessor = F_Pointer - and then Ctx.Cursors (F_Unused_24).First = Ctx.Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_24 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_32)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Ctx.Cursors (F_Unused_32).Last - Ctx.Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Ctx.Cursors (F_Unused_32).Predecessor = F_Checksum - and then Ctx.Cursors (F_Unused_32).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_32 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_32).Last + 1)))) - and then (if - Structural_Valid (Ctx.Cursors (F_Code_Zero)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (F_Code_Zero).Last - Ctx.Cursors (F_Code_Zero).First + 1 = RFLX.ICMP.Code_Zero_Base'Size - and then Ctx.Cursors (F_Code_Zero).Predecessor = F_Tag - and then Ctx.Cursors (F_Code_Zero).First = Ctx.Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Checksum)) - then - Ctx.Cursors (F_Checksum).Last - Ctx.Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Ctx.Cursors (F_Checksum).Predecessor = F_Code_Zero - and then Ctx.Cursors (F_Checksum).First = Ctx.Cursors (F_Code_Zero).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (F_Gateway_Internet_Address).Last - Ctx.Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Ctx.Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Ctx.Cursors (F_Gateway_Internet_Address).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Ctx.Cursors (F_Identifier)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Ctx.Cursors (F_Identifier).Last - Ctx.Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Ctx.Cursors (F_Identifier).Predecessor = F_Checksum - and then Ctx.Cursors (F_Identifier).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Sequence_Number)) - then - Ctx.Cursors (F_Sequence_Number).Last - Ctx.Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Ctx.Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Ctx.Cursors (F_Sequence_Number).First = Ctx.Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Sequence_Number).Last) - and then Ctx.Cursors (F_Data).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Ctx.Cursors (F_Originate_Timestamp).Last - Ctx.Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Originate_Timestamp).First = Ctx.Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Receive_Timestamp)) - then - Ctx.Cursors (F_Receive_Timestamp).Last - Ctx.Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Ctx.Cursors (F_Receive_Timestamp).First = Ctx.Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Transmit_Timestamp)) - then - Ctx.Cursors (F_Transmit_Timestamp).Last - Ctx.Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Ctx.Cursors (F_Transmit_Timestamp).First = Ctx.Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Ctx.Cursors (F_Pointer)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Ctx.Cursors (F_Pointer).Last - Ctx.Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Ctx.Cursors (F_Pointer).Predecessor = F_Checksum - and then Ctx.Cursors (F_Pointer).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_24)) - then - Ctx.Cursors (F_Unused_24).Last - Ctx.Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Ctx.Cursors (F_Unused_24).Predecessor = F_Pointer - and then Ctx.Cursors (F_Unused_24).First = Ctx.Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_24 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_32)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Ctx.Cursors (F_Unused_32).Last - Ctx.Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Ctx.Cursors (F_Unused_32).Predecessor = F_Checksum - and then Ctx.Cursors (F_Unused_32).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_32 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_32).Last + 1)))))); if Fld = F_Tag then Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); elsif Fld = F_Code_Destination_Unreachable then @@ -1605,443 +1168,6 @@ is begin Reset_Dependent_Fields (Ctx, F_Data); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Tag)) - then - Ctx.Cursors (F_Tag).Last - Ctx.Cursors (F_Tag).First + 1 = RFLX.ICMP.Tag_Base'Size - and then Ctx.Cursors (F_Tag).Predecessor = F_Initial - and then Ctx.Cursors (F_Tag).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Code_Destination_Unreachable)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - then - Ctx.Cursors (F_Code_Destination_Unreachable).Last - Ctx.Cursors (F_Code_Destination_Unreachable).First + 1 = RFLX.ICMP.Code_Destination_Unreachable_Base'Size - and then Ctx.Cursors (F_Code_Destination_Unreachable).Predecessor = F_Tag - and then Ctx.Cursors (F_Code_Destination_Unreachable).First = Ctx.Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Checksum)) - then - Ctx.Cursors (F_Checksum).Last - Ctx.Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Ctx.Cursors (F_Checksum).Predecessor = F_Code_Destination_Unreachable - and then Ctx.Cursors (F_Checksum).First = Ctx.Cursors (F_Code_Destination_Unreachable).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (F_Gateway_Internet_Address).Last - Ctx.Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Ctx.Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Ctx.Cursors (F_Gateway_Internet_Address).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Ctx.Cursors (F_Identifier)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Ctx.Cursors (F_Identifier).Last - Ctx.Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Ctx.Cursors (F_Identifier).Predecessor = F_Checksum - and then Ctx.Cursors (F_Identifier).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Sequence_Number)) - then - Ctx.Cursors (F_Sequence_Number).Last - Ctx.Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Ctx.Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Ctx.Cursors (F_Sequence_Number).First = Ctx.Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Sequence_Number).Last) - and then Ctx.Cursors (F_Data).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Ctx.Cursors (F_Originate_Timestamp).Last - Ctx.Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Originate_Timestamp).First = Ctx.Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Receive_Timestamp)) - then - Ctx.Cursors (F_Receive_Timestamp).Last - Ctx.Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Ctx.Cursors (F_Receive_Timestamp).First = Ctx.Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Transmit_Timestamp)) - then - Ctx.Cursors (F_Transmit_Timestamp).Last - Ctx.Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Ctx.Cursors (F_Transmit_Timestamp).First = Ctx.Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Ctx.Cursors (F_Pointer)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Ctx.Cursors (F_Pointer).Last - Ctx.Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Ctx.Cursors (F_Pointer).Predecessor = F_Checksum - and then Ctx.Cursors (F_Pointer).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_24)) - then - Ctx.Cursors (F_Unused_24).Last - Ctx.Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Ctx.Cursors (F_Unused_24).Predecessor = F_Pointer - and then Ctx.Cursors (F_Unused_24).First = Ctx.Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_24 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_32)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Ctx.Cursors (F_Unused_32).Last - Ctx.Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Ctx.Cursors (F_Unused_32).Predecessor = F_Checksum - and then Ctx.Cursors (F_Unused_32).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_32 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_32).Last + 1)))) - and then (if - Structural_Valid (Ctx.Cursors (F_Code_Redirect)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (F_Code_Redirect).Last - Ctx.Cursors (F_Code_Redirect).First + 1 = RFLX.ICMP.Code_Redirect_Base'Size - and then Ctx.Cursors (F_Code_Redirect).Predecessor = F_Tag - and then Ctx.Cursors (F_Code_Redirect).First = Ctx.Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Checksum)) - then - Ctx.Cursors (F_Checksum).Last - Ctx.Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Ctx.Cursors (F_Checksum).Predecessor = F_Code_Redirect - and then Ctx.Cursors (F_Checksum).First = Ctx.Cursors (F_Code_Redirect).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (F_Gateway_Internet_Address).Last - Ctx.Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Ctx.Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Ctx.Cursors (F_Gateway_Internet_Address).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Ctx.Cursors (F_Identifier)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Ctx.Cursors (F_Identifier).Last - Ctx.Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Ctx.Cursors (F_Identifier).Predecessor = F_Checksum - and then Ctx.Cursors (F_Identifier).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Sequence_Number)) - then - Ctx.Cursors (F_Sequence_Number).Last - Ctx.Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Ctx.Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Ctx.Cursors (F_Sequence_Number).First = Ctx.Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Sequence_Number).Last) - and then Ctx.Cursors (F_Data).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Ctx.Cursors (F_Originate_Timestamp).Last - Ctx.Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Originate_Timestamp).First = Ctx.Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Receive_Timestamp)) - then - Ctx.Cursors (F_Receive_Timestamp).Last - Ctx.Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Ctx.Cursors (F_Receive_Timestamp).First = Ctx.Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Transmit_Timestamp)) - then - Ctx.Cursors (F_Transmit_Timestamp).Last - Ctx.Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Ctx.Cursors (F_Transmit_Timestamp).First = Ctx.Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Ctx.Cursors (F_Pointer)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Ctx.Cursors (F_Pointer).Last - Ctx.Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Ctx.Cursors (F_Pointer).Predecessor = F_Checksum - and then Ctx.Cursors (F_Pointer).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_24)) - then - Ctx.Cursors (F_Unused_24).Last - Ctx.Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Ctx.Cursors (F_Unused_24).Predecessor = F_Pointer - and then Ctx.Cursors (F_Unused_24).First = Ctx.Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_24 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_32)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Ctx.Cursors (F_Unused_32).Last - Ctx.Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Ctx.Cursors (F_Unused_32).Predecessor = F_Checksum - and then Ctx.Cursors (F_Unused_32).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_32 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_32).Last + 1)))) - and then (if - Structural_Valid (Ctx.Cursors (F_Code_Time_Exceeded)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - then - Ctx.Cursors (F_Code_Time_Exceeded).Last - Ctx.Cursors (F_Code_Time_Exceeded).First + 1 = RFLX.ICMP.Code_Time_Exceeded_Base'Size - and then Ctx.Cursors (F_Code_Time_Exceeded).Predecessor = F_Tag - and then Ctx.Cursors (F_Code_Time_Exceeded).First = Ctx.Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Checksum)) - then - Ctx.Cursors (F_Checksum).Last - Ctx.Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Ctx.Cursors (F_Checksum).Predecessor = F_Code_Time_Exceeded - and then Ctx.Cursors (F_Checksum).First = Ctx.Cursors (F_Code_Time_Exceeded).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (F_Gateway_Internet_Address).Last - Ctx.Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Ctx.Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Ctx.Cursors (F_Gateway_Internet_Address).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Ctx.Cursors (F_Identifier)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Ctx.Cursors (F_Identifier).Last - Ctx.Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Ctx.Cursors (F_Identifier).Predecessor = F_Checksum - and then Ctx.Cursors (F_Identifier).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Sequence_Number)) - then - Ctx.Cursors (F_Sequence_Number).Last - Ctx.Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Ctx.Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Ctx.Cursors (F_Sequence_Number).First = Ctx.Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Sequence_Number).Last) - and then Ctx.Cursors (F_Data).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Ctx.Cursors (F_Originate_Timestamp).Last - Ctx.Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Originate_Timestamp).First = Ctx.Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Receive_Timestamp)) - then - Ctx.Cursors (F_Receive_Timestamp).Last - Ctx.Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Ctx.Cursors (F_Receive_Timestamp).First = Ctx.Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Transmit_Timestamp)) - then - Ctx.Cursors (F_Transmit_Timestamp).Last - Ctx.Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Ctx.Cursors (F_Transmit_Timestamp).First = Ctx.Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Ctx.Cursors (F_Pointer)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Ctx.Cursors (F_Pointer).Last - Ctx.Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Ctx.Cursors (F_Pointer).Predecessor = F_Checksum - and then Ctx.Cursors (F_Pointer).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_24)) - then - Ctx.Cursors (F_Unused_24).Last - Ctx.Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Ctx.Cursors (F_Unused_24).Predecessor = F_Pointer - and then Ctx.Cursors (F_Unused_24).First = Ctx.Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_24 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_32)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Ctx.Cursors (F_Unused_32).Last - Ctx.Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Ctx.Cursors (F_Unused_32).Predecessor = F_Checksum - and then Ctx.Cursors (F_Unused_32).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_32 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_32).Last + 1)))) - and then (if - Structural_Valid (Ctx.Cursors (F_Code_Zero)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (F_Code_Zero).Last - Ctx.Cursors (F_Code_Zero).First + 1 = RFLX.ICMP.Code_Zero_Base'Size - and then Ctx.Cursors (F_Code_Zero).Predecessor = F_Tag - and then Ctx.Cursors (F_Code_Zero).First = Ctx.Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Checksum)) - then - Ctx.Cursors (F_Checksum).Last - Ctx.Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Ctx.Cursors (F_Checksum).Predecessor = F_Code_Zero - and then Ctx.Cursors (F_Checksum).First = Ctx.Cursors (F_Code_Zero).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (F_Gateway_Internet_Address).Last - Ctx.Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Ctx.Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Ctx.Cursors (F_Gateway_Internet_Address).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Ctx.Cursors (F_Identifier)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Ctx.Cursors (F_Identifier).Last - Ctx.Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Ctx.Cursors (F_Identifier).Predecessor = F_Checksum - and then Ctx.Cursors (F_Identifier).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Sequence_Number)) - then - Ctx.Cursors (F_Sequence_Number).Last - Ctx.Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Ctx.Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Ctx.Cursors (F_Sequence_Number).First = Ctx.Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Sequence_Number).Last) - and then Ctx.Cursors (F_Data).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Ctx.Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Ctx.Cursors (F_Originate_Timestamp).Last - Ctx.Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Ctx.Cursors (F_Originate_Timestamp).First = Ctx.Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Receive_Timestamp)) - then - Ctx.Cursors (F_Receive_Timestamp).Last - Ctx.Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Ctx.Cursors (F_Receive_Timestamp).First = Ctx.Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Transmit_Timestamp)) - then - Ctx.Cursors (F_Transmit_Timestamp).Last - Ctx.Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Ctx.Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Ctx.Cursors (F_Transmit_Timestamp).First = Ctx.Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Ctx.Cursors (F_Pointer)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Ctx.Cursors (F_Pointer).Last - Ctx.Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Ctx.Cursors (F_Pointer).Predecessor = F_Checksum - and then Ctx.Cursors (F_Pointer).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_24)) - then - Ctx.Cursors (F_Unused_24).Last - Ctx.Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Ctx.Cursors (F_Unused_24).Predecessor = F_Pointer - and then Ctx.Cursors (F_Unused_24).First = Ctx.Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_24 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Ctx.Cursors (F_Unused_32)) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Ctx.Cursors (F_Unused_32).Last - Ctx.Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Ctx.Cursors (F_Unused_32).Predecessor = F_Checksum - and then Ctx.Cursors (F_Unused_32).First = Ctx.Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Data)) - then - Ctx.Cursors (F_Data).Last - Ctx.Cursors (F_Data).First + 1 = 224 - and then Ctx.Cursors (F_Data).Predecessor = F_Unused_32 - and then Ctx.Cursors (F_Data).First = Ctx.Cursors (F_Unused_32).Last + 1)))))); Ctx.Cursors (F_Data) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Data), Predecessor => Ctx.Cursors (F_Data).Predecessor); Ctx.Cursors (Successor (Ctx, F_Data)) := (State => S_Invalid, Predecessor => F_Data); end Initialize_Data_Private; diff --git a/tests/spark/generated/rflx-ipv4-generic_option.adb b/tests/spark/generated/rflx-ipv4-generic_option.adb index a58ecdc2a..d8195104a 100644 --- a/tests/spark/generated/rflx-ipv4-generic_option.adb +++ b/tests/spark/generated/rflx-ipv4-generic_option.adb @@ -293,49 +293,6 @@ is else Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); end if; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Copied)) - then - Ctx.Cursors (F_Copied).Last - Ctx.Cursors (F_Copied).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Ctx.Cursors (F_Copied).Predecessor = F_Initial - and then Ctx.Cursors (F_Copied).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Option_Class)) - then - Ctx.Cursors (F_Option_Class).Last - Ctx.Cursors (F_Option_Class).First + 1 = RFLX.IPv4.Option_Class_Base'Size - and then Ctx.Cursors (F_Option_Class).Predecessor = F_Copied - and then Ctx.Cursors (F_Option_Class).First = Ctx.Cursors (F_Copied).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Option_Number)) - then - Ctx.Cursors (F_Option_Number).Last - Ctx.Cursors (F_Option_Number).First + 1 = RFLX.IPv4.Option_Number'Size - and then Ctx.Cursors (F_Option_Number).Predecessor = F_Option_Class - and then Ctx.Cursors (F_Option_Number).First = Ctx.Cursors (F_Option_Class).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Option_Length)) - and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 - then - Ctx.Cursors (F_Option_Length).Last - Ctx.Cursors (F_Option_Length).First + 1 = RFLX.IPv4.Option_Length_Base'Size - and then Ctx.Cursors (F_Option_Length).Predecessor = F_Option_Number - and then Ctx.Cursors (F_Option_Length).First = Ctx.Cursors (F_Option_Number).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Option_Data)) - and then ((Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Debugging_And_Measurement)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8)) - then - Ctx.Cursors (F_Option_Data).Last - Ctx.Cursors (F_Option_Data).First + 1 = (Types.Bit_Length (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value) - 2) * 8 - and then Ctx.Cursors (F_Option_Data).Predecessor = F_Option_Length - and then Ctx.Cursors (F_Option_Data).First = Ctx.Cursors (F_Option_Length).Last + 1)))))); if Fld = F_Copied then Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); elsif Fld = F_Option_Class then @@ -517,49 +474,6 @@ is begin Reset_Dependent_Fields (Ctx, F_Option_Data); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Copied)) - then - Ctx.Cursors (F_Copied).Last - Ctx.Cursors (F_Copied).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Ctx.Cursors (F_Copied).Predecessor = F_Initial - and then Ctx.Cursors (F_Copied).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Option_Class)) - then - Ctx.Cursors (F_Option_Class).Last - Ctx.Cursors (F_Option_Class).First + 1 = RFLX.IPv4.Option_Class_Base'Size - and then Ctx.Cursors (F_Option_Class).Predecessor = F_Copied - and then Ctx.Cursors (F_Option_Class).First = Ctx.Cursors (F_Copied).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Option_Number)) - then - Ctx.Cursors (F_Option_Number).Last - Ctx.Cursors (F_Option_Number).First + 1 = RFLX.IPv4.Option_Number'Size - and then Ctx.Cursors (F_Option_Number).Predecessor = F_Option_Class - and then Ctx.Cursors (F_Option_Number).First = Ctx.Cursors (F_Option_Class).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Option_Length)) - and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 - then - Ctx.Cursors (F_Option_Length).Last - Ctx.Cursors (F_Option_Length).First + 1 = RFLX.IPv4.Option_Length_Base'Size - and then Ctx.Cursors (F_Option_Length).Predecessor = F_Option_Number - and then Ctx.Cursors (F_Option_Length).First = Ctx.Cursors (F_Option_Number).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Option_Data)) - and then ((Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Debugging_And_Measurement)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8)) - then - Ctx.Cursors (F_Option_Data).Last - Ctx.Cursors (F_Option_Data).First + 1 = (Types.Bit_Length (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value) - 2) * 8 - and then Ctx.Cursors (F_Option_Data).Predecessor = F_Option_Length - and then Ctx.Cursors (F_Option_Data).First = Ctx.Cursors (F_Option_Length).Last + 1)))))); Ctx.Cursors (F_Option_Data) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Option_Data), Predecessor => Ctx.Cursors (F_Option_Data).Predecessor); Ctx.Cursors (Successor (Ctx, F_Option_Data)) := (State => S_Invalid, Predecessor => F_Option_Data); end Initialize_Option_Data_Private; diff --git a/tests/spark/generated/rflx-ipv4-generic_packet.adb b/tests/spark/generated/rflx-ipv4-generic_packet.adb index 4bc439218..f9a68b3e6 100644 --- a/tests/spark/generated/rflx-ipv4-generic_packet.adb +++ b/tests/spark/generated/rflx-ipv4-generic_packet.adb @@ -802,121 +802,10 @@ is Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then - case Fld is - when F_Options => - Ctx.Cursors (F_Options) := (State => S_Structural_Valid, First => Field_First (Ctx, F_Options), Last => Field_Last (Ctx, F_Options), Value => Value, Predecessor => Ctx.Cursors (F_Options).Predecessor); - when F_Payload => - Ctx.Cursors (F_Payload) := (State => S_Structural_Valid, First => Field_First (Ctx, F_Payload), Last => Field_Last (Ctx, F_Payload), Value => Value, Predecessor => Ctx.Cursors (F_Payload).Predecessor); - when others => - null; - end case; + Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); end if; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Version)) - then - Ctx.Cursors (F_Version).Last - Ctx.Cursors (F_Version).First + 1 = RFLX.IPv4.Version_Base'Size - and then Ctx.Cursors (F_Version).Predecessor = F_Initial - and then Ctx.Cursors (F_Version).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_IHL)) - then - Ctx.Cursors (F_IHL).Last - Ctx.Cursors (F_IHL).First + 1 = RFLX.IPv4.IHL_Base'Size - and then Ctx.Cursors (F_IHL).Predecessor = F_Version - and then Ctx.Cursors (F_IHL).First = Ctx.Cursors (F_Version).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_DSCP)) - then - Ctx.Cursors (F_DSCP).Last - Ctx.Cursors (F_DSCP).First + 1 = RFLX.IPv4.DCSP'Size - and then Ctx.Cursors (F_DSCP).Predecessor = F_IHL - and then Ctx.Cursors (F_DSCP).First = Ctx.Cursors (F_IHL).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_ECN)) - then - Ctx.Cursors (F_ECN).Last - Ctx.Cursors (F_ECN).First + 1 = RFLX.IPv4.ECN'Size - and then Ctx.Cursors (F_ECN).Predecessor = F_DSCP - and then Ctx.Cursors (F_ECN).First = Ctx.Cursors (F_DSCP).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Total_Length)) - then - Ctx.Cursors (F_Total_Length).Last - Ctx.Cursors (F_Total_Length).First + 1 = RFLX.IPv4.Total_Length'Size - and then Ctx.Cursors (F_Total_Length).Predecessor = F_ECN - and then Ctx.Cursors (F_Total_Length).First = Ctx.Cursors (F_ECN).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Identification)) - and then Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4 - then - Ctx.Cursors (F_Identification).Last - Ctx.Cursors (F_Identification).First + 1 = RFLX.IPv4.Identification'Size - and then Ctx.Cursors (F_Identification).Predecessor = F_Total_Length - and then Ctx.Cursors (F_Identification).First = Ctx.Cursors (F_Total_Length).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Flag_R)) - then - Ctx.Cursors (F_Flag_R).Last - Ctx.Cursors (F_Flag_R).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Ctx.Cursors (F_Flag_R).Predecessor = F_Identification - and then Ctx.Cursors (F_Flag_R).First = Ctx.Cursors (F_Identification).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Flag_DF)) - and then Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = Types.U64 (To_Base (False)) - then - Ctx.Cursors (F_Flag_DF).Last - Ctx.Cursors (F_Flag_DF).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Ctx.Cursors (F_Flag_DF).Predecessor = F_Flag_R - and then Ctx.Cursors (F_Flag_DF).First = Ctx.Cursors (F_Flag_R).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Flag_MF)) - then - Ctx.Cursors (F_Flag_MF).Last - Ctx.Cursors (F_Flag_MF).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Ctx.Cursors (F_Flag_MF).Predecessor = F_Flag_DF - and then Ctx.Cursors (F_Flag_MF).First = Ctx.Cursors (F_Flag_DF).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Fragment_Offset)) - then - Ctx.Cursors (F_Fragment_Offset).Last - Ctx.Cursors (F_Fragment_Offset).First + 1 = RFLX.IPv4.Fragment_Offset'Size - and then Ctx.Cursors (F_Fragment_Offset).Predecessor = F_Flag_MF - and then Ctx.Cursors (F_Fragment_Offset).First = Ctx.Cursors (F_Flag_MF).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_TTL)) - then - Ctx.Cursors (F_TTL).Last - Ctx.Cursors (F_TTL).First + 1 = RFLX.IPv4.TTL'Size - and then Ctx.Cursors (F_TTL).Predecessor = F_Fragment_Offset - and then Ctx.Cursors (F_TTL).First = Ctx.Cursors (F_Fragment_Offset).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Protocol)) - then - Ctx.Cursors (F_Protocol).Last - Ctx.Cursors (F_Protocol).First + 1 = RFLX.IPv4.Protocol_Base'Size - and then Ctx.Cursors (F_Protocol).Predecessor = F_TTL - and then Ctx.Cursors (F_Protocol).First = Ctx.Cursors (F_TTL).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Header_Checksum)) - then - Ctx.Cursors (F_Header_Checksum).Last - Ctx.Cursors (F_Header_Checksum).First + 1 = RFLX.IPv4.Header_Checksum'Size - and then Ctx.Cursors (F_Header_Checksum).Predecessor = F_Protocol - and then Ctx.Cursors (F_Header_Checksum).First = Ctx.Cursors (F_Protocol).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Source)) - then - Ctx.Cursors (F_Source).Last - Ctx.Cursors (F_Source).First + 1 = RFLX.IPv4.Address'Size - and then Ctx.Cursors (F_Source).Predecessor = F_Header_Checksum - and then Ctx.Cursors (F_Source).First = Ctx.Cursors (F_Header_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Destination)) - then - Ctx.Cursors (F_Destination).Last - Ctx.Cursors (F_Destination).First + 1 = RFLX.IPv4.Address'Size - and then Ctx.Cursors (F_Destination).Predecessor = F_Source - and then Ctx.Cursors (F_Destination).First = Ctx.Cursors (F_Source).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Options)) - then - Ctx.Cursors (F_Options).Last - Ctx.Cursors (F_Options).First + 1 = (Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) - 5) * 32 - and then Ctx.Cursors (F_Options).Predecessor = F_Destination - and then Ctx.Cursors (F_Options).First = Ctx.Cursors (F_Destination).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) * 8 + Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) * (-32) - and then Ctx.Cursors (F_Payload).Predecessor = F_Options - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Options).Last + 1)))))))))))))))))); if Fld = F_Version then Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); elsif Fld = F_IHL then @@ -1328,110 +1217,6 @@ is begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Version)) - then - Ctx.Cursors (F_Version).Last - Ctx.Cursors (F_Version).First + 1 = RFLX.IPv4.Version_Base'Size - and then Ctx.Cursors (F_Version).Predecessor = F_Initial - and then Ctx.Cursors (F_Version).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_IHL)) - then - Ctx.Cursors (F_IHL).Last - Ctx.Cursors (F_IHL).First + 1 = RFLX.IPv4.IHL_Base'Size - and then Ctx.Cursors (F_IHL).Predecessor = F_Version - and then Ctx.Cursors (F_IHL).First = Ctx.Cursors (F_Version).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_DSCP)) - then - Ctx.Cursors (F_DSCP).Last - Ctx.Cursors (F_DSCP).First + 1 = RFLX.IPv4.DCSP'Size - and then Ctx.Cursors (F_DSCP).Predecessor = F_IHL - and then Ctx.Cursors (F_DSCP).First = Ctx.Cursors (F_IHL).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_ECN)) - then - Ctx.Cursors (F_ECN).Last - Ctx.Cursors (F_ECN).First + 1 = RFLX.IPv4.ECN'Size - and then Ctx.Cursors (F_ECN).Predecessor = F_DSCP - and then Ctx.Cursors (F_ECN).First = Ctx.Cursors (F_DSCP).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Total_Length)) - then - Ctx.Cursors (F_Total_Length).Last - Ctx.Cursors (F_Total_Length).First + 1 = RFLX.IPv4.Total_Length'Size - and then Ctx.Cursors (F_Total_Length).Predecessor = F_ECN - and then Ctx.Cursors (F_Total_Length).First = Ctx.Cursors (F_ECN).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Identification)) - and then Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4 - then - Ctx.Cursors (F_Identification).Last - Ctx.Cursors (F_Identification).First + 1 = RFLX.IPv4.Identification'Size - and then Ctx.Cursors (F_Identification).Predecessor = F_Total_Length - and then Ctx.Cursors (F_Identification).First = Ctx.Cursors (F_Total_Length).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Flag_R)) - then - Ctx.Cursors (F_Flag_R).Last - Ctx.Cursors (F_Flag_R).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Ctx.Cursors (F_Flag_R).Predecessor = F_Identification - and then Ctx.Cursors (F_Flag_R).First = Ctx.Cursors (F_Identification).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Flag_DF)) - and then Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = Types.U64 (To_Base (False)) - then - Ctx.Cursors (F_Flag_DF).Last - Ctx.Cursors (F_Flag_DF).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Ctx.Cursors (F_Flag_DF).Predecessor = F_Flag_R - and then Ctx.Cursors (F_Flag_DF).First = Ctx.Cursors (F_Flag_R).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Flag_MF)) - then - Ctx.Cursors (F_Flag_MF).Last - Ctx.Cursors (F_Flag_MF).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Ctx.Cursors (F_Flag_MF).Predecessor = F_Flag_DF - and then Ctx.Cursors (F_Flag_MF).First = Ctx.Cursors (F_Flag_DF).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Fragment_Offset)) - then - Ctx.Cursors (F_Fragment_Offset).Last - Ctx.Cursors (F_Fragment_Offset).First + 1 = RFLX.IPv4.Fragment_Offset'Size - and then Ctx.Cursors (F_Fragment_Offset).Predecessor = F_Flag_MF - and then Ctx.Cursors (F_Fragment_Offset).First = Ctx.Cursors (F_Flag_MF).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_TTL)) - then - Ctx.Cursors (F_TTL).Last - Ctx.Cursors (F_TTL).First + 1 = RFLX.IPv4.TTL'Size - and then Ctx.Cursors (F_TTL).Predecessor = F_Fragment_Offset - and then Ctx.Cursors (F_TTL).First = Ctx.Cursors (F_Fragment_Offset).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Protocol)) - then - Ctx.Cursors (F_Protocol).Last - Ctx.Cursors (F_Protocol).First + 1 = RFLX.IPv4.Protocol_Base'Size - and then Ctx.Cursors (F_Protocol).Predecessor = F_TTL - and then Ctx.Cursors (F_Protocol).First = Ctx.Cursors (F_TTL).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Header_Checksum)) - then - Ctx.Cursors (F_Header_Checksum).Last - Ctx.Cursors (F_Header_Checksum).First + 1 = RFLX.IPv4.Header_Checksum'Size - and then Ctx.Cursors (F_Header_Checksum).Predecessor = F_Protocol - and then Ctx.Cursors (F_Header_Checksum).First = Ctx.Cursors (F_Protocol).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Source)) - then - Ctx.Cursors (F_Source).Last - Ctx.Cursors (F_Source).First + 1 = RFLX.IPv4.Address'Size - and then Ctx.Cursors (F_Source).Predecessor = F_Header_Checksum - and then Ctx.Cursors (F_Source).First = Ctx.Cursors (F_Header_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Destination)) - then - Ctx.Cursors (F_Destination).Last - Ctx.Cursors (F_Destination).First + 1 = RFLX.IPv4.Address'Size - and then Ctx.Cursors (F_Destination).Predecessor = F_Source - and then Ctx.Cursors (F_Destination).First = Ctx.Cursors (F_Source).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Options)) - then - Ctx.Cursors (F_Options).Last - Ctx.Cursors (F_Options).First + 1 = (Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) - 5) * 32 - and then Ctx.Cursors (F_Options).Predecessor = F_Destination - and then Ctx.Cursors (F_Options).First = Ctx.Cursors (F_Destination).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) * 8 + Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) * (-32) - and then Ctx.Cursors (F_Payload).Predecessor = F_Options - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Options).Last + 1)))))))))))))))))); Ctx.Cursors (F_Payload) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Payload), Predecessor => Ctx.Cursors (F_Payload).Predecessor); Ctx.Cursors (Successor (Ctx, F_Payload)) := (State => S_Invalid, Predecessor => F_Payload); end Initialize_Payload_Private; @@ -1473,110 +1258,6 @@ is if Invalid (Ctx, F_Options) then Reset_Dependent_Fields (Ctx, F_Options); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Version)) - then - Ctx.Cursors (F_Version).Last - Ctx.Cursors (F_Version).First + 1 = RFLX.IPv4.Version_Base'Size - and then Ctx.Cursors (F_Version).Predecessor = F_Initial - and then Ctx.Cursors (F_Version).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_IHL)) - then - Ctx.Cursors (F_IHL).Last - Ctx.Cursors (F_IHL).First + 1 = RFLX.IPv4.IHL_Base'Size - and then Ctx.Cursors (F_IHL).Predecessor = F_Version - and then Ctx.Cursors (F_IHL).First = Ctx.Cursors (F_Version).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_DSCP)) - then - Ctx.Cursors (F_DSCP).Last - Ctx.Cursors (F_DSCP).First + 1 = RFLX.IPv4.DCSP'Size - and then Ctx.Cursors (F_DSCP).Predecessor = F_IHL - and then Ctx.Cursors (F_DSCP).First = Ctx.Cursors (F_IHL).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_ECN)) - then - Ctx.Cursors (F_ECN).Last - Ctx.Cursors (F_ECN).First + 1 = RFLX.IPv4.ECN'Size - and then Ctx.Cursors (F_ECN).Predecessor = F_DSCP - and then Ctx.Cursors (F_ECN).First = Ctx.Cursors (F_DSCP).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Total_Length)) - then - Ctx.Cursors (F_Total_Length).Last - Ctx.Cursors (F_Total_Length).First + 1 = RFLX.IPv4.Total_Length'Size - and then Ctx.Cursors (F_Total_Length).Predecessor = F_ECN - and then Ctx.Cursors (F_Total_Length).First = Ctx.Cursors (F_ECN).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Identification)) - and then Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4 - then - Ctx.Cursors (F_Identification).Last - Ctx.Cursors (F_Identification).First + 1 = RFLX.IPv4.Identification'Size - and then Ctx.Cursors (F_Identification).Predecessor = F_Total_Length - and then Ctx.Cursors (F_Identification).First = Ctx.Cursors (F_Total_Length).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Flag_R)) - then - Ctx.Cursors (F_Flag_R).Last - Ctx.Cursors (F_Flag_R).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Ctx.Cursors (F_Flag_R).Predecessor = F_Identification - and then Ctx.Cursors (F_Flag_R).First = Ctx.Cursors (F_Identification).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Flag_DF)) - and then Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = Types.U64 (To_Base (False)) - then - Ctx.Cursors (F_Flag_DF).Last - Ctx.Cursors (F_Flag_DF).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Ctx.Cursors (F_Flag_DF).Predecessor = F_Flag_R - and then Ctx.Cursors (F_Flag_DF).First = Ctx.Cursors (F_Flag_R).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Flag_MF)) - then - Ctx.Cursors (F_Flag_MF).Last - Ctx.Cursors (F_Flag_MF).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Ctx.Cursors (F_Flag_MF).Predecessor = F_Flag_DF - and then Ctx.Cursors (F_Flag_MF).First = Ctx.Cursors (F_Flag_DF).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Fragment_Offset)) - then - Ctx.Cursors (F_Fragment_Offset).Last - Ctx.Cursors (F_Fragment_Offset).First + 1 = RFLX.IPv4.Fragment_Offset'Size - and then Ctx.Cursors (F_Fragment_Offset).Predecessor = F_Flag_MF - and then Ctx.Cursors (F_Fragment_Offset).First = Ctx.Cursors (F_Flag_MF).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_TTL)) - then - Ctx.Cursors (F_TTL).Last - Ctx.Cursors (F_TTL).First + 1 = RFLX.IPv4.TTL'Size - and then Ctx.Cursors (F_TTL).Predecessor = F_Fragment_Offset - and then Ctx.Cursors (F_TTL).First = Ctx.Cursors (F_Fragment_Offset).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Protocol)) - then - Ctx.Cursors (F_Protocol).Last - Ctx.Cursors (F_Protocol).First + 1 = RFLX.IPv4.Protocol_Base'Size - and then Ctx.Cursors (F_Protocol).Predecessor = F_TTL - and then Ctx.Cursors (F_Protocol).First = Ctx.Cursors (F_TTL).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Header_Checksum)) - then - Ctx.Cursors (F_Header_Checksum).Last - Ctx.Cursors (F_Header_Checksum).First + 1 = RFLX.IPv4.Header_Checksum'Size - and then Ctx.Cursors (F_Header_Checksum).Predecessor = F_Protocol - and then Ctx.Cursors (F_Header_Checksum).First = Ctx.Cursors (F_Protocol).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Source)) - then - Ctx.Cursors (F_Source).Last - Ctx.Cursors (F_Source).First + 1 = RFLX.IPv4.Address'Size - and then Ctx.Cursors (F_Source).Predecessor = F_Header_Checksum - and then Ctx.Cursors (F_Source).First = Ctx.Cursors (F_Header_Checksum).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Destination)) - then - Ctx.Cursors (F_Destination).Last - Ctx.Cursors (F_Destination).First + 1 = RFLX.IPv4.Address'Size - and then Ctx.Cursors (F_Destination).Predecessor = F_Source - and then Ctx.Cursors (F_Destination).First = Ctx.Cursors (F_Source).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Options)) - then - Ctx.Cursors (F_Options).Last - Ctx.Cursors (F_Options).First + 1 = (Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) - 5) * 32 - and then Ctx.Cursors (F_Options).Predecessor = F_Destination - and then Ctx.Cursors (F_Options).First = Ctx.Cursors (F_Destination).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) * 8 + Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) * (-32) - and then Ctx.Cursors (F_Payload).Predecessor = F_Options - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Options).Last + 1)))))))))))))))))); Ctx.Cursors (F_Options) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Options), Predecessor => Ctx.Cursors (F_Options).Predecessor); Ctx.Cursors (Successor (Ctx, F_Options)) := (State => S_Invalid, Predecessor => F_Options); end if; diff --git a/tests/spark/generated/rflx-sequence-generic_inner_message.adb b/tests/spark/generated/rflx-sequence-generic_inner_message.adb index 9069938d5..5541af035 100644 --- a/tests/spark/generated/rflx-sequence-generic_inner_message.adb +++ b/tests/spark/generated/rflx-sequence-generic_inner_message.adb @@ -200,18 +200,6 @@ is else Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); end if; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Length)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Initial - and then Ctx.Cursors (F_Length).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8 - and then Ctx.Cursors (F_Payload).Predecessor = F_Length - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Length).Last + 1))); if Fld = F_Length then Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); elsif Fld = F_Payload then @@ -339,18 +327,6 @@ is begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Length)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Initial - and then Ctx.Cursors (F_Length).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8 - and then Ctx.Cursors (F_Payload).Predecessor = F_Length - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Length).Last + 1))); Ctx.Cursors (F_Payload) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Payload), Predecessor => Ctx.Cursors (F_Payload).Predecessor); Ctx.Cursors (Successor (Ctx, F_Payload)) := (State => S_Invalid, Predecessor => F_Payload); end Initialize_Payload_Private; diff --git a/tests/spark/generated/rflx-sequence-generic_message.adb b/tests/spark/generated/rflx-sequence-generic_message.adb index af09b2be2..adafc82b0 100644 --- a/tests/spark/generated/rflx-sequence-generic_message.adb +++ b/tests/spark/generated/rflx-sequence-generic_message.adb @@ -259,51 +259,10 @@ is Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then - case Fld is - when F_Modular_Vector => - Ctx.Cursors (F_Modular_Vector) := (State => S_Structural_Valid, First => Field_First (Ctx, F_Modular_Vector), Last => Field_Last (Ctx, F_Modular_Vector), Value => Value, Predecessor => Ctx.Cursors (F_Modular_Vector).Predecessor); - when F_Range_Vector => - Ctx.Cursors (F_Range_Vector) := (State => S_Structural_Valid, First => Field_First (Ctx, F_Range_Vector), Last => Field_Last (Ctx, F_Range_Vector), Value => Value, Predecessor => Ctx.Cursors (F_Range_Vector).Predecessor); - when F_Enumeration_Vector => - Ctx.Cursors (F_Enumeration_Vector) := (State => S_Structural_Valid, First => Field_First (Ctx, F_Enumeration_Vector), Last => Field_Last (Ctx, F_Enumeration_Vector), Value => Value, Predecessor => Ctx.Cursors (F_Enumeration_Vector).Predecessor); - when F_AV_Enumeration_Vector => - Ctx.Cursors (F_AV_Enumeration_Vector) := (State => S_Structural_Valid, First => Field_First (Ctx, F_AV_Enumeration_Vector), Last => Field_Last (Ctx, F_AV_Enumeration_Vector), Value => Value, Predecessor => Ctx.Cursors (F_AV_Enumeration_Vector).Predecessor); - when others => - null; - end case; + Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); end if; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Length)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Initial - and then Ctx.Cursors (F_Length).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Modular_Vector)) - then - Ctx.Cursors (F_Modular_Vector).Last - Ctx.Cursors (F_Modular_Vector).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8 - and then Ctx.Cursors (F_Modular_Vector).Predecessor = F_Length - and then Ctx.Cursors (F_Modular_Vector).First = Ctx.Cursors (F_Length).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Range_Vector)) - then - Ctx.Cursors (F_Range_Vector).Last - Ctx.Cursors (F_Range_Vector).First + 1 = 16 - and then Ctx.Cursors (F_Range_Vector).Predecessor = F_Modular_Vector - and then Ctx.Cursors (F_Range_Vector).First = Ctx.Cursors (F_Modular_Vector).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Enumeration_Vector)) - then - Ctx.Cursors (F_Enumeration_Vector).Last - Ctx.Cursors (F_Enumeration_Vector).First + 1 = 16 - and then Ctx.Cursors (F_Enumeration_Vector).Predecessor = F_Range_Vector - and then Ctx.Cursors (F_Enumeration_Vector).First = Ctx.Cursors (F_Range_Vector).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_AV_Enumeration_Vector)) - then - Ctx.Cursors (F_AV_Enumeration_Vector).Last - Ctx.Cursors (F_AV_Enumeration_Vector).First + 1 = 16 - and then Ctx.Cursors (F_AV_Enumeration_Vector).Predecessor = F_Enumeration_Vector - and then Ctx.Cursors (F_AV_Enumeration_Vector).First = Ctx.Cursors (F_Enumeration_Vector).Last + 1)))))); if Fld = F_Length then Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); elsif Fld = F_Modular_Vector then @@ -502,36 +461,6 @@ is if Invalid (Ctx, F_Modular_Vector) then Reset_Dependent_Fields (Ctx, F_Modular_Vector); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Length)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Initial - and then Ctx.Cursors (F_Length).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Modular_Vector)) - then - Ctx.Cursors (F_Modular_Vector).Last - Ctx.Cursors (F_Modular_Vector).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8 - and then Ctx.Cursors (F_Modular_Vector).Predecessor = F_Length - and then Ctx.Cursors (F_Modular_Vector).First = Ctx.Cursors (F_Length).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Range_Vector)) - then - Ctx.Cursors (F_Range_Vector).Last - Ctx.Cursors (F_Range_Vector).First + 1 = 16 - and then Ctx.Cursors (F_Range_Vector).Predecessor = F_Modular_Vector - and then Ctx.Cursors (F_Range_Vector).First = Ctx.Cursors (F_Modular_Vector).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Enumeration_Vector)) - then - Ctx.Cursors (F_Enumeration_Vector).Last - Ctx.Cursors (F_Enumeration_Vector).First + 1 = 16 - and then Ctx.Cursors (F_Enumeration_Vector).Predecessor = F_Range_Vector - and then Ctx.Cursors (F_Enumeration_Vector).First = Ctx.Cursors (F_Range_Vector).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_AV_Enumeration_Vector)) - then - Ctx.Cursors (F_AV_Enumeration_Vector).Last - Ctx.Cursors (F_AV_Enumeration_Vector).First + 1 = 16 - and then Ctx.Cursors (F_AV_Enumeration_Vector).Predecessor = F_Enumeration_Vector - and then Ctx.Cursors (F_AV_Enumeration_Vector).First = Ctx.Cursors (F_Enumeration_Vector).Last + 1)))))); Ctx.Cursors (F_Modular_Vector) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Modular_Vector), Predecessor => Ctx.Cursors (F_Modular_Vector).Predecessor); Ctx.Cursors (Successor (Ctx, F_Modular_Vector)) := (State => S_Invalid, Predecessor => F_Modular_Vector); end if; @@ -549,36 +478,6 @@ is if Invalid (Ctx, F_Range_Vector) then Reset_Dependent_Fields (Ctx, F_Range_Vector); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Length)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Initial - and then Ctx.Cursors (F_Length).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Modular_Vector)) - then - Ctx.Cursors (F_Modular_Vector).Last - Ctx.Cursors (F_Modular_Vector).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8 - and then Ctx.Cursors (F_Modular_Vector).Predecessor = F_Length - and then Ctx.Cursors (F_Modular_Vector).First = Ctx.Cursors (F_Length).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Range_Vector)) - then - Ctx.Cursors (F_Range_Vector).Last - Ctx.Cursors (F_Range_Vector).First + 1 = 16 - and then Ctx.Cursors (F_Range_Vector).Predecessor = F_Modular_Vector - and then Ctx.Cursors (F_Range_Vector).First = Ctx.Cursors (F_Modular_Vector).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Enumeration_Vector)) - then - Ctx.Cursors (F_Enumeration_Vector).Last - Ctx.Cursors (F_Enumeration_Vector).First + 1 = 16 - and then Ctx.Cursors (F_Enumeration_Vector).Predecessor = F_Range_Vector - and then Ctx.Cursors (F_Enumeration_Vector).First = Ctx.Cursors (F_Range_Vector).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_AV_Enumeration_Vector)) - then - Ctx.Cursors (F_AV_Enumeration_Vector).Last - Ctx.Cursors (F_AV_Enumeration_Vector).First + 1 = 16 - and then Ctx.Cursors (F_AV_Enumeration_Vector).Predecessor = F_Enumeration_Vector - and then Ctx.Cursors (F_AV_Enumeration_Vector).First = Ctx.Cursors (F_Enumeration_Vector).Last + 1)))))); Ctx.Cursors (F_Range_Vector) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Range_Vector), Predecessor => Ctx.Cursors (F_Range_Vector).Predecessor); Ctx.Cursors (Successor (Ctx, F_Range_Vector)) := (State => S_Invalid, Predecessor => F_Range_Vector); end if; @@ -596,36 +495,6 @@ is if Invalid (Ctx, F_Enumeration_Vector) then Reset_Dependent_Fields (Ctx, F_Enumeration_Vector); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Length)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Initial - and then Ctx.Cursors (F_Length).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Modular_Vector)) - then - Ctx.Cursors (F_Modular_Vector).Last - Ctx.Cursors (F_Modular_Vector).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8 - and then Ctx.Cursors (F_Modular_Vector).Predecessor = F_Length - and then Ctx.Cursors (F_Modular_Vector).First = Ctx.Cursors (F_Length).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Range_Vector)) - then - Ctx.Cursors (F_Range_Vector).Last - Ctx.Cursors (F_Range_Vector).First + 1 = 16 - and then Ctx.Cursors (F_Range_Vector).Predecessor = F_Modular_Vector - and then Ctx.Cursors (F_Range_Vector).First = Ctx.Cursors (F_Modular_Vector).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Enumeration_Vector)) - then - Ctx.Cursors (F_Enumeration_Vector).Last - Ctx.Cursors (F_Enumeration_Vector).First + 1 = 16 - and then Ctx.Cursors (F_Enumeration_Vector).Predecessor = F_Range_Vector - and then Ctx.Cursors (F_Enumeration_Vector).First = Ctx.Cursors (F_Range_Vector).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_AV_Enumeration_Vector)) - then - Ctx.Cursors (F_AV_Enumeration_Vector).Last - Ctx.Cursors (F_AV_Enumeration_Vector).First + 1 = 16 - and then Ctx.Cursors (F_AV_Enumeration_Vector).Predecessor = F_Enumeration_Vector - and then Ctx.Cursors (F_AV_Enumeration_Vector).First = Ctx.Cursors (F_Enumeration_Vector).Last + 1)))))); Ctx.Cursors (F_Enumeration_Vector) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Enumeration_Vector), Predecessor => Ctx.Cursors (F_Enumeration_Vector).Predecessor); Ctx.Cursors (Successor (Ctx, F_Enumeration_Vector)) := (State => S_Invalid, Predecessor => F_Enumeration_Vector); end if; @@ -643,36 +512,6 @@ is if Invalid (Ctx, F_AV_Enumeration_Vector) then Reset_Dependent_Fields (Ctx, F_AV_Enumeration_Vector); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Length)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Initial - and then Ctx.Cursors (F_Length).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Modular_Vector)) - then - Ctx.Cursors (F_Modular_Vector).Last - Ctx.Cursors (F_Modular_Vector).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8 - and then Ctx.Cursors (F_Modular_Vector).Predecessor = F_Length - and then Ctx.Cursors (F_Modular_Vector).First = Ctx.Cursors (F_Length).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Range_Vector)) - then - Ctx.Cursors (F_Range_Vector).Last - Ctx.Cursors (F_Range_Vector).First + 1 = 16 - and then Ctx.Cursors (F_Range_Vector).Predecessor = F_Modular_Vector - and then Ctx.Cursors (F_Range_Vector).First = Ctx.Cursors (F_Modular_Vector).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Enumeration_Vector)) - then - Ctx.Cursors (F_Enumeration_Vector).Last - Ctx.Cursors (F_Enumeration_Vector).First + 1 = 16 - and then Ctx.Cursors (F_Enumeration_Vector).Predecessor = F_Range_Vector - and then Ctx.Cursors (F_Enumeration_Vector).First = Ctx.Cursors (F_Range_Vector).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_AV_Enumeration_Vector)) - then - Ctx.Cursors (F_AV_Enumeration_Vector).Last - Ctx.Cursors (F_AV_Enumeration_Vector).First + 1 = 16 - and then Ctx.Cursors (F_AV_Enumeration_Vector).Predecessor = F_Enumeration_Vector - and then Ctx.Cursors (F_AV_Enumeration_Vector).First = Ctx.Cursors (F_Enumeration_Vector).Last + 1)))))); Ctx.Cursors (F_AV_Enumeration_Vector) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_AV_Enumeration_Vector), Predecessor => Ctx.Cursors (F_AV_Enumeration_Vector).Predecessor); Ctx.Cursors (Successor (Ctx, F_AV_Enumeration_Vector)) := (State => S_Invalid, Predecessor => F_AV_Enumeration_Vector); end if; diff --git a/tests/spark/generated/rflx-sequence-generic_messages_message.adb b/tests/spark/generated/rflx-sequence-generic_messages_message.adb index 30b91e2f4..1947ec115 100644 --- a/tests/spark/generated/rflx-sequence-generic_messages_message.adb +++ b/tests/spark/generated/rflx-sequence-generic_messages_message.adb @@ -200,18 +200,6 @@ is else Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); end if; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Length)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Initial - and then Ctx.Cursors (F_Length).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Messages)) - then - Ctx.Cursors (F_Messages).Last - Ctx.Cursors (F_Messages).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8 - and then Ctx.Cursors (F_Messages).Predecessor = F_Length - and then Ctx.Cursors (F_Messages).First = Ctx.Cursors (F_Length).Last + 1))); if Fld = F_Length then Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); elsif Fld = F_Messages then @@ -335,18 +323,6 @@ is if Invalid (Ctx, F_Messages) then Reset_Dependent_Fields (Ctx, F_Messages); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Length)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Initial - and then Ctx.Cursors (F_Length).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Messages)) - then - Ctx.Cursors (F_Messages).Last - Ctx.Cursors (F_Messages).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8 - and then Ctx.Cursors (F_Messages).Predecessor = F_Length - and then Ctx.Cursors (F_Messages).First = Ctx.Cursors (F_Length).Last + 1))); Ctx.Cursors (F_Messages) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Messages), Predecessor => Ctx.Cursors (F_Messages).Predecessor); Ctx.Cursors (Successor (Ctx, F_Messages)) := (State => S_Invalid, Predecessor => F_Messages); end if; diff --git a/tests/spark/generated/rflx-sequence-generic_sequence_size_defined_by_message_size.adb b/tests/spark/generated/rflx-sequence-generic_sequence_size_defined_by_message_size.adb index 7584558bb..f22711c19 100644 --- a/tests/spark/generated/rflx-sequence-generic_sequence_size_defined_by_message_size.adb +++ b/tests/spark/generated/rflx-sequence-generic_sequence_size_defined_by_message_size.adb @@ -200,18 +200,6 @@ is else Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); end if; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Header)) - then - Ctx.Cursors (F_Header).Last - Ctx.Cursors (F_Header).First + 1 = RFLX.Sequence.Enumeration_Base'Size - and then Ctx.Cursors (F_Header).Predecessor = F_Initial - and then Ctx.Cursors (F_Header).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Vector)) - then - Ctx.Cursors (F_Vector).Last - Ctx.Cursors (F_Vector).First + 1 = Types.Bit_Length (Ctx.Last - Ctx.First + 1) - Types.Bit_Length (Ctx.Cursors (F_Header).Last - Ctx.Cursors (F_Header).First + 1) - and then Ctx.Cursors (F_Vector).Predecessor = F_Header - and then Ctx.Cursors (F_Vector).First = Ctx.Cursors (F_Header).Last + 1))); if Fld = F_Header then Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); elsif Fld = F_Vector then @@ -335,18 +323,6 @@ is if Invalid (Ctx, F_Vector) then Reset_Dependent_Fields (Ctx, F_Vector); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Header)) - then - Ctx.Cursors (F_Header).Last - Ctx.Cursors (F_Header).First + 1 = RFLX.Sequence.Enumeration_Base'Size - and then Ctx.Cursors (F_Header).Predecessor = F_Initial - and then Ctx.Cursors (F_Header).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Vector)) - then - Ctx.Cursors (F_Vector).Last - Ctx.Cursors (F_Vector).First + 1 = Types.Bit_Length (Ctx.Last - Ctx.First + 1) - Types.Bit_Length (Ctx.Cursors (F_Header).Last - Ctx.Cursors (F_Header).First + 1) - and then Ctx.Cursors (F_Vector).Predecessor = F_Header - and then Ctx.Cursors (F_Vector).First = Ctx.Cursors (F_Header).Last + 1))); Ctx.Cursors (F_Vector) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Vector), Predecessor => Ctx.Cursors (F_Vector).Predecessor); Ctx.Cursors (Successor (Ctx, F_Vector)) := (State => S_Invalid, Predecessor => F_Vector); end if; diff --git a/tests/spark/generated/rflx-tlv-generic_message.adb b/tests/spark/generated/rflx-tlv-generic_message.adb index 9db276b45..7885c5e40 100644 --- a/tests/spark/generated/rflx-tlv-generic_message.adb +++ b/tests/spark/generated/rflx-tlv-generic_message.adb @@ -229,25 +229,6 @@ is else Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); end if; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Tag)) - then - Ctx.Cursors (F_Tag).Last - Ctx.Cursors (F_Tag).First + 1 = RFLX.TLV.Tag_Base'Size - and then Ctx.Cursors (F_Tag).Predecessor = F_Initial - and then Ctx.Cursors (F_Tag).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Length)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Data)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.TLV.Length'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Tag - and then Ctx.Cursors (F_Length).First = Ctx.Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Value)) - then - Ctx.Cursors (F_Value).Last - Ctx.Cursors (F_Value).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8 - and then Ctx.Cursors (F_Value).Predecessor = F_Length - and then Ctx.Cursors (F_Value).First = Ctx.Cursors (F_Length).Last + 1)))); if Fld = F_Tag then Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); elsif Fld = F_Length then @@ -393,25 +374,6 @@ is begin Reset_Dependent_Fields (Ctx, F_Value); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Tag)) - then - Ctx.Cursors (F_Tag).Last - Ctx.Cursors (F_Tag).First + 1 = RFLX.TLV.Tag_Base'Size - and then Ctx.Cursors (F_Tag).Predecessor = F_Initial - and then Ctx.Cursors (F_Tag).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Length)) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Data)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.TLV.Length'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Tag - and then Ctx.Cursors (F_Length).First = Ctx.Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Value)) - then - Ctx.Cursors (F_Value).Last - Ctx.Cursors (F_Value).First + 1 = Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8 - and then Ctx.Cursors (F_Value).Predecessor = F_Length - and then Ctx.Cursors (F_Value).First = Ctx.Cursors (F_Length).Last + 1)))); Ctx.Cursors (F_Value) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Value), Predecessor => Ctx.Cursors (F_Value).Predecessor); Ctx.Cursors (Successor (Ctx, F_Value)) := (State => S_Invalid, Predecessor => F_Value); end Initialize_Value_Private; diff --git a/tests/spark/generated/rflx-udp-generic_datagram.adb b/tests/spark/generated/rflx-udp-generic_datagram.adb index e0abdb227..fea9dfec3 100644 --- a/tests/spark/generated/rflx-udp-generic_datagram.adb +++ b/tests/spark/generated/rflx-udp-generic_datagram.adb @@ -265,36 +265,6 @@ is else Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); end if; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Source_Port)) - then - Ctx.Cursors (F_Source_Port).Last - Ctx.Cursors (F_Source_Port).First + 1 = RFLX.UDP.Port'Size - and then Ctx.Cursors (F_Source_Port).Predecessor = F_Initial - and then Ctx.Cursors (F_Source_Port).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Destination_Port)) - then - Ctx.Cursors (F_Destination_Port).Last - Ctx.Cursors (F_Destination_Port).First + 1 = RFLX.UDP.Port'Size - and then Ctx.Cursors (F_Destination_Port).Predecessor = F_Source_Port - and then Ctx.Cursors (F_Destination_Port).First = Ctx.Cursors (F_Source_Port).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Length)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.UDP.Length_Base'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Destination_Port - and then Ctx.Cursors (F_Length).First = Ctx.Cursors (F_Destination_Port).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Checksum)) - then - Ctx.Cursors (F_Checksum).Last - Ctx.Cursors (F_Checksum).First + 1 = RFLX.UDP.Checksum'Size - and then Ctx.Cursors (F_Checksum).Predecessor = F_Length - and then Ctx.Cursors (F_Checksum).First = Ctx.Cursors (F_Length).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = (Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) - 8) * 8 - and then Ctx.Cursors (F_Payload).Predecessor = F_Checksum - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Checksum).Last + 1)))))); if Fld = F_Source_Port then Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); elsif Fld = F_Destination_Port then @@ -475,36 +445,6 @@ is begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; - pragma Assert ((if - Structural_Valid (Ctx.Cursors (F_Source_Port)) - then - Ctx.Cursors (F_Source_Port).Last - Ctx.Cursors (F_Source_Port).First + 1 = RFLX.UDP.Port'Size - and then Ctx.Cursors (F_Source_Port).Predecessor = F_Initial - and then Ctx.Cursors (F_Source_Port).First = Ctx.First - and then (if - Structural_Valid (Ctx.Cursors (F_Destination_Port)) - then - Ctx.Cursors (F_Destination_Port).Last - Ctx.Cursors (F_Destination_Port).First + 1 = RFLX.UDP.Port'Size - and then Ctx.Cursors (F_Destination_Port).Predecessor = F_Source_Port - and then Ctx.Cursors (F_Destination_Port).First = Ctx.Cursors (F_Source_Port).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Length)) - then - Ctx.Cursors (F_Length).Last - Ctx.Cursors (F_Length).First + 1 = RFLX.UDP.Length_Base'Size - and then Ctx.Cursors (F_Length).Predecessor = F_Destination_Port - and then Ctx.Cursors (F_Length).First = Ctx.Cursors (F_Destination_Port).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Checksum)) - then - Ctx.Cursors (F_Checksum).Last - Ctx.Cursors (F_Checksum).First + 1 = RFLX.UDP.Checksum'Size - and then Ctx.Cursors (F_Checksum).Predecessor = F_Length - and then Ctx.Cursors (F_Checksum).First = Ctx.Cursors (F_Length).Last + 1 - and then (if - Structural_Valid (Ctx.Cursors (F_Payload)) - then - Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1 = (Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) - 8) * 8 - and then Ctx.Cursors (F_Payload).Predecessor = F_Checksum - and then Ctx.Cursors (F_Payload).First = Ctx.Cursors (F_Checksum).Last + 1)))))); Ctx.Cursors (F_Payload) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Payload), Predecessor => Ctx.Cursors (F_Payload).Predecessor); Ctx.Cursors (Successor (Ctx, F_Payload)) := (State => S_Invalid, Predecessor => F_Payload); end Initialize_Payload_Private; From 4cc96baf57c81dcc71d50891289c6e87c2fa732c Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 11 May 2021 17:27:36 +0200 Subject: [PATCH 03/43] Prevent warnings about unreachable branches Ref. #659 --- defaults.gpr | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/defaults.gpr b/defaults.gpr index 15057d420..30f5bdf13 100644 --- a/defaults.gpr +++ b/defaults.gpr @@ -8,7 +8,8 @@ abstract project Defaults is "--memlimit=1000", "--checks-as-errors", "--warnings=error", - "--proof-warnings", + -- ISSUE: Componolit/RecordFlux#670 + -- "--proof-warnings", "--no-axiom-guard", "--counterexamples=off", "-j0" From a9ae9abecd9ead7b2f17b6aa56855fbd9d96f2a0 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 11 May 2021 17:45:00 +0200 Subject: [PATCH 04/43] Simplify code generation caused by generic buffer type Ref. #659 --- rflx/ada.py | 12 +- rflx/generator/common.py | 37 +- rflx/generator/const.py | 2 +- rflx/generator/generator.py | 252 +- rflx/generator/parser.py | 46 +- rflx/generator/serializer.py | 19 +- rflx/model/type_.py | 17 + rflx/templates/rflx_generic_types.ads | 28 +- rflx/templates/rflx_message_sequence.adb | 20 +- rflx/templates/rflx_message_sequence.ads | 91 +- rflx/templates/rflx_scalar_sequence.adb | 40 +- rflx/templates/rflx_scalar_sequence.ads | 73 +- .../specification_model_generator_test.py | 2 +- .../generated/rflx-derivation-message.adb | 409 +++ .../generated/rflx-derivation-message.ads | 734 ++++- .../rflx-enumeration-generic_message.ads | 463 --- ...ssage.adb => rflx-enumeration-message.adb} | 81 +- .../generated/rflx-enumeration-message.ads | 468 ++- ...eric_frame.adb => rflx-ethernet-frame.adb} | 149 +- tests/spark/generated/rflx-ethernet-frame.ads | 1154 ++++++- .../generated/rflx-ethernet-generic_frame.ads | 1151 ------- .../rflx-expression-generic_message.ads | 524 ---- ...essage.adb => rflx-expression-message.adb} | 87 +- .../generated/rflx-expression-message.ads | 529 +++- .../generated/rflx-icmp-generic_message.ads | 2701 ---------------- ...eric_message.adb => rflx-icmp-message.adb} | 259 +- tests/spark/generated/rflx-icmp-message.ads | 2703 ++++++++++++++++- .../generated/rflx-in_ethernet-contains.adb | 19 + .../generated/rflx-in_ethernet-contains.ads | 43 +- .../rflx-in_ethernet-generic_contains.adb | 19 - .../rflx-in_ethernet-generic_contains.ads | 50 - .../spark/generated/rflx-in_ipv4-contains.adb | 30 + .../spark/generated/rflx-in_ipv4-contains.ads | 72 +- .../rflx-in_ipv4-generic_contains.adb | 30 - .../rflx-in_ipv4-generic_contains.ads | 81 - .../spark/generated/rflx-in_tlv-contains.ads | 18 +- .../rflx-in_tlv-generic_contains.ads | 22 - .../generated/rflx-ipv4-generic_option.ads | 1002 ------ .../generated/rflx-ipv4-generic_packet.ads | 2306 -------------- ...eneric_option.adb => rflx-ipv4-option.adb} | 155 +- tests/spark/generated/rflx-ipv4-option.ads | 1007 +++++- tests/spark/generated/rflx-ipv4-options.ads | 6 +- ...eneric_packet.adb => rflx-ipv4-packet.adb} | 246 +- tests/spark/generated/rflx-ipv4-packet.ads | 2288 +++++++++++++- .../generated/rflx-rflx_generic_types.ads | 26 +- .../generated/rflx-rflx_message_sequence.adb | 20 +- .../generated/rflx-rflx_message_sequence.ads | 91 +- .../generated/rflx-rflx_scalar_sequence.adb | 40 +- .../generated/rflx-rflx_scalar_sequence.ads | 73 +- .../rflx-sequence-av_enumeration_vector.ads | 6 +- .../rflx-sequence-enumeration_vector.ads | 6 +- .../rflx-sequence-generic_inner_message.ads | 625 ---- .../rflx-sequence-generic_message.ads | 1124 ------- ...rflx-sequence-generic_messages_message.ads | 646 ---- ..._sequence_size_defined_by_message_size.ads | 646 ---- ...ge.adb => rflx-sequence-inner_message.adb} | 127 +- .../generated/rflx-sequence-inner_message.ads | 630 +++- .../rflx-sequence-inner_messages.ads | 6 +- ..._message.adb => rflx-sequence-message.adb} | 239 +- .../spark/generated/rflx-sequence-message.ads | 1124 ++++++- ...adb => rflx-sequence-messages_message.adb} | 125 +- .../rflx-sequence-messages_message.ads | 649 +++- .../rflx-sequence-modular_vector.ads | 6 +- .../generated/rflx-sequence-range_vector.ads | 6 +- ...sequence_size_defined_by_message_size.adb} | 125 +- ...-sequence_size_defined_by_message_size.ads | 649 +++- .../generated/rflx-tlv-generic_message.ads | 727 ----- ...neric_message.adb => rflx-tlv-message.adb} | 137 +- tests/spark/generated/rflx-tlv-message.ads | 732 ++++- ...ric_datagram.adb => rflx-udp-datagram.adb} | 141 +- tests/spark/generated/rflx-udp-datagram.ads | 882 +++++- .../generated/rflx-udp-generic_datagram.ads | 877 ------ tests/spark/rflx-builtin_types_tests.adb | 64 +- tests/unit/ada_test.py | 16 + tests/unit/generator_test.py | 4 +- tests/unit/model/type_test.py | 26 + 76 files changed, 15548 insertions(+), 14492 deletions(-) create mode 100644 tests/spark/generated/rflx-derivation-message.adb delete mode 100644 tests/spark/generated/rflx-enumeration-generic_message.ads rename tests/spark/generated/{rflx-enumeration-generic_message.adb => rflx-enumeration-message.adb} (71%) rename tests/spark/generated/{rflx-ethernet-generic_frame.adb => rflx-ethernet-frame.adb} (81%) delete mode 100644 tests/spark/generated/rflx-ethernet-generic_frame.ads delete mode 100644 tests/spark/generated/rflx-expression-generic_message.ads rename tests/spark/generated/{rflx-expression-generic_message.adb => rflx-expression-message.adb} (67%) delete mode 100644 tests/spark/generated/rflx-icmp-generic_message.ads rename tests/spark/generated/{rflx-icmp-generic_message.adb => rflx-icmp-message.adb} (85%) create mode 100644 tests/spark/generated/rflx-in_ethernet-contains.adb delete mode 100644 tests/spark/generated/rflx-in_ethernet-generic_contains.adb delete mode 100644 tests/spark/generated/rflx-in_ethernet-generic_contains.ads create mode 100644 tests/spark/generated/rflx-in_ipv4-contains.adb delete mode 100644 tests/spark/generated/rflx-in_ipv4-generic_contains.adb delete mode 100644 tests/spark/generated/rflx-in_ipv4-generic_contains.ads delete mode 100644 tests/spark/generated/rflx-in_tlv-generic_contains.ads delete mode 100644 tests/spark/generated/rflx-ipv4-generic_option.ads delete mode 100644 tests/spark/generated/rflx-ipv4-generic_packet.ads rename tests/spark/generated/{rflx-ipv4-generic_option.adb => rflx-ipv4-option.adb} (76%) rename tests/spark/generated/{rflx-ipv4-generic_packet.adb => rflx-ipv4-packet.adb} (88%) delete mode 100644 tests/spark/generated/rflx-sequence-generic_inner_message.ads delete mode 100644 tests/spark/generated/rflx-sequence-generic_message.ads delete mode 100644 tests/spark/generated/rflx-sequence-generic_messages_message.ads delete mode 100644 tests/spark/generated/rflx-sequence-generic_sequence_size_defined_by_message_size.ads rename tests/spark/generated/{rflx-sequence-generic_inner_message.adb => rflx-sequence-inner_message.adb} (70%) rename tests/spark/generated/{rflx-sequence-generic_message.adb => rflx-sequence-message.adb} (72%) rename tests/spark/generated/{rflx-sequence-generic_messages_message.adb => rflx-sequence-messages_message.adb} (71%) rename tests/spark/generated/{rflx-sequence-generic_sequence_size_defined_by_message_size.adb => rflx-sequence-sequence_size_defined_by_message_size.adb} (70%) delete mode 100644 tests/spark/generated/rflx-tlv-generic_message.ads rename tests/spark/generated/{rflx-tlv-generic_message.adb => rflx-tlv-message.adb} (72%) rename tests/spark/generated/{rflx-udp-generic_datagram.adb => rflx-udp-datagram.adb} (78%) delete mode 100644 tests/spark/generated/rflx-udp-generic_datagram.ads diff --git a/rflx/ada.py b/rflx/ada.py index d9ce95bd1..85f8246db 100644 --- a/rflx/ada.py +++ b/rflx/ada.py @@ -943,9 +943,6 @@ def __init__( self.generic_identifier = ID(generic_identifier) self.associations = list(map(str, associations or [])) - def __hash__(self) -> int: - return hash(self.identifier) - def __str__(self) -> str: associations = ", ".join(map(str, self.associations)) if self.associations else "<>" return f"with package {self.identifier} is new {self.generic_identifier} ({associations});" @@ -1012,6 +1009,15 @@ def __str__(self) -> str: return f"package {self.identifier} is new {self.generic_package}{associations};\n" +class PackageRenamingDeclaration(Declaration): + def __init__(self, identifier: StrID, package_identifier: StrID) -> None: + self.identifier = ID(identifier) + self.package_identifier = ID(package_identifier) + + def __str__(self) -> str: + return f"package {self.identifier} renames {self.package_identifier};" + + class ObjectDeclaration(Declaration): def __init__( self, diff --git a/rflx/generator/common.py b/rflx/generator/common.py index a5742caf6..4f0f57ee8 100644 --- a/rflx/generator/common.py +++ b/rflx/generator/common.py @@ -1,7 +1,6 @@ from typing import Callable, List, Mapping, Optional, Sequence, Tuple from rflx import ada, expression as expr, model -from rflx.common import unique from rflx.const import BUILTINS_PACKAGE from . import const @@ -637,10 +636,6 @@ def prefixed_type_identifier(type_identifier: ada.ID, prefix: str) -> ada.ID: return prefix * type_identifier -def generic_name(identifier: ada.ID) -> ada.ID: - return ada.ID([*identifier.parts[:-1], f"Generic_{identifier.parts[-1]}"]) - - def base_type_name(scalar_type: model.Scalar) -> ada.ID: if isinstance(scalar_type, model.ModularInteger): return ada.ID(scalar_type.name) @@ -667,7 +662,7 @@ def full_enum_name(enum_type: model.Enumeration) -> ada.ID: def sequence_name(message: model.Message, field: model.Field) -> ada.ID: - return ada.ID(message.types[field].name + "_Sequence") + return ada.ID(message.types[field].identifier) def size_dependent_condition(message: model.Message) -> bool: @@ -679,36 +674,8 @@ def size_dependent_condition(message: model.Message) -> bool: ) -def create_message_instantiation( - message: model.Message, types_package: ada.ID, prefix: str = "" -) -> Tuple[List[ada.ContextItem], ada.GenericPackageInstantiation]: - if isinstance(message, model.DerivedMessage): - name = generic_name(prefix * ada.ID(message.base.identifier)) - else: - name = generic_name(prefix * ada.ID(message.identifier)) - - context: List[ada.ContextItem] = [ - ada.WithClause(name), - ] - - sequences = list( - unique( - prefix * ada.ID(t.identifier) - for t in message.types.values() - if isinstance(t, model.Sequence) - ) - ) - context.extend(ada.WithClause(sequence) for sequence in sequences) - package = ada.GenericPackageInstantiation( - prefix * ada.ID(message.identifier), name, [types_package] + sequences - ) - - return (context, package) - - def create_sequence_instantiation( sequence_type: model.Sequence, - types_package: ada.ID, prefix: str = "", flat: bool = False, ) -> Tuple[List[ada.ContextItem], ada.GenericPackageInstantiation]: @@ -729,7 +696,6 @@ def create_sequence_instantiation( ada.ID(sequence_type.identifier.flat if flat else prefix * sequence_type.identifier), prefix * const.MESSAGE_SEQUENCE_PACKAGE, [ - types_package, element_type_identifier * "Context", element_type_identifier * "Initialize", element_type_identifier * "Take_Buffer", @@ -749,7 +715,6 @@ def create_sequence_instantiation( ada.ID(sequence_type.identifier.flat if flat else prefix * sequence_type.identifier), prefix * const.SCALAR_SEQUENCE_PACKAGE, [ - types_package, element_type_identifier, prefix * element_type_package diff --git a/rflx/generator/const.py b/rflx/generator/const.py index 258360ed6..fea088558 100644 --- a/rflx/generator/const.py +++ b/rflx/generator/const.py @@ -34,7 +34,7 @@ TEMPLATE_DIR = ("rflx", "templates/") -TYPES = ada.ID("Types") +TYPES = TYPES_PACKAGE TYPES_BYTE = TYPES * "Byte" TYPES_BYTES = TYPES * "Bytes" TYPES_BYTES_PTR = TYPES * "Bytes_Ptr" diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 4d12dd4e2..0cc3ab983 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -12,7 +12,6 @@ FALSE, ID, TRUE, - AccessParameter, Add, Aggregate, And, @@ -39,7 +38,6 @@ ExpressionFunctionDeclaration, First, FormalDeclaration, - FormalPackageDeclaration, FormalSubprogramDeclaration, FunctionSpecification, GenericPackageInstantiation, @@ -222,10 +220,7 @@ def __generate(self, model: Model) -> None: "unsupported checksum ignored", Subsystem.GENERATOR, location=c.location ) - if isinstance(t, DerivedMessage): - self.__create_derived_message(t) - else: - self.__create_message(t) + self.__create_message(t) elif isinstance(t, Refinement): self.__create_refinement(t) @@ -233,20 +228,6 @@ def __generate(self, model: Model) -> None: else: assert False, f'unexpected type "{type(t).__name__}"' - def __create_refinement(self, refinement: Refinement) -> None: - self.__create_generic_refinement_unit(refinement) - self.__create_refinement_unit(refinement) - - def __create_message(self, message: Message) -> None: - if not message.fields: - return - - self.__create_generic_message_unit(message) - self.__create_message_unit(message) - - def __create_derived_message(self, message: DerivedMessage) -> None: - self.__create_message_unit(message) - def __create_unit( self, identifier: ID, @@ -289,25 +270,26 @@ def __create_instantiation_unit( return unit # pylint: disable=too-many-statements - def __create_generic_message_unit(self, message: Message) -> None: + def __create_message(self, message: Message) -> None: + if not message.fields: + return + context: ty.List[ContextItem] = [] if any(t.package == BUILTINS_PACKAGE for t in message.types.values()): context.extend( [ + WithClause(self.__prefix * const.TYPES_PACKAGE), WithClause(self.__prefix * const.BUILTIN_TYPES_PACKAGE), WithClause(self.__prefix * const.BUILTIN_TYPES_CONVERSIONS_PACKAGE), UsePackageClause(self.__prefix * const.BUILTIN_TYPES_CONVERSIONS_PACKAGE), ] ) - context.append(WithClause(self.__prefix * const.GENERIC_TYPES_PACKAGE)) + context.append(WithClause(self.__prefix * const.TYPES_PACKAGE)) - unit_name = generic_name(ID(message.identifier)) - parameters: ty.List[FormalDeclaration] = [ - FormalPackageDeclaration("Types", self.__prefix * const.GENERIC_TYPES_PACKAGE), - ] - unit = self.__create_unit(unit_name, context, parameters) + unit_name = ID(message.identifier) + unit = self.__create_unit(unit_name, context) for field_type in message.types.values(): if field_type.package in [BUILTINS_PACKAGE, INTERNAL_PACKAGE]: @@ -322,18 +304,7 @@ def __create_generic_message_unit(self, message: Message) -> None: ) elif isinstance(field_type, Sequence): - if isinstance(field_type.element_type, Message): - name = const.MESSAGE_SEQUENCE_PACKAGE - else: - name = const.SCALAR_SEQUENCE_PACKAGE - context.append(WithClause(self.__prefix * name)) - parameters.append( - FormalPackageDeclaration( - f"{field_type.name}_Sequence", - self.__prefix * name, - ["Types", "others => <>"], - ) - ) + context.append(WithClause(self.__prefix * ID(field_type.identifier))) scalar_fields = {} composite_fields = [] @@ -418,6 +389,15 @@ def __create_use_type_clause(composite_fields: ty.Sequence[Field]) -> UnitPart: "Warnings", [Variable("Off"), String('use clause for type ""U64"" * has no effect')], ), + Pragma( + "Warnings", + [ + Variable("Off"), + String( + '""LENGTH"" is already use-visible through previous use_type_clause' + ), + ], + ), # required when user-defined type Index is subtype of Length UseTypeClause( *[ *([const.TYPES_BYTES] if composite_fields else []), @@ -428,6 +408,15 @@ def __create_use_type_clause(composite_fields: ty.Sequence[Field]) -> UnitPart: const.TYPES_U64, ] ), + Pragma( + "Warnings", + [ + Variable("On"), + String( + '""LENGTH"" is already use-visible through previous use_type_clause' + ), + ], + ), Pragma( "Warnings", [Variable("On"), String('use clause for type ""U64"" * has no effect')], @@ -1941,9 +1930,6 @@ def __create_sufficient_buffer_length_function() -> UnitPart: ), And( NotEqual(Variable("Ctx.Buffer"), Variable("null")), - GreaterEqual( - Call("Field_Size", [Variable("Ctx"), Variable("Fld")]), Number(0) - ), Less( Add( Call("Field_First", [Variable("Ctx"), Variable("Fld")]), @@ -2504,7 +2490,7 @@ def __create_valid_context_function( Parameter(["Buffer_First", "Buffer_Last"], const.TYPES_INDEX), Parameter(["First", "Last"], const.TYPES_BIT_INDEX), Parameter(["Message_Last"], const.TYPES_BIT_LENGTH), - AccessParameter(["Buffer"], const.TYPES_BYTES, constant=True), + Parameter(["Buffer"], const.TYPES_BYTES_PTR), Parameter(["Cursors"], "Field_Cursors"), ], ) @@ -2513,10 +2499,29 @@ def __create_valid_context_function( [], [], [ + # WORKAROUND: + # Limitation of GNAT Community 2020 + # An access constant type cannot be used here, because the "implicit conversion + # between access types with different designated types is not yet supported". + # The warning is no longer shown in later versions of SPARK. + Pragma( + "Warnings", + [ + Variable("Off"), + String('""Buffer"" is not modified, could be of access constant type'), + ], + ), ExpressionFunctionDeclaration( specification, common.context_predicate(message, composite_fields, self.__prefix), ), + Pragma( + "Warnings", + [ + Variable("On"), + String('""Buffer"" is not modified, could be of access constant type'), + ], + ), ], ) @@ -2558,32 +2563,20 @@ def __create_cursors_function() -> UnitPart: [ExpressionFunctionDeclaration(specification, Variable("Ctx.Cursors"))], ) - def __create_message_unit(self, message: Message) -> None: - context, package = common.create_message_instantiation( - message, self.__prefix * const.TYPES_PACKAGE, self.__prefix - ) - self.__create_instantiation_unit( - ID(message.identifier), - [ - Pragma("SPARK_Mode"), - WithClause(self.__prefix * const.TYPES_PACKAGE), - *context, - ], - package, - ) - - def __create_generic_refinement_unit(self, refinement: Refinement) -> None: - unit_name = generic_name(refinement.package * const.REFINEMENT_PACKAGE) + def __create_refinement(self, refinement: Refinement) -> None: + unit_name = refinement.package * const.REFINEMENT_PACKAGE + null_sdu = not refinement.sdu.fields if unit_name in self._units: unit = self._units[unit_name] else: unit = self.__create_unit( unit_name, - [WithClause(self.__prefix * const.GENERIC_TYPES_PACKAGE)], - formal_parameters=[ - FormalPackageDeclaration("Types", self.__prefix * const.GENERIC_TYPES_PACKAGE) - ], + [ + WithClause(self.__prefix * const.TYPES_PACKAGE), + ] + if not null_sdu + else [], ) assert isinstance(unit, PackageUnit), "unexpected unit type" @@ -2597,13 +2590,9 @@ def __create_generic_refinement_unit(self, refinement: Refinement) -> None: ] ) - null_sdu = not refinement.sdu.fields - if not null_sdu: unit += UnitPart([UseTypeClause(const.TYPES_INDEX, const.TYPES_BIT_INDEX)]) - assert isinstance(unit.declaration.formal_parameters, list), "missing formal parameters" - if refinement.pdu.package != refinement.package: pdu_package = ( refinement.pdu.base.package @@ -2618,36 +2607,13 @@ def __create_generic_refinement_unit(self, refinement: Refinement) -> None: ] ) - generic_pdu_identifier = self.__prefix * ( - generic_name(ID(refinement.pdu.base.identifier)) - if isinstance(refinement.pdu, DerivedMessage) - else generic_name(ID(refinement.pdu.identifier)) - ) - - unit.declaration_context.append(WithClause(generic_pdu_identifier)) - unit.declaration.formal_parameters.append( - FormalPackageDeclaration( - refinement.pdu.identifier.flat, - generic_pdu_identifier, - ["Types", "others => <>"], - ) - ) + pdu_identifier = self.__prefix * ID(refinement.pdu.identifier) + sdu_identifier = self.__prefix * ID(refinement.sdu.identifier) - generic_sdu_identifier = self.__prefix * ( - generic_name(ID(refinement.sdu.base.identifier)) - if isinstance(refinement.sdu, DerivedMessage) - else generic_name(ID(refinement.sdu.identifier)) - ) + unit.declaration_context.append(WithClause(pdu_identifier)) if not null_sdu: - unit.declaration_context.append(WithClause(generic_sdu_identifier)) - unit.declaration.formal_parameters.append( - FormalPackageDeclaration( - refinement.sdu.identifier.flat, - generic_sdu_identifier, - ["Types", "others => <>"], - ), - ) + unit.declaration_context.append(WithClause(sdu_identifier)) condition_fields = { f: t @@ -2659,41 +2625,6 @@ def __create_generic_refinement_unit(self, refinement: Refinement) -> None: if not null_sdu: unit += self.__create_switch_procedure(refinement, condition_fields) - def __create_refinement_unit(self, refinement: Refinement) -> None: - unit_name = refinement.package * const.REFINEMENT_PACKAGE - generic_unit_name = generic_name( - self.__prefix * ID(refinement.package) * const.REFINEMENT_PACKAGE - ) - - if unit_name in self._units: - unit = self._units[unit_name] - else: - context = [ - Pragma("SPARK_Mode"), - WithClause(self.__prefix * const.TYPES_PACKAGE), - WithClause(generic_unit_name), - ] - instantiation = GenericPackageInstantiation( - self.__prefix * unit_name, generic_unit_name, [self.__prefix * const.TYPES_PACKAGE] - ) - unit = self.__create_instantiation_unit(unit_name, context, instantiation) - - null_sdu = not refinement.sdu.fields - - assert isinstance(unit, InstantiationUnit), "unexpected unit type" - - pdu_identifier = self.__prefix * ID(refinement.pdu.identifier) - - if pdu_identifier not in unit.declaration.associations: - unit.context.append(WithClause(pdu_identifier)) - unit.declaration.associations.append(pdu_identifier) - - sdu_identifier = self.__prefix * ID(refinement.sdu.identifier) - - if not null_sdu and sdu_identifier not in unit.declaration.associations: - unit.context.append(WithClause(sdu_identifier)) - unit.declaration.associations.append(sdu_identifier) - def __create_type(self, field_type: Type, message_package: ID) -> None: unit = self._units[message_package] @@ -2717,15 +2648,24 @@ def __create_type(self, field_type: Type, message_package: ID) -> None: assert False, f'unexpected type "{type(field_type).__name__}"' def __create_sequence_unit(self, sequence_type: Sequence) -> None: - context, package = common.create_sequence_instantiation( - sequence_type, self.__prefix * const.TYPES_PACKAGE, self.__prefix - ) + context, package = common.create_sequence_instantiation(sequence_type, self.__prefix) self.__create_instantiation_unit( package.identifier, [ Pragma("SPARK_Mode"), - WithClause(self.__prefix * const.TYPES_PACKAGE), *context, + # WORKAROUND: Componolit/Workarounds#33 + # A compiler error about a non-visible declaration of RFLX_Types inside the + # generic sequence package is prevented by adding a with-clause for this package. + Pragma( + "Warnings", + [Variable("Off"), String('unit ""*RFLX_Types"" is not referenced')], + ), + WithClause(self.__prefix * const.TYPES_PACKAGE), + Pragma( + "Warnings", + [Variable("On"), String('unit ""*RFLX_Types"" is not referenced')], + ), ], package, ) @@ -2904,7 +2844,7 @@ def __create_contains_function( condition_fields: ty.Mapping[Field, Type], null_sdu: bool, ) -> SubprogramUnitPart: - pdu_identifier = expr.ID(refinement.pdu.identifier.flat) + pdu_identifier = ID(refinement.pdu.identifier) condition = refinement.condition for f, t in condition_fields.items(): if isinstance(t, Enumeration) and t.always_valid: @@ -2949,23 +2889,23 @@ def __create_contains_function( def __create_switch_procedure( refinement: Refinement, condition_fields: ty.Mapping[Field, Type] ) -> UnitPart: - pdu_name = refinement.pdu.identifier.flat - sdu_name = refinement.sdu.identifier.flat - pdu_context = f"{pdu_name}_PDU_Context" - sdu_context = f"{sdu_name}_SDU_Context" - refined_field_affixed_name = f"{pdu_name}.{refinement.field.affixed_name}" + pdu_identifier = ID(refinement.pdu.identifier) + sdu_identifier = ID(refinement.sdu.identifier) + pdu_context = f"{pdu_identifier.flat}_PDU_Context" + sdu_context = f"{sdu_identifier.flat}_SDU_Context" + refined_field_affixed_name = pdu_identifier * refinement.field.affixed_name specification = ProcedureSpecification( f"Switch_To_{refinement.field.name}", [ - InOutParameter([pdu_context], f"{pdu_name}.Context"), - OutParameter([sdu_context], f"{sdu_name}.Context"), + InOutParameter([pdu_context], ID(pdu_identifier) * "Context"), + OutParameter([sdu_context], ID(sdu_identifier) * "Context"), ], ) return UnitPart( [ - UseTypeClause(f"{pdu_name}.Field_Cursors"), + UseTypeClause(f"{pdu_identifier}.Field_Cursors"), SubprogramDeclaration( specification, [ @@ -2984,8 +2924,8 @@ def __create_switch_procedure( ), Postcondition( And( - Not(Call(f"{pdu_name}.Has_Buffer", [Variable(pdu_context)])), - Call(f"{sdu_name}.Has_Buffer", [Variable(sdu_context)]), + Not(Call(pdu_identifier * "Has_Buffer", [Variable(pdu_context)])), + Call(sdu_identifier * "Has_Buffer", [Variable(sdu_context)]), Equal( Selected(Variable(pdu_context), "Buffer_First"), Selected(Variable(sdu_context), "Buffer_First"), @@ -2997,7 +2937,7 @@ def __create_switch_procedure( Equal( Selected(Variable(sdu_context), "First"), Call( - f"{pdu_name}.Field_First", + pdu_identifier * "Field_First", [ Variable(pdu_context), Variable(refined_field_affixed_name), @@ -3007,14 +2947,14 @@ def __create_switch_procedure( Equal( Selected(Variable(sdu_context), "Last"), Call( - f"{pdu_name}.Field_Last", + pdu_identifier * "Field_Last", [ Variable(pdu_context), Variable(refined_field_affixed_name), ], ), ), - Call(f"{sdu_name}.Initialized", [Variable(sdu_context)]), + Call(sdu_identifier * "Initialized", [Variable(sdu_context)]), *[ Equal(e, Old(e)) for e in [ @@ -3022,7 +2962,8 @@ def __create_switch_procedure( Selected(Variable(pdu_context), "Buffer_Last"), Selected(Variable(pdu_context), "First"), Call( - f"{pdu_name}.Context_Cursors", [Variable(pdu_context)] + pdu_identifier * "Context_Cursors", + [Variable(pdu_context)], ), ] ], @@ -3039,7 +2980,7 @@ def __create_switch_procedure( ["First"], const.TYPES_BIT_INDEX, Call( - f"{pdu_name}.Field_First", + pdu_identifier * "Field_First", [ Variable(pdu_context), Variable(refined_field_affixed_name), @@ -3051,7 +2992,7 @@ def __create_switch_procedure( ["Last"], const.TYPES_BIT_INDEX, Call( - f"{pdu_name}.Field_Last", + pdu_identifier * "Field_Last", [ Variable(pdu_context), Variable(refined_field_affixed_name), @@ -3063,14 +3004,15 @@ def __create_switch_procedure( ], [ CallStatement( - f"{pdu_name}.Take_Buffer", [Variable(pdu_context), Variable("Buffer")] + pdu_identifier * "Take_Buffer", + [Variable(pdu_context), Variable("Buffer")], ), PragmaStatement( "Warnings", [Variable("Off"), String('unused assignment to ""Buffer""')], ), CallStatement( - f"{sdu_name}.Initialize", + sdu_identifier * "Initialize", [ Variable(sdu_context), Variable("Buffer"), @@ -3249,10 +3191,6 @@ def enumeration_types(enum: Enumeration) -> ty.List[TypeDeclaration]: return types -def generic_name(identifier: ID) -> ID: - return ID([*identifier.parts[:-1], f"Generic_{identifier.parts[-1]}"]) - - def contains_function_name(refinement: Refinement) -> str: sdu_name = ( ID(refinement.sdu.name) @@ -3319,7 +3257,7 @@ def refinement_conditions( condition_fields: ty.Mapping[Field, Type], null_sdu: bool, ) -> ty.Sequence[expr.Expr]: - pdu_identifier = expr.ID(refinement.pdu.identifier.flat) + pdu_identifier = ID(refinement.pdu.identifier) conditions: ty.List[expr.Expr] = [ expr.Call(pdu_identifier * "Has_Buffer", [expr.Variable(pdu_context)]) diff --git a/rflx/generator/parser.py b/rflx/generator/parser.py index cdf853806..f8ba2500e 100644 --- a/rflx/generator/parser.py +++ b/rflx/generator/parser.py @@ -204,29 +204,37 @@ def create_verify_procedure( ) set_cursors_statements = [ - PragmaStatement( - "Assert", + *( [ - If( + PragmaStatement( + "Assert", [ - ( - Or( - *[ - Equal(Variable("Fld"), Variable(f.affixed_name)) - for f in message.direct_predecessors(FINAL) - ] - ), - Equal( - Mod( - Call("Field_Last", [Variable("Ctx"), Variable("Fld")]), - Size(const.TYPES_BYTE), - ), - Number(0), - ), + If( + [ + ( + Or( + *[ + Equal(Variable("Fld"), Variable(f.affixed_name)) + for f in message.direct_predecessors(FINAL) + ] + ), + Equal( + Mod( + Call( + "Field_Last", [Variable("Ctx"), Variable("Fld")] + ), + Size(const.TYPES_BYTE), + ), + Number(0), + ), + ) + ] ) - ] + ], ) - ], + ] + if len(message.fields) > 1 + else [] ), Assignment( Variable("Ctx.Message_Last"), diff --git a/rflx/generator/serializer.py b/rflx/generator/serializer.py index ba79cb981..03c19cf2b 100644 --- a/rflx/generator/serializer.py +++ b/rflx/generator/serializer.py @@ -289,11 +289,17 @@ def specification(field: Field, field_type: Type) -> ProcedureSpecification: "Valid", [Variable("Ctx"), Variable(f.affixed_name)], ), - Equal( - Call(f"Get_{f.name}", [Variable("Ctx")]), - Aggregate(TRUE, Variable("Val")) - if isinstance(t, Enumeration) and t.always_valid - else Variable("Val"), + *( + [ + Equal( + Call(f"Get_{f.name}", [Variable("Ctx")]), + Aggregate(TRUE, Variable("Val")) + if isinstance(t, Enumeration) and t.always_valid + else Variable("Val"), + ) + ] + if int(t.value_count) > 1 + else [] ), *self.public_setter_postconditions(message, f), *[ @@ -869,7 +875,8 @@ def setter_postconditions(message: Message, field: Field) -> Sequence[Expr]: + [ Call(f"Get_{p.name}", [Variable("Ctx")]) for p in message.definite_predecessors(field) - if isinstance(message.types[p], Scalar) + for t in [message.types[p]] + if isinstance(t, Scalar) and int(t.value_count) > 1 ] ], ] diff --git a/rflx/model/type_.py b/rflx/model/type_.py index e321cbe4e..7b4583568 100644 --- a/rflx/model/type_.py +++ b/rflx/model/type_.py @@ -61,6 +61,11 @@ def size(self) -> expr.Number: def size_expr(self) -> expr.Expr: return self._size + @property + @abstractmethod + def value_count(self) -> expr.Number: + raise NotImplementedError + @abstractmethod def constraints( self, name: str, proof: bool = False, same_package: bool = True @@ -73,6 +78,10 @@ class Integer(Scalar): def type_(self) -> rty.Type: return rty.Integer(self.full_name, rty.Bounds(self.first.value, self.last.value)) + @property + def value_count(self) -> expr.Number: + return self.last - self.first + expr.Number(1) + @property @abstractmethod def first(self) -> expr.Number: @@ -405,6 +414,14 @@ def __str__(self) -> str: def type_(self) -> rty.Type: return rty.Enumeration(self.full_name) + @property + def value_count(self) -> expr.Number: + if self.always_valid: + size_num = self.size.simplified() + assert isinstance(size_num, expr.Number) + return expr.Number(2 ** int(size_num)) + return expr.Number(len(self.literals)) + def constraints( self, name: str, proof: bool = False, same_package: bool = True ) -> ty.Sequence[expr.Expr]: diff --git a/rflx/templates/rflx_generic_types.ads b/rflx/templates/rflx_generic_types.ads index 6f89440d6..0ad1f1e56 100644 --- a/rflx/templates/rflx_generic_types.ads +++ b/rflx/templates/rflx_generic_types.ads @@ -2,19 +2,29 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); with {prefix}RFLX_Arithmetic; -pragma Warnings (Off, "type ""Bytes_Ptr"" is not referenced"); - generic - type Index is range <>; - type Byte is (<>); - type Bytes is array (Index range <>) of Byte; - type Bytes_Ptr is access Bytes; - type Length is range <>; - type Bit_Length is range <>; -package {prefix}RFLX_Generic_Types with + type Custom_Index is range <>; + type Custom_Byte is (<>); + type Custom_Bytes is array (Custom_Index range <>) of Custom_Byte; + type Custom_Bytes_Ptr is access Custom_Bytes; + type Custom_Length is range <>; + type Custom_Bit_Length is range <>; +package RFLX.RFLX_Generic_Types with SPARK_Mode is + subtype Index is Custom_Index; + + subtype Byte is Custom_Byte; + + subtype Bytes is Custom_Bytes; + + subtype Bytes_Ptr is Custom_Bytes_Ptr; + + subtype Length is Custom_Length; + + subtype Bit_Length is Custom_Bit_Length; + pragma Compile_Time_Error (Index'First /= 1, "Index'First must be 1"); pragma Compile_Time_Error (Byte'Size /= 8, "Byte must be of size 8"); diff --git a/rflx/templates/rflx_message_sequence.adb b/rflx/templates/rflx_message_sequence.adb index 3c2023fbb..2169a0ed4 100644 --- a/rflx/templates/rflx_message_sequence.adb +++ b/rflx/templates/rflx_message_sequence.adb @@ -4,12 +4,12 @@ package body {prefix}RFLX_Message_Sequence with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is begin Ctx := (Buffer_First => Buffer_First, Buffer_Last => Buffer_Last, First => First, Last => Last, Buffer => Buffer, Sequence_Last => First - 1, State => S_Valid); Buffer := null; @@ -21,23 +21,23 @@ is Ctx.State := S_Valid; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Sequence_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Sequence_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Switch (Ctx : in out Context; Element_Ctx : out Element_Context) is - Buffer : Types.Bytes_Ptr := Ctx.Buffer; + Buffer : RFLX_Types.Bytes_Ptr := Ctx.Buffer; begin Ctx.Buffer := null; pragma Warnings (Off, "unused assignment to ""Buffer"""); @@ -46,9 +46,9 @@ is end Switch; procedure Update (Ctx : in out Context; Element_Ctx : in out Element_Context) is - Buffer : Types.Bytes_Ptr; + Buffer : RFLX_Types.Bytes_Ptr; Valid_Message : constant Boolean := Element_Valid_Message (Element_Ctx); - Last : Types.Bit_Length := Types.Bit_Length'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; begin if Valid_Message then Last := Element_Last (Element_Ctx); diff --git a/rflx/templates/rflx_message_sequence.ads b/rflx/templates/rflx_message_sequence.ads index a46c40ae7..fa3a1cda3 100644 --- a/rflx/templates/rflx_message_sequence.ads +++ b/rflx/templates/rflx_message_sequence.ads @@ -1,13 +1,12 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -with {prefix}RFLX_Generic_Types; +with {prefix}RFLX_Types; generic - with package Types is new {prefix}RFLX_Generic_Types (<>); - type Element_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index) is private; - with procedure Element_Initialize (Ctx : out Element_Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index); - with procedure Element_Take_Buffer (Ctx : in out Element_Context; Buffer : out Types.Bytes_Ptr); + type Element_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is private; + with procedure Element_Initialize (Ctx : out Element_Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index); + with procedure Element_Take_Buffer (Ctx : in out Element_Context; Buffer : out RFLX_Types.Bytes_Ptr); with function Element_Has_Buffer (Ctx : Element_Context) return Boolean; - with function Element_Last (Ctx : Element_Context) return Types.Bit_Index; + with function Element_Last (Ctx : Element_Context) return RFLX_Types.Bit_Index; with function Element_Initialized (Ctx : Element_Context) return Boolean; with function Element_Valid_Message (Ctx : Element_Context) return Boolean; package {prefix}RFLX_Message_Sequence with @@ -18,47 +17,51 @@ is pragma Unevaluated_Use_Of_Old (Allow); - use type Types.Bytes_Ptr, Types.Index, Types.Length, Types.Bit_Index; + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with + use type RFLX_Types.Bytes_Ptr, RFLX_Types.Index, RFLX_Types.Length, RFLX_Types.Bit_Index; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last and First <= Last - and Last <= Types.Bit_Index'Last - 1 - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; + and Last <= RFLX_Types.Bit_Index'Last - 1 + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with Pre => (not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last), + and then Buffer'Last < RFLX_Types.Index'Last), Post => (Has_Buffer (Ctx) and Valid (Ctx) and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) and Sequence_Last (Ctx) = Ctx.First - 1), Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) with Pre => (not Ctx'Constrained and then Buffer /= null and then Buffer'First = Buffer_First and then Buffer'Last = Buffer_Last - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last and then First <= Last - and then Last <= Types.Bit_Index'Last - 1 - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0), + and then Last <= RFLX_Types.Bit_Index'Last - 1 + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0), Post => (Buffer = null and Has_Buffer (Ctx) @@ -83,7 +86,7 @@ is and Ctx.Last = Ctx.Last'Old and Sequence_Last (Ctx) = Ctx.First - 1); - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), Post => @@ -100,7 +103,7 @@ is Depends => (Ctx => Ctx, Buffer => Ctx); - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with Pre => (Has_Buffer (Ctx) and Valid (Ctx) @@ -151,7 +154,7 @@ is (Has_Buffer (Ctx) and not Element_Has_Buffer (Element_Ctx) and (if Element_Valid_Message (Element_Ctx)'Old then Valid (Ctx)) - and Sequence_Last (Ctx) = Types.Bit_Length'(if Element_Valid_Message (Element_Ctx) then Element_Last (Element_Ctx) else Sequence_Last (Ctx))'Old + and Sequence_Last (Ctx) = RFLX_Types.Bit_Length'(if Element_Valid_Message (Element_Ctx) then Element_Last (Element_Ctx) else Sequence_Last (Ctx))'Old and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old @@ -168,37 +171,37 @@ is function Has_Buffer (Ctx : Context) return Boolean; - function Available_Space (Ctx : Context) return Types.Bit_Length; + function Available_Space (Ctx : Context) return RFLX_Types.Bit_Length; - function Sequence_Last (Ctx : Context) return Types.Bit_Length; + function Sequence_Last (Ctx : Context) return RFLX_Types.Bit_Length; - function Size (Ctx : Context) return Types.Bit_Length; + function Size (Ctx : Context) return RFLX_Types.Bit_Length; - function Byte_Size (Ctx : Context) return Types.Length; + function Byte_Size (Ctx : Context) return RFLX_Types.Length; private type Context_State is (S_Valid, S_Invalid); - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is record - Sequence_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; + Sequence_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; State : Context_State := S_Valid; end record with Dynamic_Predicate => ((if Buffer /= null then (Buffer'First = Buffer_First and Buffer'Last = Buffer_Last)) - and Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last + and RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last and First <= Last - and Last <= Types.Bit_Index'Last - 1 + and Last <= RFLX_Types.Bit_Index'Last - 1 and First - 1 <= Sequence_Last and Sequence_Last <= Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0 - and Sequence_Last mod Types.Byte'Size = 0); + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0 + and Sequence_Last mod RFLX_Types.Byte'Size = 0); function Has_Element (Ctx : Context) return Boolean is (Ctx.State = S_Valid and Ctx.Sequence_Last < Ctx.Last); @@ -209,21 +212,21 @@ private function Has_Buffer (Ctx : Context) return Boolean is (Ctx.Buffer /= null); - function Available_Space (Ctx : Context) return Types.Bit_Length is + function Available_Space (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Last - Ctx.Sequence_Last); - function Sequence_Last (Ctx : Context) return Types.Bit_Length is + function Sequence_Last (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Sequence_Last); - function Size (Ctx : Context) return Types.Bit_Length is + function Size (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Sequence_Last - Ctx.First + 1); - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is (if Ctx.Sequence_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Sequence_Last) - Types.Byte_Index (Ctx.First)) + 1); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Sequence_Last) - RFLX_Types.Byte_Index (Ctx.First)) + 1); end {prefix}RFLX_Message_Sequence; diff --git a/rflx/templates/rflx_scalar_sequence.adb b/rflx/templates/rflx_scalar_sequence.adb index e80133f42..197043c5e 100644 --- a/rflx/templates/rflx_scalar_sequence.adb +++ b/rflx/templates/rflx_scalar_sequence.adb @@ -4,12 +4,12 @@ package body {prefix}RFLX_Scalar_Sequence with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is begin Ctx := (Buffer_First => Buffer_First, Buffer_Last => Buffer_Last, First => First, Last => Last, Buffer => Buffer, Sequence_Last => First - 1, State => S_Valid, First_Element => Element_Base_Type'First, Next_Element => Element_Base_Type'First); Buffer := null; @@ -21,27 +21,27 @@ is Ctx.State := S_Valid; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Sequence_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Sequence_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Next (Ctx : in out Context) is - Last_Bit : constant Types.Bit_Index := Ctx.Sequence_Last + Element_Base_Type'Size; - Buffer_First : constant Types.Index := Types.Byte_Index (Ctx.Sequence_Last + 1); - Buffer_Last : constant Types.Index := Types.Byte_Index (Last_Bit); - Offset : constant Types.Offset := Types.Offset ((8 - (Last_Bit mod 8)) mod 8); - function Extract is new Types.Extract (Element_Base_Type); + Last_Bit : constant RFLX_Types.Bit_Index := Ctx.Sequence_Last + Element_Base_Type'Size; + Buffer_First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Sequence_Last + 1); + Buffer_Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Last_Bit); + Offset : constant RFLX_Types.Offset := RFLX_Types.Offset ((8 - (Last_Bit mod 8)) mod 8); + function Extract is new RFLX_Types.Extract (Element_Base_Type); begin if Buffer_First >= Ctx.Buffer'First and Buffer_Last <= Ctx.Buffer'Last and Buffer_First <= Buffer_Last then Ctx.Next_Element := Extract (Ctx.Buffer.all (Buffer_First .. Buffer_Last), Offset); @@ -63,16 +63,16 @@ is (To_Actual (Ctx.First_Element)); procedure Append_Element (Ctx : in out Context; Value : Element_Type) is - Last_Bit : Types.Bit_Index; - First : Types.Index; - Last : Types.Index; - Offset : Types.Offset; - procedure Insert is new Types.Insert (Element_Base_Type); + Last_Bit : RFLX_Types.Bit_Index; + First : RFLX_Types.Index; + Last : RFLX_Types.Index; + Offset : RFLX_Types.Offset; + procedure Insert is new RFLX_Types.Insert (Element_Base_Type); begin Last_Bit := Ctx.Sequence_Last + Element_Base_Type'Size; - First := Types.Byte_Index (Ctx.Sequence_Last + 1); - Last := Types.Byte_Index (Last_Bit); - Offset := Types.Offset ((8 - (Last_Bit mod 8)) mod 8); + First := RFLX_Types.Byte_Index (Ctx.Sequence_Last + 1); + Last := RFLX_Types.Byte_Index (Last_Bit); + Offset := RFLX_Types.Offset ((8 - (Last_Bit mod 8)) mod 8); if First >= Ctx.Buffer'First and Last <= Ctx.Buffer'Last and First <= Last then Insert (To_Base (Value), Ctx.Buffer.all (First .. Last), Offset); end if; diff --git a/rflx/templates/rflx_scalar_sequence.ads b/rflx/templates/rflx_scalar_sequence.ads index c9137bc39..0ec0bc521 100644 --- a/rflx/templates/rflx_scalar_sequence.ads +++ b/rflx/templates/rflx_scalar_sequence.ads @@ -1,8 +1,7 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -with {prefix}RFLX_Generic_Types; +with {prefix}RFLX_Types; generic - with package Types is new {prefix}RFLX_Generic_Types (<>); type Element_Type is private; type Element_Base_Type is mod <>; with function Valid (Element : Element_Base_Type) return Boolean; @@ -14,45 +13,49 @@ is pragma Annotate (GNATprove, Terminating, RFLX_Scalar_Sequence); - use type Types.Bytes_Ptr, Types.Index, Types.Length, Types.Bit_Index; + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First, Last : Types.Bit_Index := Types.Bit_Index'First) is private with + use type RFLX_Types.Bytes_Ptr, RFLX_Types.Index, RFLX_Types.Length, RFLX_Types.Bit_Index; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First, Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First) is private with Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First mod Types.Byte'Size = 1 + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First mod RFLX_Types.Byte'Size = 1 and First <= Last - and Last <= Types.Bit_Index'Last - 1; + and Last <= RFLX_Types.Bit_Index'Last - 1; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with Pre => (not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last), + and then Buffer'Last < RFLX_Types.Index'Last), Post => (Has_Buffer (Ctx) and Valid (Ctx) and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) and Sequence_Last (Ctx) = Ctx.First - 1), Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) with Pre => (not Ctx'Constrained and then Buffer /= null and then Buffer'First = Buffer_First and then Buffer'Last = Buffer_Last - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First mod Types.Byte'Size = 1 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First mod RFLX_Types.Byte'Size = 1 and then First <= Last - and then Last <= Types.Bit_Index'Last - 1), + and then Last <= RFLX_Types.Bit_Index'Last - 1), Post => (Buffer = null and Has_Buffer (Ctx) @@ -77,7 +80,7 @@ is and Ctx.Last = Ctx.Last'Old and Sequence_Last (Ctx) = Ctx.First - 1); - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), Post => @@ -94,7 +97,7 @@ is Depends => (Ctx => Ctx, Buffer => Ctx); - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with Pre => (Has_Buffer (Ctx) and Valid (Ctx) @@ -149,22 +152,22 @@ is function Has_Buffer (Ctx : Context) return Boolean; - function Available_Space (Ctx : Context) return Types.Bit_Length; + function Available_Space (Ctx : Context) return RFLX_Types.Bit_Length; - function Sequence_Last (Ctx : Context) return Types.Bit_Length; + function Sequence_Last (Ctx : Context) return RFLX_Types.Bit_Length; - function Size (Ctx : Context) return Types.Bit_Length; + function Size (Ctx : Context) return RFLX_Types.Bit_Length; - function Byte_Size (Ctx : Context) return Types.Length; + function Byte_Size (Ctx : Context) return RFLX_Types.Length; private type Context_State is (S_Valid, S_Invalid); - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First, Last : Types.Bit_Index := Types.Bit_Index'First) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First, Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First) is record - Sequence_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; + Sequence_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; State : Context_State := S_Valid; First_Element : Element_Base_Type := Element_Base_Type'First; Next_Element : Element_Base_Type := Element_Base_Type'First; @@ -173,11 +176,11 @@ private ((if Buffer /= null then (Buffer'First = Buffer_First and Buffer'Last = Buffer_Last)) - and Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First mod Types.Byte'Size = 1 + and RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First mod RFLX_Types.Byte'Size = 1 and First <= Last - and Last <= Types.Bit_Index'Last - 1 + and Last <= RFLX_Types.Bit_Index'Last - 1 and Sequence_Last >= First - 1 and Sequence_Last <= Last and (if Sequence_Last > First - 1 and State = S_Valid then Valid (First_Element))); @@ -194,21 +197,21 @@ private function Has_Buffer (Ctx : Context) return Boolean is (Ctx.Buffer /= null); - function Available_Space (Ctx : Context) return Types.Bit_Length is + function Available_Space (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Last - Ctx.Sequence_Last); - function Sequence_Last (Ctx : Context) return Types.Bit_Length is + function Sequence_Last (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Sequence_Last); - function Size (Ctx : Context) return Types.Bit_Length is + function Size (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Sequence_Last - Ctx.First + 1); - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is (if Ctx.Sequence_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Sequence_Last) - Types.Byte_Index (Ctx.First)) + 1); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Sequence_Last) - RFLX_Types.Byte_Index (Ctx.First)) + 1); end {prefix}RFLX_Scalar_Sequence; diff --git a/tests/integration/specification_model_generator_test.py b/tests/integration/specification_model_generator_test.py index 4b20cce19..9bc3b8dcf 100644 --- a/tests/integration/specification_model_generator_test.py +++ b/tests/integration/specification_model_generator_test.py @@ -267,7 +267,7 @@ def test_refinement_with_imported_enum_literal(tmp_path: Path) -> None: p.parse_string( """ package Numbers is - type Protocol is (PROTO_X) with Size => 8; + type Protocol is (PROTO_X, PROTO_Y) with Size => 8; end Numbers; """ ) diff --git a/tests/spark/generated/rflx-derivation-message.adb b/tests/spark/generated/rflx-derivation-message.adb new file mode 100644 index 000000000..ab2474377 --- /dev/null +++ b/tests/spark/generated/rflx-derivation-message.adb @@ -0,0 +1,409 @@ +pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); +pragma Warnings (Off, "redundant conversion"); + +package body RFLX.Derivation.Message with + SPARK_Mode +is + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is + begin + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + end Initialize; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; + begin + Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Tag => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + Buffer := null; + end Initialize; + + procedure Reset (Ctx : in out Context) is + begin + Ctx.Cursors := (F_Tag => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final)); + Ctx.Message_Last := Ctx.First - 1; + end Reset; + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is + begin + Buffer := Ctx.Buffer; + Ctx.Buffer := null; + end Take_Buffer; + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is + begin + if Buffer'Length > 0 then + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + else + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); + end if; + end Copy; + + procedure Read (Ctx : Context) is + begin + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + end Read; + + procedure Write (Ctx : in out Context) is + begin + Reset (Ctx); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + end Write; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length is + ((if + Ctx.Message_Last = Ctx.First - 1 + then + 0 + else + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + + pragma Warnings (Off, "precondition is always False"); + + function Successor (Ctx : Context; Fld : Field) return Virtual_Field is + ((case Fld is + when F_Tag => + (if + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) + then + F_Final + elsif + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + then + F_Length + else + F_Initial), + when F_Length => + F_Value, + when F_Value => + F_Final)) + with + Pre => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, Fld) + and Valid_Predecessor (Ctx, Fld); + + pragma Warnings (On, "precondition is always False"); + + function Invalid_Successor (Ctx : Context; Fld : Field) return Boolean is + ((case Fld is + when F_Tag => + Invalid (Ctx.Cursors (F_Length)), + when F_Length => + Invalid (Ctx.Cursors (F_Value)), + when F_Value => + True)); + + function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Buffer /= null + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last + and Ctx.First <= Field_First (Ctx, Fld) + and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) + with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is + (Sufficient_Buffer_Length (Ctx, Fld) + and then (case Fld is + when F_Value => + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + when others => + False)); + + procedure Reset_Dependent_Fields (Ctx : in out Context; Fld : Field) with + Pre => + Valid_Next (Ctx, Fld), + Post => + Valid_Next (Ctx, Fld) + and Invalid (Ctx.Cursors (Fld)) + and Invalid_Successor (Ctx, Fld) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Ctx.Cursors (Fld).Predecessor = Ctx.Cursors (Fld).Predecessor'Old + and Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Field_First (Ctx, Fld) = Field_First (Ctx, Fld)'Old + and Field_Size (Ctx, Fld) = Field_Size (Ctx, Fld)'Old + and (case Fld is + when F_Tag => + Invalid (Ctx, F_Tag) + and Invalid (Ctx, F_Length) + and Invalid (Ctx, F_Value), + when F_Length => + Ctx.Cursors (F_Tag) = Ctx.Cursors (F_Tag)'Old + and Invalid (Ctx, F_Length) + and Invalid (Ctx, F_Value), + when F_Value => + Ctx.Cursors (F_Tag) = Ctx.Cursors (F_Tag)'Old + and Ctx.Cursors (F_Length) = Ctx.Cursors (F_Length)'Old + and Invalid (Ctx, F_Value)) + is + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with + Ghost; + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with + Ghost; + begin + pragma Assert (Field_First (Ctx, Fld) = First + and Field_Size (Ctx, Fld) = Size); + case Fld is + when F_Tag => + Ctx.Cursors (F_Value) := (S_Invalid, F_Final); + Ctx.Cursors (F_Length) := (S_Invalid, F_Final); + Ctx.Cursors (F_Tag) := (S_Invalid, Ctx.Cursors (F_Tag).Predecessor); + pragma Assert (Field_First (Ctx, Fld) = First + and Field_Size (Ctx, Fld) = Size); + when F_Length => + Ctx.Cursors (F_Value) := (S_Invalid, F_Final); + Ctx.Cursors (F_Length) := (S_Invalid, Ctx.Cursors (F_Length).Predecessor); + pragma Assert (Field_First (Ctx, Fld) = First + and Field_Size (Ctx, Fld) = Size); + when F_Value => + Ctx.Cursors (F_Value) := (S_Invalid, Ctx.Cursors (F_Value).Predecessor); + pragma Assert (Field_First (Ctx, Fld) = First + and Field_Size (Ctx, Fld) = Size); + end case; + end Reset_Dependent_Fields; + + function Composite_Field (Fld : Field) return Boolean is + ((case Fld is + when F_Tag | F_Length => + False, + when F_Value => + True)); + + function Get_Field_Value (Ctx : Context; Fld : Field) return Field_Dependent_Value with + Pre => + Has_Buffer (Ctx) + and then Valid_Next (Ctx, Fld) + and then Sufficient_Buffer_Length (Ctx, Fld), + Post => + Get_Field_Value'Result.Fld = Fld + is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.TLV.Tag_Base); + function Extract is new RFLX_Types.Extract (RFLX.TLV.Length); + begin + return ((case Fld is + when F_Tag => + (Fld => F_Tag, Tag_Value => Extract (Ctx.Buffer.all (Buffer_First .. Buffer_Last), Offset)), + when F_Length => + (Fld => F_Length, Length_Value => Extract (Ctx.Buffer.all (Buffer_First .. Buffer_Last), Offset)), + when F_Value => + (Fld => F_Value))); + end Get_Field_Value; + + procedure Verify (Ctx : in out Context; Fld : Field) is + Value : Field_Dependent_Value; + begin + if + Has_Buffer (Ctx) + and then Invalid (Ctx.Cursors (Fld)) + and then Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld) + then + if Sufficient_Buffer_Length (Ctx, Fld) then + Value := Get_Field_Value (Ctx, Fld); + if + Valid_Value (Value) + and Field_Condition (Ctx, Value) + then + pragma Assert ((if + Fld = F_Tag + or Fld = F_Value + then + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + if Composite_Field (Fld) then + Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); + else + Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); + end if; + if Fld = F_Tag then + Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); + elsif Fld = F_Length then + Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); + elsif Fld = F_Value then + Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); + end if; + else + Ctx.Cursors (Fld) := (State => S_Invalid, Predecessor => F_Final); + end if; + else + Ctx.Cursors (Fld) := (State => S_Incomplete, Predecessor => F_Final); + end if; + end if; + end Verify; + + procedure Verify_Message (Ctx : in out Context) is + begin + Verify (Ctx, F_Tag); + Verify (Ctx, F_Length); + Verify (Ctx, F_Value); + end Verify_Message; + + procedure Get_Value (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).Last); + begin + Process_Value (Ctx.Buffer.all (First .. Last)); + end Get_Value; + + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Val.Fld in Field'Range + and then Valid_Next (Ctx, Val.Fld) + and then Available_Space (Ctx, Val.Fld) >= Field_Size (Ctx, Val.Fld) + and then (for all F in Field'Range => + (if + Structural_Valid (Ctx.Cursors (F)) + then + Ctx.Cursors (F).Last <= Field_Last (Ctx, Val.Fld))), + Post => + Has_Buffer (Ctx) + and Fst = Field_First (Ctx, Val.Fld) + and Lst = Field_Last (Ctx, Val.Fld) + and Fst >= Ctx.First + and Fst <= Lst + 1 + and Lst <= Ctx.Last + and (for all F in Field'Range => + (if + Structural_Valid (Ctx.Cursors (F)) + then + Ctx.Cursors (F).Last <= Lst)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Ctx.Cursors = Ctx.Cursors'Old + is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.TLV.Tag_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.TLV.Length); + begin + Fst := First; + Lst := Last; + case Val.Fld is + when F_Initial => + null; + when F_Tag => + Insert (Val.Tag_Value, Ctx.Buffer.all (Buffer_First .. Buffer_Last), Offset); + when F_Length => + Insert (Val.Length_Value, Ctx.Buffer.all (Buffer_First .. Buffer_Last), Offset); + when F_Value | F_Final => + null; + end case; + end Set_Field_Value; + + procedure Set_Tag (Ctx : in out Context; Val : RFLX.TLV.Tag) is + Field_Value : constant Field_Dependent_Value := (F_Tag, To_Base (Val)); + First, Last : RFLX_Types.Bit_Index; + begin + Reset_Dependent_Fields (Ctx, F_Tag); + Set_Field_Value (Ctx, Field_Value, First, Last); + Ctx.Message_Last := Last; + Ctx.Cursors (F_Tag) := (State => S_Valid, First => First, Last => Last, Value => Field_Value, Predecessor => Ctx.Cursors (F_Tag).Predecessor); + Ctx.Cursors (Successor (Ctx, F_Tag)) := (State => S_Invalid, Predecessor => F_Tag); + end Set_Tag; + + procedure Set_Length (Ctx : in out Context; Val : RFLX.TLV.Length) is + Field_Value : constant Field_Dependent_Value := (F_Length, To_Base (Val)); + First, Last : RFLX_Types.Bit_Index; + begin + Reset_Dependent_Fields (Ctx, F_Length); + Set_Field_Value (Ctx, Field_Value, First, Last); + Ctx.Message_Last := ((Last + 7) / 8) * 8; + Ctx.Cursors (F_Length) := (State => S_Valid, First => First, Last => Last, Value => Field_Value, Predecessor => Ctx.Cursors (F_Length).Predecessor); + Ctx.Cursors (Successor (Ctx, F_Length)) := (State => S_Invalid, Predecessor => F_Length); + end Set_Length; + + procedure Set_Value_Empty (Ctx : in out Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); + begin + Reset_Dependent_Fields (Ctx, F_Value); + Ctx.Message_Last := Last; + Ctx.Cursors (F_Value) := (State => S_Valid, First => First, Last => Last, Value => (Fld => F_Value), Predecessor => Ctx.Cursors (F_Value).Predecessor); + Ctx.Cursors (Successor (Ctx, F_Value)) := (State => S_Invalid, Predecessor => F_Value); + end Set_Value_Empty; + + procedure Initialize_Value_Private (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Value) + and then Field_Condition (Ctx, (Fld => F_Value)) + and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) + and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Value) + and Ctx.Message_Last = Field_Last (Ctx, F_Value) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old + and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old + is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); + begin + Reset_Dependent_Fields (Ctx, F_Value); + Ctx.Message_Last := Last; + Ctx.Cursors (F_Value) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Value), Predecessor => Ctx.Cursors (F_Value).Predecessor); + Ctx.Cursors (Successor (Ctx, F_Value)) := (State => S_Invalid, Predecessor => F_Value); + end Initialize_Value_Private; + + procedure Initialize_Value (Ctx : in out Context) is + begin + Initialize_Value_Private (Ctx); + end Initialize_Value; + + procedure Set_Value (Ctx : in out Context; Value : RFLX_Types.Bytes) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + begin + Initialize_Value_Private (Ctx); + Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; + end Set_Value; + + procedure Generic_Set_Value (Ctx : in out Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + begin + Initialize_Value_Private (Ctx); + Process_Value (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); + end Generic_Set_Value; + +end RFLX.Derivation.Message; diff --git a/tests/spark/generated/rflx-derivation-message.ads b/tests/spark/generated/rflx-derivation-message.ads index cd9e551a2..7494c0f5e 100644 --- a/tests/spark/generated/rflx-derivation-message.ads +++ b/tests/spark/generated/rflx-derivation-message.ads @@ -1,7 +1,735 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.TLV.Generic_Message; +with RFLX.TLV; +use RFLX.TLV; -package RFLX.Derivation.Message is new RFLX.TLV.Generic_Message (RFLX.RFLX_Types); +package RFLX.Derivation.Message with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Tag, F_Length, F_Value, F_Final); + + subtype Field is Virtual_Field range F_Tag .. F_Value; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Value | F_Final => + null; + when F_Tag => + Tag_Value : RFLX.TLV.Tag_Base; + when F_Length => + Length_Value : RFLX.TLV.Length; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Tag (Ctx : Context) return RFLX.TLV.Tag with + Pre => + Valid (Ctx, F_Tag); + + function Get_Length (Ctx : Context) return RFLX.TLV.Length with + Pre => + Valid (Ctx, F_Length); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Value (Value : RFLX_Types.Bytes); + procedure Get_Value (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Value); + + procedure Set_Tag (Ctx : in out Context; Val : RFLX.TLV.Tag) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Tag) + and then Field_Condition (Ctx, (F_Tag, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Tag) >= Field_Size (Ctx, F_Tag), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Tag) + and Get_Tag (Ctx) = Val + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Tag)) + and Invalid (Ctx, F_Length) + and Invalid (Ctx, F_Value) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + then + Predecessor (Ctx, F_Length) = F_Tag + and Valid_Next (Ctx, F_Length)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Tag) = Predecessor (Ctx, F_Tag)'Old + and Valid_Next (Ctx, F_Tag) = Valid_Next (Ctx, F_Tag)'Old; + + procedure Set_Length (Ctx : in out Context; Val : RFLX.TLV.Length) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Length) + and then Field_Condition (Ctx, (F_Length, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Length) >= Field_Size (Ctx, F_Length), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Length) + and Get_Length (Ctx) = Val + and Invalid (Ctx, F_Value) + and (Predecessor (Ctx, F_Value) = F_Length + and Valid_Next (Ctx, F_Value)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Length) = Predecessor (Ctx, F_Length)'Old + and Valid_Next (Ctx, F_Length) = Valid_Next (Ctx, F_Length)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old; + + procedure Set_Value_Empty (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Value) + and then Field_Condition (Ctx, (Fld => F_Value)) + and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) + and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Value) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Value)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old + and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + procedure Initialize_Value (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Value) + and then Field_Condition (Ctx, (Fld => F_Value)) + and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) + and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Value) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Value)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old + and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + procedure Set_Value (Ctx : in out Context; Value : RFLX_Types.Bytes) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Value) + and then Field_Condition (Ctx, (Fld => F_Value)) + and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) + and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Value)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Value)) + 1, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Value) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Value)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old + and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + generic + with procedure Process_Value (Value : out RFLX_Types.Bytes); + with function Valid_Length (Length : RFLX_Types.Length) return Boolean; + procedure Generic_Set_Value (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Value) + and then Field_Condition (Ctx, (Fld => F_Value)) + and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) + and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Valid_Length (RFLX_Types.Length (Field_Size (Ctx, F_Value) / RFLX_Types.Byte'Size)), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Value) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Value)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old + and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Tag => + Valid (Val.Tag_Value), + when F_Length => + Valid (Val.Length_Value), + when F_Value => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_Length)) + then + (Valid (Cursors (F_Tag)) + and then Cursors (F_Length).Predecessor = F_Tag + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)))) + and then (if + Structural_Valid (Cursors (F_Value)) + then + (Valid (Cursors (F_Length)) + and then Cursors (F_Value).Predecessor = F_Length))) + and then ((if + Invalid (Cursors (F_Tag)) + then + Invalid (Cursors (F_Length))) + and then (if + Invalid (Cursors (F_Length)) + then + Invalid (Cursors (F_Value)))) + and then (if + Structural_Valid (Cursors (F_Tag)) + then + Cursors (F_Tag).Last - Cursors (F_Tag).First + 1 = RFLX.TLV.Tag_Base'Size + and then Cursors (F_Tag).Predecessor = F_Initial + and then Cursors (F_Tag).First = First + and then (if + Structural_Valid (Cursors (F_Length)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + then + Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.TLV.Length'Size + and then Cursors (F_Length).Predecessor = F_Tag + and then Cursors (F_Length).First = Cursors (F_Tag).Last + 1 + and then (if + Structural_Valid (Cursors (F_Value)) + then + Cursors (F_Value).Last - Cursors (F_Value).First + 1 = RFLX_Types.Bit_Length (Cursors (F_Length).Value.Length_Value) * 8 + and then Cursors (F_Value).Predecessor = F_Length + and then Cursors (F_Value).First = Cursors (F_Length).Last + 1)))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Tag) + and then Field_First (Ctx, F_Tag) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Tag) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Tag) + and then Invalid (Ctx, F_Length) + and then Invalid (Ctx, F_Value)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Tag => + True, + when others => + False), + when F_Tag => + (case Fld is + when F_Length => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)), + when others => + False), + when F_Length => + (case Fld is + when F_Value => + True, + when others => + False), + when F_Value | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial => + True, + when F_Tag => + RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)), + when F_Length | F_Value => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Tag => + RFLX.TLV.Tag_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Tag => + (case Fld is + when F_Length => + RFLX.TLV.Length'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Length => + (case Fld is + when F_Value => + RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Value | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Tag => + Ctx.First, + when F_Length => + (if + Ctx.Cursors (Fld).Predecessor = F_Tag + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Value => + (if + Ctx.Cursors (Fld).Predecessor = F_Length + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Tag => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Length => + (Valid (Ctx.Cursors (F_Tag)) + and Ctx.Cursors (Fld).Predecessor = F_Tag), + when F_Value => + (Valid (Ctx.Cursors (F_Length)) + and Ctx.Cursors (Fld).Predecessor = F_Length), + when F_Final => + (Valid (Ctx.Cursors (F_Tag)) + and Ctx.Cursors (Fld).Predecessor = F_Tag) + or (Structural_Valid (Ctx.Cursors (F_Value)) + and Ctx.Cursors (Fld).Predecessor = F_Value))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Tag) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) + or (Valid (Ctx, F_Length) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + and then Structural_Valid (Ctx, F_Value)))); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Tag) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) + or (Valid (Ctx, F_Length) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + and then Valid (Ctx, F_Value)))); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Tag) + or Incomplete (Ctx, F_Length) + or Incomplete (Ctx, F_Value)); + + function Get_Tag (Ctx : Context) return RFLX.TLV.Tag is + (To_Actual (Ctx.Cursors (F_Tag).Value.Tag_Value)); + + function Get_Length (Ctx : Context) return RFLX.TLV.Length is + (To_Actual (Ctx.Cursors (F_Length).Value.Length_Value)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.Derivation.Message; diff --git a/tests/spark/generated/rflx-enumeration-generic_message.ads b/tests/spark/generated/rflx-enumeration-generic_message.ads deleted file mode 100644 index 9d97694ce..000000000 --- a/tests/spark/generated/rflx-enumeration-generic_message.ads +++ /dev/null @@ -1,463 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); -package RFLX.Enumeration.Generic_Message with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Priority, F_Final); - - subtype Field is Virtual_Field range F_Priority .. F_Priority; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Final => - null; - when F_Priority => - Priority_Value : RFLX.Enumeration.Priority_Base; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - function Get_Priority (Ctx : Context) return RFLX.Enumeration.Priority with - Pre => - Valid (Ctx, F_Priority); - - pragma Warnings (On, "precondition is always False"); - - procedure Set_Priority (Ctx : in out Context; Val : RFLX.Enumeration.Priority_Enum) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Priority) - and then Field_Condition (Ctx, (F_Priority, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Priority) >= Field_Size (Ctx, F_Priority), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Priority) - and Get_Priority (Ctx) = (True, Val) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Priority)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Priority) = Predecessor (Ctx, F_Priority)'Old - and Valid_Next (Ctx, F_Priority) = Valid_Next (Ctx, F_Priority)'Old; - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Priority => - Valid (Val.Priority_Value), - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then (True) - and then (True) - and then (if - Structural_Valid (Cursors (F_Priority)) - then - Cursors (F_Priority).Last - Cursors (F_Priority).First + 1 = RFLX.Enumeration.Priority_Base'Size - and then Cursors (F_Priority).Predecessor = F_Initial - and then Cursors (F_Priority).First = First)); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Priority) - and then Field_First (Ctx, F_Priority) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Priority) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Priority)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Priority => - True), - when F_Priority | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Initial | F_Priority => - True, - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Priority => - RFLX.Enumeration.Priority_Base'Size), - when F_Priority | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Priority => - Ctx.First)); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Priority => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_Final => - (Valid (Ctx.Cursors (F_Priority)) - and Ctx.Cursors (Fld).Predecessor = F_Priority))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Priority)); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Priority)); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Priority)); - - function Get_Priority (Ctx : Context) return RFLX.Enumeration.Priority is - (To_Actual (Ctx.Cursors (F_Priority).Value.Priority_Value)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.Enumeration.Generic_Message; diff --git a/tests/spark/generated/rflx-enumeration-generic_message.adb b/tests/spark/generated/rflx-enumeration-message.adb similarity index 71% rename from tests/spark/generated/rflx-enumeration-generic_message.adb rename to tests/spark/generated/rflx-enumeration-message.adb index c8fc1e115..bc8f51db5 100644 --- a/tests/spark/generated/rflx-enumeration-generic_message.adb +++ b/tests/spark/generated/rflx-enumeration-message.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.Enumeration.Generic_Message with +package body RFLX.Enumeration.Message with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Priority => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -74,8 +74,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -101,9 +100,9 @@ is when F_Priority => Invalid (Ctx, F_Priority)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -124,15 +123,15 @@ is Post => Get_Field_Value'Result.Fld = Fld is - First : constant Types.Bit_Index := Field_First (Ctx, Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - function Extract is new Types.Extract (RFLX.Enumeration.Priority_Base); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.Enumeration.Priority_Base); begin return ((case Fld is when F_Priority => @@ -154,10 +153,6 @@ is Valid_Value (Value) and Field_Condition (Ctx, Value) then - pragma Assert ((if - Fld = F_Priority - then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else @@ -174,7 +169,7 @@ is Verify (Ctx, F_Priority); end Verify_Message; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out Types.Bit_Index) with + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -204,15 +199,15 @@ is and Ctx.Last = Ctx.Last'Old and Ctx.Cursors = Ctx.Cursors'Old is - First : constant Types.Bit_Index := Field_First (Ctx, Val.Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Val.Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - procedure Insert is new Types.Insert (RFLX.Enumeration.Priority_Base); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.Enumeration.Priority_Base); begin Fst := First; Lst := Last; @@ -228,7 +223,7 @@ is procedure Set_Priority (Ctx : in out Context; Val : RFLX.Enumeration.Priority_Enum) is Field_Value : constant Field_Dependent_Value := (F_Priority, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Priority); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -237,4 +232,4 @@ is Ctx.Cursors (Successor (Ctx, F_Priority)) := (State => S_Invalid, Predecessor => F_Priority); end Set_Priority; -end RFLX.Enumeration.Generic_Message; +end RFLX.Enumeration.Message; diff --git a/tests/spark/generated/rflx-enumeration-message.ads b/tests/spark/generated/rflx-enumeration-message.ads index 7e1083a57..c48ca7d6d 100644 --- a/tests/spark/generated/rflx-enumeration-message.ads +++ b/tests/spark/generated/rflx-enumeration-message.ads @@ -1,7 +1,469 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.Enumeration.Generic_Message; -package RFLX.Enumeration.Message is new RFLX.Enumeration.Generic_Message (RFLX.RFLX_Types); +package RFLX.Enumeration.Message with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Priority, F_Final); + + subtype Field is Virtual_Field range F_Priority .. F_Priority; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Final => + null; + when F_Priority => + Priority_Value : RFLX.Enumeration.Priority_Base; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Priority (Ctx : Context) return RFLX.Enumeration.Priority with + Pre => + Valid (Ctx, F_Priority); + + pragma Warnings (On, "precondition is always False"); + + procedure Set_Priority (Ctx : in out Context; Val : RFLX.Enumeration.Priority_Enum) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Priority) + and then Field_Condition (Ctx, (F_Priority, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Priority) >= Field_Size (Ctx, F_Priority), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Priority) + and Get_Priority (Ctx) = (True, Val) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Priority)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Priority) = Predecessor (Ctx, F_Priority)'Old + and Valid_Next (Ctx, F_Priority) = Valid_Next (Ctx, F_Priority)'Old; + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Priority => + Valid (Val.Priority_Value), + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then (True) + and then (True) + and then (if + Structural_Valid (Cursors (F_Priority)) + then + Cursors (F_Priority).Last - Cursors (F_Priority).First + 1 = RFLX.Enumeration.Priority_Base'Size + and then Cursors (F_Priority).Predecessor = F_Initial + and then Cursors (F_Priority).First = First)); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Priority) + and then Field_First (Ctx, F_Priority) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Priority) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Priority)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Priority => + True), + when F_Priority | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial | F_Priority => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Priority => + RFLX.Enumeration.Priority_Base'Size), + when F_Priority | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Priority => + Ctx.First)); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Priority => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Final => + (Valid (Ctx.Cursors (F_Priority)) + and Ctx.Cursors (Fld).Predecessor = F_Priority))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Priority)); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Priority)); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Priority)); + + function Get_Priority (Ctx : Context) return RFLX.Enumeration.Priority is + (To_Actual (Ctx.Cursors (F_Priority).Value.Priority_Value)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.Enumeration.Message; diff --git a/tests/spark/generated/rflx-ethernet-generic_frame.adb b/tests/spark/generated/rflx-ethernet-frame.adb similarity index 81% rename from tests/spark/generated/rflx-ethernet-generic_frame.adb rename to tests/spark/generated/rflx-ethernet-frame.adb index 10c57127d..59daa21c4 100644 --- a/tests/spark/generated/rflx-ethernet-generic_frame.adb +++ b/tests/spark/generated/rflx-ethernet-frame.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.Ethernet.Generic_Frame with +package body RFLX.Ethernet.Frame with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Destination => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -94,8 +94,8 @@ is F_Initial), when F_Payload => (if - Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 - and Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500 + RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 + and RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500 then F_Final else @@ -128,8 +128,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -137,11 +136,11 @@ is Has_Buffer (Ctx) and Valid_Next (Ctx, Fld); - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean is + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Payload => - Ctx.Buffer.all (Types.Byte_Index (Field_First (Ctx, Fld)) .. Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -218,9 +217,9 @@ is and Ctx.Cursors (F_Type_Length) = Ctx.Cursors (F_Type_Length)'Old and Invalid (Ctx, F_Payload)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -293,18 +292,18 @@ is Post => Get_Field_Value'Result.Fld = Fld is - First : constant Types.Bit_Index := Field_First (Ctx, Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - function Extract is new Types.Extract (RFLX.Ethernet.Address); - function Extract is new Types.Extract (RFLX.Ethernet.Type_Length_Base); - function Extract is new Types.Extract (RFLX.Ethernet.TPID_Base); - function Extract is new Types.Extract (RFLX.Ethernet.TCI); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.Ethernet.Address); + function Extract is new RFLX_Types.Extract (RFLX.Ethernet.Type_Length_Base); + function Extract is new RFLX_Types.Extract (RFLX.Ethernet.TPID_Base); + function Extract is new RFLX_Types.Extract (RFLX.Ethernet.TCI); begin return ((case Fld is when F_Destination => @@ -341,7 +340,7 @@ is pragma Assert ((if Fld = F_Payload then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); @@ -384,13 +383,13 @@ is end Verify_Message; procedure Get_Payload (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); begin Process_Payload (Ctx.Buffer.all (First .. Last)); end Get_Payload; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out Types.Bit_Index) with + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -420,18 +419,18 @@ is and Ctx.Last = Ctx.Last'Old and Ctx.Cursors = Ctx.Cursors'Old is - First : constant Types.Bit_Index := Field_First (Ctx, Val.Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Val.Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - procedure Insert is new Types.Insert (RFLX.Ethernet.Address); - procedure Insert is new Types.Insert (RFLX.Ethernet.Type_Length_Base); - procedure Insert is new Types.Insert (RFLX.Ethernet.TPID_Base); - procedure Insert is new Types.Insert (RFLX.Ethernet.TCI); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.Ethernet.Address); + procedure Insert is new RFLX_Types.Insert (RFLX.Ethernet.Type_Length_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.Ethernet.TPID_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.Ethernet.TCI); begin Fst := First; Lst := Last; @@ -457,7 +456,7 @@ is procedure Set_Destination (Ctx : in out Context; Val : RFLX.Ethernet.Address) is Field_Value : constant Field_Dependent_Value := (F_Destination, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Destination); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -468,7 +467,7 @@ is procedure Set_Source (Ctx : in out Context; Val : RFLX.Ethernet.Address) is Field_Value : constant Field_Dependent_Value := (F_Source, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Source); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -479,7 +478,7 @@ is procedure Set_Type_Length_TPID (Ctx : in out Context; Val : RFLX.Ethernet.Type_Length) is Field_Value : constant Field_Dependent_Value := (F_Type_Length_TPID, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Type_Length_TPID); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -490,7 +489,7 @@ is procedure Set_TPID (Ctx : in out Context; Val : RFLX.Ethernet.TPID) is Field_Value : constant Field_Dependent_Value := (F_TPID, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_TPID); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -501,7 +500,7 @@ is procedure Set_TCI (Ctx : in out Context; Val : RFLX.Ethernet.TCI) is Field_Value : constant Field_Dependent_Value := (F_TCI, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_TCI); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -512,7 +511,7 @@ is procedure Set_Type_Length (Ctx : in out Context; Val : RFLX.Ethernet.Type_Length) is Field_Value : constant Field_Dependent_Value := (F_Type_Length, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Type_Length); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -528,9 +527,9 @@ is and then Valid_Next (Ctx, F_Payload) and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0, + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0, Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -546,8 +545,8 @@ is and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old and Get_Type_Length (Ctx) = Get_Type_Length (Ctx)'Old is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; @@ -560,28 +559,28 @@ is Initialize_Payload_Private (Ctx); end Initialize_Payload; - procedure Set_Payload (Ctx : in out Context; Value : Types.Bytes) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; end Set_Payload; procedure Generic_Set_Payload (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Generic_Set_Payload; -end RFLX.Ethernet.Generic_Frame; +end RFLX.Ethernet.Frame; diff --git a/tests/spark/generated/rflx-ethernet-frame.ads b/tests/spark/generated/rflx-ethernet-frame.ads index 2249ac5ed..bbfbeee1f 100644 --- a/tests/spark/generated/rflx-ethernet-frame.ads +++ b/tests/spark/generated/rflx-ethernet-frame.ads @@ -1,7 +1,1155 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.Ethernet.Generic_Frame; -package RFLX.Ethernet.Frame is new RFLX.Ethernet.Generic_Frame (RFLX.RFLX_Types); +package RFLX.Ethernet.Frame with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Destination, F_Source, F_Type_Length_TPID, F_TPID, F_TCI, F_Type_Length, F_Payload, F_Final); + + subtype Field is Virtual_Field range F_Destination .. F_Payload; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Payload | F_Final => + null; + when F_Destination => + Destination_Value : RFLX.Ethernet.Address; + when F_Source => + Source_Value : RFLX.Ethernet.Address; + when F_Type_Length_TPID => + Type_Length_TPID_Value : RFLX.Ethernet.Type_Length_Base; + when F_TPID => + TPID_Value : RFLX.Ethernet.TPID_Base; + when F_TCI => + TCI_Value : RFLX.Ethernet.TCI; + when F_Type_Length => + Type_Length_Value : RFLX.Ethernet.Type_Length_Base; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value; Size : RFLX_Types.Bit_Length := 0) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Destination (Ctx : Context) return RFLX.Ethernet.Address with + Pre => + Valid (Ctx, F_Destination); + + function Get_Source (Ctx : Context) return RFLX.Ethernet.Address with + Pre => + Valid (Ctx, F_Source); + + function Get_Type_Length_TPID (Ctx : Context) return RFLX.Ethernet.Type_Length with + Pre => + Valid (Ctx, F_Type_Length_TPID); + + function Get_TPID (Ctx : Context) return RFLX.Ethernet.TPID with + Pre => + Valid (Ctx, F_TPID); + + function Get_TCI (Ctx : Context) return RFLX.Ethernet.TCI with + Pre => + Valid (Ctx, F_TCI); + + function Get_Type_Length (Ctx : Context) return RFLX.Ethernet.Type_Length with + Pre => + Valid (Ctx, F_Type_Length); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Payload (Payload : RFLX_Types.Bytes); + procedure Get_Payload (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Payload); + + procedure Set_Destination (Ctx : in out Context; Val : RFLX.Ethernet.Address) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Destination) + and then Field_Condition (Ctx, (F_Destination, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Destination) >= Field_Size (Ctx, F_Destination), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Destination) + and Get_Destination (Ctx) = Val + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Type_Length_TPID) + and Invalid (Ctx, F_TPID) + and Invalid (Ctx, F_TCI) + and Invalid (Ctx, F_Type_Length) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Source) = F_Destination + and Valid_Next (Ctx, F_Source)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Destination) = Predecessor (Ctx, F_Destination)'Old + and Valid_Next (Ctx, F_Destination) = Valid_Next (Ctx, F_Destination)'Old; + + procedure Set_Source (Ctx : in out Context; Val : RFLX.Ethernet.Address) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Source) + and then Field_Condition (Ctx, (F_Source, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Source) >= Field_Size (Ctx, F_Source), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Source) + and Get_Source (Ctx) = Val + and Invalid (Ctx, F_Type_Length_TPID) + and Invalid (Ctx, F_TPID) + and Invalid (Ctx, F_TCI) + and Invalid (Ctx, F_Type_Length) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Type_Length_TPID) = F_Source + and Valid_Next (Ctx, F_Type_Length_TPID)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Source) = Predecessor (Ctx, F_Source)'Old + and Valid_Next (Ctx, F_Source) = Valid_Next (Ctx, F_Source)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old + and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old; + + procedure Set_Type_Length_TPID (Ctx : in out Context; Val : RFLX.Ethernet.Type_Length) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Type_Length_TPID) + and then Field_Condition (Ctx, (F_Type_Length_TPID, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Type_Length_TPID) >= Field_Size (Ctx, F_Type_Length_TPID), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Type_Length_TPID) + and Get_Type_Length_TPID (Ctx) = Val + and Invalid (Ctx, F_TPID) + and Invalid (Ctx, F_TCI) + and Invalid (Ctx, F_Type_Length) + and Invalid (Ctx, F_Payload) + and (if + Get_Type_Length_TPID (Ctx) = 16#8100# + then + Predecessor (Ctx, F_TPID) = F_Type_Length_TPID + and Valid_Next (Ctx, F_TPID)) + and (if + Get_Type_Length_TPID (Ctx) /= 16#8100# + then + Predecessor (Ctx, F_Type_Length) = F_Type_Length_TPID + and Valid_Next (Ctx, F_Type_Length)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Type_Length_TPID) = Predecessor (Ctx, F_Type_Length_TPID)'Old + and Valid_Next (Ctx, F_Type_Length_TPID) = Valid_Next (Ctx, F_Type_Length_TPID)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old + and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old; + + procedure Set_TPID (Ctx : in out Context; Val : RFLX.Ethernet.TPID) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_TPID) + and then Field_Condition (Ctx, (F_TPID, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_TPID) >= Field_Size (Ctx, F_TPID), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_TPID) + and Invalid (Ctx, F_TCI) + and Invalid (Ctx, F_Type_Length) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_TCI) = F_TPID + and Valid_Next (Ctx, F_TCI)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_TPID) = Predecessor (Ctx, F_TPID)'Old + and Valid_Next (Ctx, F_TPID) = Valid_Next (Ctx, F_TPID)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old + and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old + and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old + and Context_Cursor (Ctx, F_Type_Length_TPID) = Context_Cursor (Ctx, F_Type_Length_TPID)'Old; + + procedure Set_TCI (Ctx : in out Context; Val : RFLX.Ethernet.TCI) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_TCI) + and then Field_Condition (Ctx, (F_TCI, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_TCI) >= Field_Size (Ctx, F_TCI), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_TCI) + and Get_TCI (Ctx) = Val + and Invalid (Ctx, F_Type_Length) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Type_Length) = F_TCI + and Valid_Next (Ctx, F_Type_Length)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_TCI) = Predecessor (Ctx, F_TCI)'Old + and Valid_Next (Ctx, F_TCI) = Valid_Next (Ctx, F_TCI)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old + and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old + and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old + and Context_Cursor (Ctx, F_Type_Length_TPID) = Context_Cursor (Ctx, F_Type_Length_TPID)'Old + and Context_Cursor (Ctx, F_TPID) = Context_Cursor (Ctx, F_TPID)'Old; + + procedure Set_Type_Length (Ctx : in out Context; Val : RFLX.Ethernet.Type_Length) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Type_Length) + and then Field_Condition (Ctx, (F_Type_Length, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Type_Length) >= Field_Size (Ctx, F_Type_Length), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Type_Length) + and Get_Type_Length (Ctx) = Val + and Invalid (Ctx, F_Payload) + and (if + Get_Type_Length (Ctx) <= 1500 + then + Predecessor (Ctx, F_Payload) = F_Type_Length + and Valid_Next (Ctx, F_Payload)) + and (if + Get_Type_Length (Ctx) >= 1536 + then + Predecessor (Ctx, F_Payload) = F_Type_Length + and Valid_Next (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Type_Length) = Predecessor (Ctx, F_Type_Length)'Old + and Valid_Next (Ctx, F_Type_Length) = Valid_Next (Ctx, F_Type_Length)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old + and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old + and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old + and Context_Cursor (Ctx, F_Type_Length_TPID) = Context_Cursor (Ctx, F_Type_Length_TPID)'Old + and Context_Cursor (Ctx, F_TPID) = Context_Cursor (Ctx, F_TPID)'Old + and Context_Cursor (Ctx, F_TCI) = Context_Cursor (Ctx, F_TCI)'Old; + + procedure Initialize_Payload (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old + and Get_Type_Length (Ctx) = Get_Type_Length (Ctx)'Old; + + procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Payload)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old + and Get_Type_Length (Ctx) = Get_Type_Length (Ctx)'Old; + + generic + with procedure Process_Payload (Payload : out RFLX_Types.Bytes); + with function Valid_Length (Length : RFLX_Types.Length) return Boolean; + procedure Generic_Set_Payload (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Valid_Length (RFLX_Types.Length (Field_Size (Ctx, F_Payload) / RFLX_Types.Byte'Size)), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old + and Get_Type_Length (Ctx) = Get_Type_Length (Ctx)'Old; + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Destination => + Valid (Val.Destination_Value), + when F_Source => + Valid (Val.Source_Value), + when F_Type_Length_TPID => + Valid (Val.Type_Length_TPID_Value), + when F_TPID => + Valid (Val.TPID_Value), + when F_TCI => + Valid (Val.TCI_Value), + when F_Type_Length => + Valid (Val.Type_Length_Value), + when F_Payload => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_Source)) + then + (Valid (Cursors (F_Destination)) + and then Cursors (F_Source).Predecessor = F_Destination)) + and then (if + Structural_Valid (Cursors (F_Type_Length_TPID)) + then + (Valid (Cursors (F_Source)) + and then Cursors (F_Type_Length_TPID).Predecessor = F_Source)) + and then (if + Structural_Valid (Cursors (F_TPID)) + then + (Valid (Cursors (F_Type_Length_TPID)) + and then Cursors (F_TPID).Predecessor = F_Type_Length_TPID + and then Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100#)) + and then (if + Structural_Valid (Cursors (F_TCI)) + then + (Valid (Cursors (F_TPID)) + and then Cursors (F_TCI).Predecessor = F_TPID)) + and then (if + Structural_Valid (Cursors (F_Type_Length)) + then + (Valid (Cursors (F_TCI)) + and then Cursors (F_Type_Length).Predecessor = F_TCI) + or (Valid (Cursors (F_Type_Length_TPID)) + and then Cursors (F_Type_Length).Predecessor = F_Type_Length_TPID + and then Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100#)) + and then (if + Structural_Valid (Cursors (F_Payload)) + then + (Valid (Cursors (F_Type_Length)) + and then Cursors (F_Payload).Predecessor = F_Type_Length + and then Cursors (F_Type_Length).Value.Type_Length_Value <= 1500) + or (Valid (Cursors (F_Type_Length)) + and then Cursors (F_Payload).Predecessor = F_Type_Length + and then Cursors (F_Type_Length).Value.Type_Length_Value >= 1536))) + and then ((if + Invalid (Cursors (F_Destination)) + then + Invalid (Cursors (F_Source))) + and then (if + Invalid (Cursors (F_Source)) + then + Invalid (Cursors (F_Type_Length_TPID))) + and then (if + Invalid (Cursors (F_Type_Length_TPID)) + then + Invalid (Cursors (F_TPID))) + and then (if + Invalid (Cursors (F_TPID)) + then + Invalid (Cursors (F_TCI))) + and then (if + Invalid (Cursors (F_TCI)) + and then Invalid (Cursors (F_Type_Length_TPID)) + then + Invalid (Cursors (F_Type_Length))) + and then (if + Invalid (Cursors (F_Type_Length)) + then + Invalid (Cursors (F_Payload)))) + and then (if + Structural_Valid (Cursors (F_Destination)) + then + Cursors (F_Destination).Last - Cursors (F_Destination).First + 1 = RFLX.Ethernet.Address'Size + and then Cursors (F_Destination).Predecessor = F_Initial + and then Cursors (F_Destination).First = First + and then (if + Structural_Valid (Cursors (F_Source)) + then + Cursors (F_Source).Last - Cursors (F_Source).First + 1 = RFLX.Ethernet.Address'Size + and then Cursors (F_Source).Predecessor = F_Destination + and then Cursors (F_Source).First = Cursors (F_Destination).Last + 1 + and then (if + Structural_Valid (Cursors (F_Type_Length_TPID)) + then + Cursors (F_Type_Length_TPID).Last - Cursors (F_Type_Length_TPID).First + 1 = RFLX.Ethernet.Type_Length_Base'Size + and then Cursors (F_Type_Length_TPID).Predecessor = F_Source + and then Cursors (F_Type_Length_TPID).First = Cursors (F_Source).Last + 1 + and then (if + Structural_Valid (Cursors (F_TPID)) + and then Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100# + then + Cursors (F_TPID).Last - Cursors (F_TPID).First + 1 = RFLX.Ethernet.TPID_Base'Size + and then Cursors (F_TPID).Predecessor = F_Type_Length_TPID + and then Cursors (F_TPID).First = RFLX_Types.Bit_Index (Cursors (F_Type_Length_TPID).First) + and then (if + Structural_Valid (Cursors (F_TCI)) + then + Cursors (F_TCI).Last - Cursors (F_TCI).First + 1 = RFLX.Ethernet.TCI'Size + and then Cursors (F_TCI).Predecessor = F_TPID + and then Cursors (F_TCI).First = Cursors (F_TPID).Last + 1 + and then (if + Structural_Valid (Cursors (F_Type_Length)) + then + Cursors (F_Type_Length).Last - Cursors (F_Type_Length).First + 1 = RFLX.Ethernet.Type_Length_Base'Size + and then Cursors (F_Type_Length).Predecessor = F_TCI + and then Cursors (F_Type_Length).First = Cursors (F_TCI).Last + 1 + and then (if + Structural_Valid (Cursors (F_Payload)) + and then Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 + then + Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = RFLX_Types.Bit_Length (Cursors (F_Type_Length).Value.Type_Length_Value) * 8 + and then Cursors (F_Payload).Predecessor = F_Type_Length + and then Cursors (F_Payload).First = Cursors (F_Type_Length).Last + 1) + and then (if + Structural_Valid (Cursors (F_Payload)) + and then Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 + then + Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Type_Length).Last) + and then Cursors (F_Payload).Predecessor = F_Type_Length + and then Cursors (F_Payload).First = Cursors (F_Type_Length).Last + 1)))) + and then (if + Structural_Valid (Cursors (F_Type_Length)) + and then Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100# + then + Cursors (F_Type_Length).Last - Cursors (F_Type_Length).First + 1 = RFLX.Ethernet.Type_Length_Base'Size + and then Cursors (F_Type_Length).Predecessor = F_Type_Length_TPID + and then Cursors (F_Type_Length).First = RFLX_Types.Bit_Index (Cursors (F_Type_Length_TPID).First) + and then (if + Structural_Valid (Cursors (F_Payload)) + and then Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 + then + Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = RFLX_Types.Bit_Length (Cursors (F_Type_Length).Value.Type_Length_Value) * 8 + and then Cursors (F_Payload).Predecessor = F_Type_Length + and then Cursors (F_Payload).First = Cursors (F_Type_Length).Last + 1) + and then (if + Structural_Valid (Cursors (F_Payload)) + and then Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 + then + Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Type_Length).Last) + and then Cursors (F_Payload).Predecessor = F_Type_Length + and then Cursors (F_Payload).First = Cursors (F_Type_Length).Last + 1)))))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Destination) + and then Field_First (Ctx, F_Destination) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Destination) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Destination) + and then Invalid (Ctx, F_Source) + and then Invalid (Ctx, F_Type_Length_TPID) + and then Invalid (Ctx, F_TPID) + and then Invalid (Ctx, F_TCI) + and then Invalid (Ctx, F_Type_Length) + and then Invalid (Ctx, F_Payload)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Destination => + True, + when others => + False), + when F_Destination => + (case Fld is + when F_Source => + True, + when others => + False), + when F_Source => + (case Fld is + when F_Type_Length_TPID => + True, + when others => + False), + when F_Type_Length_TPID => + (case Fld is + when F_TPID => + Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100#, + when F_Type_Length => + Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100#, + when others => + False), + when F_TPID => + (case Fld is + when F_TCI => + True, + when others => + False), + when F_TCI => + (case Fld is + when F_Type_Length => + True, + when others => + False), + when F_Type_Length => + (case Fld is + when F_Payload => + Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 + or Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536, + when others => + False), + when F_Payload | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value; Size : RFLX_Types.Bit_Length := 0) return Boolean is + ((case Val.Fld is + when F_Initial | F_Destination | F_Source => + True, + when F_Type_Length_TPID => + RFLX_Types.U64 (Val.Type_Length_TPID_Value) = 16#8100# + or RFLX_Types.U64 (Val.Type_Length_TPID_Value) /= 16#8100#, + when F_TPID | F_TCI => + True, + when F_Type_Length => + RFLX_Types.U64 (Val.Type_Length_Value) <= 1500 + or RFLX_Types.U64 (Val.Type_Length_Value) >= 1536, + when F_Payload => + RFLX_Types.U64 (Size) / 8 >= 46 + and RFLX_Types.U64 (Size) / 8 <= 1500, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Destination => + RFLX.Ethernet.Address'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Destination => + (case Fld is + when F_Source => + RFLX.Ethernet.Address'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Source => + (case Fld is + when F_Type_Length_TPID => + RFLX.Ethernet.Type_Length_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Type_Length_TPID => + (case Fld is + when F_TPID => + RFLX.Ethernet.TPID_Base'Size, + when F_Type_Length => + RFLX.Ethernet.Type_Length_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_TPID => + (case Fld is + when F_TCI => + RFLX.Ethernet.TCI'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_TCI => + (case Fld is + when F_Type_Length => + RFLX.Ethernet.Type_Length_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Type_Length => + (case Fld is + when F_Payload => + (if + Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 + then + RFLX_Types.Bit_Length (Ctx.Cursors (F_Type_Length).Value.Type_Length_Value) * 8 + elsif + Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 + then + RFLX_Types.Bit_Length (Ctx.Last) - RFLX_Types.Bit_Length (Ctx.Cursors (F_Type_Length).Last) + else + RFLX_Types.Unreachable_Bit_Length), + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Payload | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Destination => + Ctx.First, + when F_Source => + (if + Ctx.Cursors (Fld).Predecessor = F_Destination + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Type_Length_TPID => + (if + Ctx.Cursors (Fld).Predecessor = F_Source + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_TPID => + (if + Ctx.Cursors (Fld).Predecessor = F_Type_Length_TPID + and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100# + then + Ctx.Cursors (F_Type_Length_TPID).First + else + RFLX_Types.Unreachable_Bit_Length), + when F_TCI => + (if + Ctx.Cursors (Fld).Predecessor = F_TPID + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Type_Length => + (if + Ctx.Cursors (Fld).Predecessor = F_TCI + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + elsif + Ctx.Cursors (Fld).Predecessor = F_Type_Length_TPID + and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100# + then + Ctx.Cursors (F_Type_Length_TPID).First + else + RFLX_Types.Unreachable_Bit_Length), + when F_Payload => + (if + Ctx.Cursors (Fld).Predecessor = F_Type_Length + and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + elsif + Ctx.Cursors (Fld).Predecessor = F_Type_Length + and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Destination => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Source => + (Valid (Ctx.Cursors (F_Destination)) + and Ctx.Cursors (Fld).Predecessor = F_Destination), + when F_Type_Length_TPID => + (Valid (Ctx.Cursors (F_Source)) + and Ctx.Cursors (Fld).Predecessor = F_Source), + when F_TPID => + (Valid (Ctx.Cursors (F_Type_Length_TPID)) + and Ctx.Cursors (Fld).Predecessor = F_Type_Length_TPID), + when F_TCI => + (Valid (Ctx.Cursors (F_TPID)) + and Ctx.Cursors (Fld).Predecessor = F_TPID), + when F_Type_Length => + (Valid (Ctx.Cursors (F_TCI)) + and Ctx.Cursors (Fld).Predecessor = F_TCI) + or (Valid (Ctx.Cursors (F_Type_Length_TPID)) + and Ctx.Cursors (Fld).Predecessor = F_Type_Length_TPID), + when F_Payload => + (Valid (Ctx.Cursors (F_Type_Length)) + and Ctx.Cursors (Fld).Predecessor = F_Type_Length), + when F_Final => + (Structural_Valid (Ctx.Cursors (F_Payload)) + and Ctx.Cursors (Fld).Predecessor = F_Payload))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Destination) + and then Valid (Ctx, F_Source) + and then Valid (Ctx, F_Type_Length_TPID) + and then ((Valid (Ctx, F_TPID) + and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100# + and then Valid (Ctx, F_TCI) + and then Valid (Ctx, F_Type_Length) + and then ((Structural_Valid (Ctx, F_Payload) + and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 + and then (RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 + and RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)) + or (Structural_Valid (Ctx, F_Payload) + and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 + and then (RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 + and RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)))) + or (Valid (Ctx, F_Type_Length) + and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100# + and then ((Structural_Valid (Ctx, F_Payload) + and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 + and then (RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 + and RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)) + or (Structural_Valid (Ctx, F_Payload) + and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 + and then (RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 + and RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)))))); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Destination) + and then Valid (Ctx, F_Source) + and then Valid (Ctx, F_Type_Length_TPID) + and then ((Valid (Ctx, F_TPID) + and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100# + and then Valid (Ctx, F_TCI) + and then Valid (Ctx, F_Type_Length) + and then ((Valid (Ctx, F_Payload) + and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 + and then (RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 + and RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)) + or (Valid (Ctx, F_Payload) + and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 + and then (RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 + and RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)))) + or (Valid (Ctx, F_Type_Length) + and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100# + and then ((Valid (Ctx, F_Payload) + and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 + and then (RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 + and RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)) + or (Valid (Ctx, F_Payload) + and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 + and then (RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 + and RFLX_Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)))))); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Destination) + or Incomplete (Ctx, F_Source) + or Incomplete (Ctx, F_Type_Length_TPID) + or Incomplete (Ctx, F_TPID) + or Incomplete (Ctx, F_TCI) + or Incomplete (Ctx, F_Type_Length) + or Incomplete (Ctx, F_Payload)); + + function Get_Destination (Ctx : Context) return RFLX.Ethernet.Address is + (To_Actual (Ctx.Cursors (F_Destination).Value.Destination_Value)); + + function Get_Source (Ctx : Context) return RFLX.Ethernet.Address is + (To_Actual (Ctx.Cursors (F_Source).Value.Source_Value)); + + function Get_Type_Length_TPID (Ctx : Context) return RFLX.Ethernet.Type_Length is + (To_Actual (Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value)); + + function Get_TPID (Ctx : Context) return RFLX.Ethernet.TPID is + (To_Actual (Ctx.Cursors (F_TPID).Value.TPID_Value)); + + function Get_TCI (Ctx : Context) return RFLX.Ethernet.TCI is + (To_Actual (Ctx.Cursors (F_TCI).Value.TCI_Value)); + + function Get_Type_Length (Ctx : Context) return RFLX.Ethernet.Type_Length is + (To_Actual (Ctx.Cursors (F_Type_Length).Value.Type_Length_Value)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.Ethernet.Frame; diff --git a/tests/spark/generated/rflx-ethernet-generic_frame.ads b/tests/spark/generated/rflx-ethernet-generic_frame.ads deleted file mode 100644 index 6b656509b..000000000 --- a/tests/spark/generated/rflx-ethernet-generic_frame.ads +++ /dev/null @@ -1,1151 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); -package RFLX.Ethernet.Generic_Frame with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes, Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Destination, F_Source, F_Type_Length_TPID, F_TPID, F_TCI, F_Type_Length, F_Payload, F_Final); - - subtype Field is Virtual_Field range F_Destination .. F_Payload; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Payload | F_Final => - null; - when F_Destination => - Destination_Value : RFLX.Ethernet.Address; - when F_Source => - Source_Value : RFLX.Ethernet.Address; - when F_Type_Length_TPID => - Type_Length_TPID_Value : RFLX.Ethernet.Type_Length_Base; - when F_TPID => - TPID_Value : RFLX.Ethernet.TPID_Base; - when F_TCI => - TCI_Value : RFLX.Ethernet.TCI; - when F_Type_Length => - Type_Length_Value : RFLX.Ethernet.Type_Length_Base; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value; Size : Types.Bit_Length := 0) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean with - Pre => - Has_Buffer (Ctx) - and Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - function Get_Destination (Ctx : Context) return RFLX.Ethernet.Address with - Pre => - Valid (Ctx, F_Destination); - - function Get_Source (Ctx : Context) return RFLX.Ethernet.Address with - Pre => - Valid (Ctx, F_Source); - - function Get_Type_Length_TPID (Ctx : Context) return RFLX.Ethernet.Type_Length with - Pre => - Valid (Ctx, F_Type_Length_TPID); - - function Get_TPID (Ctx : Context) return RFLX.Ethernet.TPID with - Pre => - Valid (Ctx, F_TPID); - - function Get_TCI (Ctx : Context) return RFLX.Ethernet.TCI with - Pre => - Valid (Ctx, F_TCI); - - function Get_Type_Length (Ctx : Context) return RFLX.Ethernet.Type_Length with - Pre => - Valid (Ctx, F_Type_Length); - - pragma Warnings (On, "precondition is always False"); - - generic - with procedure Process_Payload (Payload : Types.Bytes); - procedure Get_Payload (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Payload); - - procedure Set_Destination (Ctx : in out Context; Val : RFLX.Ethernet.Address) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Destination) - and then Field_Condition (Ctx, (F_Destination, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Destination) >= Field_Size (Ctx, F_Destination), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Destination) - and Get_Destination (Ctx) = Val - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Type_Length_TPID) - and Invalid (Ctx, F_TPID) - and Invalid (Ctx, F_TCI) - and Invalid (Ctx, F_Type_Length) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Source) = F_Destination - and Valid_Next (Ctx, F_Source)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Destination) = Predecessor (Ctx, F_Destination)'Old - and Valid_Next (Ctx, F_Destination) = Valid_Next (Ctx, F_Destination)'Old; - - procedure Set_Source (Ctx : in out Context; Val : RFLX.Ethernet.Address) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Source) - and then Field_Condition (Ctx, (F_Source, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Source) >= Field_Size (Ctx, F_Source), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Source) - and Get_Source (Ctx) = Val - and Invalid (Ctx, F_Type_Length_TPID) - and Invalid (Ctx, F_TPID) - and Invalid (Ctx, F_TCI) - and Invalid (Ctx, F_Type_Length) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Type_Length_TPID) = F_Source - and Valid_Next (Ctx, F_Type_Length_TPID)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Source) = Predecessor (Ctx, F_Source)'Old - and Valid_Next (Ctx, F_Source) = Valid_Next (Ctx, F_Source)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old - and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old; - - procedure Set_Type_Length_TPID (Ctx : in out Context; Val : RFLX.Ethernet.Type_Length) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Type_Length_TPID) - and then Field_Condition (Ctx, (F_Type_Length_TPID, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Type_Length_TPID) >= Field_Size (Ctx, F_Type_Length_TPID), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Type_Length_TPID) - and Get_Type_Length_TPID (Ctx) = Val - and Invalid (Ctx, F_TPID) - and Invalid (Ctx, F_TCI) - and Invalid (Ctx, F_Type_Length) - and Invalid (Ctx, F_Payload) - and (if - Get_Type_Length_TPID (Ctx) = 16#8100# - then - Predecessor (Ctx, F_TPID) = F_Type_Length_TPID - and Valid_Next (Ctx, F_TPID)) - and (if - Get_Type_Length_TPID (Ctx) /= 16#8100# - then - Predecessor (Ctx, F_Type_Length) = F_Type_Length_TPID - and Valid_Next (Ctx, F_Type_Length)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Type_Length_TPID) = Predecessor (Ctx, F_Type_Length_TPID)'Old - and Valid_Next (Ctx, F_Type_Length_TPID) = Valid_Next (Ctx, F_Type_Length_TPID)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old - and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old; - - procedure Set_TPID (Ctx : in out Context; Val : RFLX.Ethernet.TPID) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_TPID) - and then Field_Condition (Ctx, (F_TPID, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_TPID) >= Field_Size (Ctx, F_TPID), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_TPID) - and Get_TPID (Ctx) = Val - and Invalid (Ctx, F_TCI) - and Invalid (Ctx, F_Type_Length) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_TCI) = F_TPID - and Valid_Next (Ctx, F_TCI)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_TPID) = Predecessor (Ctx, F_TPID)'Old - and Valid_Next (Ctx, F_TPID) = Valid_Next (Ctx, F_TPID)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old - and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old - and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old - and Context_Cursor (Ctx, F_Type_Length_TPID) = Context_Cursor (Ctx, F_Type_Length_TPID)'Old; - - procedure Set_TCI (Ctx : in out Context; Val : RFLX.Ethernet.TCI) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_TCI) - and then Field_Condition (Ctx, (F_TCI, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_TCI) >= Field_Size (Ctx, F_TCI), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_TCI) - and Get_TCI (Ctx) = Val - and Invalid (Ctx, F_Type_Length) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Type_Length) = F_TCI - and Valid_Next (Ctx, F_Type_Length)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_TCI) = Predecessor (Ctx, F_TCI)'Old - and Valid_Next (Ctx, F_TCI) = Valid_Next (Ctx, F_TCI)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old - and Get_TPID (Ctx) = Get_TPID (Ctx)'Old - and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old - and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old - and Context_Cursor (Ctx, F_Type_Length_TPID) = Context_Cursor (Ctx, F_Type_Length_TPID)'Old - and Context_Cursor (Ctx, F_TPID) = Context_Cursor (Ctx, F_TPID)'Old; - - procedure Set_Type_Length (Ctx : in out Context; Val : RFLX.Ethernet.Type_Length) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Type_Length) - and then Field_Condition (Ctx, (F_Type_Length, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Type_Length) >= Field_Size (Ctx, F_Type_Length), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Type_Length) - and Get_Type_Length (Ctx) = Val - and Invalid (Ctx, F_Payload) - and (if - Get_Type_Length (Ctx) <= 1500 - then - Predecessor (Ctx, F_Payload) = F_Type_Length - and Valid_Next (Ctx, F_Payload)) - and (if - Get_Type_Length (Ctx) >= 1536 - then - Predecessor (Ctx, F_Payload) = F_Type_Length - and Valid_Next (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Type_Length) = Predecessor (Ctx, F_Type_Length)'Old - and Valid_Next (Ctx, F_Type_Length) = Valid_Next (Ctx, F_Type_Length)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old - and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old - and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old - and Context_Cursor (Ctx, F_Type_Length_TPID) = Context_Cursor (Ctx, F_Type_Length_TPID)'Old - and Context_Cursor (Ctx, F_TPID) = Context_Cursor (Ctx, F_TPID)'Old - and Context_Cursor (Ctx, F_TCI) = Context_Cursor (Ctx, F_TCI)'Old; - - procedure Initialize_Payload (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old - and Get_Type_Length (Ctx) = Get_Type_Length (Ctx)'Old; - - procedure Set_Payload (Ctx : in out Context; Value : Types.Bytes) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Value'Length = Types.Byte_Index (Field_Last (Ctx, F_Payload)) - Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old - and Get_Type_Length (Ctx) = Get_Type_Length (Ctx)'Old; - - generic - with procedure Process_Payload (Payload : out Types.Bytes); - with function Valid_Length (Length : Types.Length) return Boolean; - procedure Generic_Set_Payload (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Valid_Length (Types.Length (Field_Size (Ctx, F_Payload) / Types.Byte'Size)), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old - and Get_Type_Length (Ctx) = Get_Type_Length (Ctx)'Old; - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Destination => - Valid (Val.Destination_Value), - when F_Source => - Valid (Val.Source_Value), - when F_Type_Length_TPID => - Valid (Val.Type_Length_TPID_Value), - when F_TPID => - Valid (Val.TPID_Value), - when F_TCI => - Valid (Val.TCI_Value), - when F_Type_Length => - Valid (Val.Type_Length_Value), - when F_Payload => - True, - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then ((if - Structural_Valid (Cursors (F_Source)) - then - (Valid (Cursors (F_Destination)) - and then Cursors (F_Source).Predecessor = F_Destination)) - and then (if - Structural_Valid (Cursors (F_Type_Length_TPID)) - then - (Valid (Cursors (F_Source)) - and then Cursors (F_Type_Length_TPID).Predecessor = F_Source)) - and then (if - Structural_Valid (Cursors (F_TPID)) - then - (Valid (Cursors (F_Type_Length_TPID)) - and then Cursors (F_TPID).Predecessor = F_Type_Length_TPID - and then Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100#)) - and then (if - Structural_Valid (Cursors (F_TCI)) - then - (Valid (Cursors (F_TPID)) - and then Cursors (F_TCI).Predecessor = F_TPID)) - and then (if - Structural_Valid (Cursors (F_Type_Length)) - then - (Valid (Cursors (F_TCI)) - and then Cursors (F_Type_Length).Predecessor = F_TCI) - or (Valid (Cursors (F_Type_Length_TPID)) - and then Cursors (F_Type_Length).Predecessor = F_Type_Length_TPID - and then Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100#)) - and then (if - Structural_Valid (Cursors (F_Payload)) - then - (Valid (Cursors (F_Type_Length)) - and then Cursors (F_Payload).Predecessor = F_Type_Length - and then Cursors (F_Type_Length).Value.Type_Length_Value <= 1500) - or (Valid (Cursors (F_Type_Length)) - and then Cursors (F_Payload).Predecessor = F_Type_Length - and then Cursors (F_Type_Length).Value.Type_Length_Value >= 1536))) - and then ((if - Invalid (Cursors (F_Destination)) - then - Invalid (Cursors (F_Source))) - and then (if - Invalid (Cursors (F_Source)) - then - Invalid (Cursors (F_Type_Length_TPID))) - and then (if - Invalid (Cursors (F_Type_Length_TPID)) - then - Invalid (Cursors (F_TPID))) - and then (if - Invalid (Cursors (F_TPID)) - then - Invalid (Cursors (F_TCI))) - and then (if - Invalid (Cursors (F_TCI)) - and then Invalid (Cursors (F_Type_Length_TPID)) - then - Invalid (Cursors (F_Type_Length))) - and then (if - Invalid (Cursors (F_Type_Length)) - then - Invalid (Cursors (F_Payload)))) - and then (if - Structural_Valid (Cursors (F_Destination)) - then - Cursors (F_Destination).Last - Cursors (F_Destination).First + 1 = RFLX.Ethernet.Address'Size - and then Cursors (F_Destination).Predecessor = F_Initial - and then Cursors (F_Destination).First = First - and then (if - Structural_Valid (Cursors (F_Source)) - then - Cursors (F_Source).Last - Cursors (F_Source).First + 1 = RFLX.Ethernet.Address'Size - and then Cursors (F_Source).Predecessor = F_Destination - and then Cursors (F_Source).First = Cursors (F_Destination).Last + 1 - and then (if - Structural_Valid (Cursors (F_Type_Length_TPID)) - then - Cursors (F_Type_Length_TPID).Last - Cursors (F_Type_Length_TPID).First + 1 = RFLX.Ethernet.Type_Length_Base'Size - and then Cursors (F_Type_Length_TPID).Predecessor = F_Source - and then Cursors (F_Type_Length_TPID).First = Cursors (F_Source).Last + 1 - and then (if - Structural_Valid (Cursors (F_TPID)) - and then Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100# - then - Cursors (F_TPID).Last - Cursors (F_TPID).First + 1 = RFLX.Ethernet.TPID_Base'Size - and then Cursors (F_TPID).Predecessor = F_Type_Length_TPID - and then Cursors (F_TPID).First = Types.Bit_Index (Cursors (F_Type_Length_TPID).First) - and then (if - Structural_Valid (Cursors (F_TCI)) - then - Cursors (F_TCI).Last - Cursors (F_TCI).First + 1 = RFLX.Ethernet.TCI'Size - and then Cursors (F_TCI).Predecessor = F_TPID - and then Cursors (F_TCI).First = Cursors (F_TPID).Last + 1 - and then (if - Structural_Valid (Cursors (F_Type_Length)) - then - Cursors (F_Type_Length).Last - Cursors (F_Type_Length).First + 1 = RFLX.Ethernet.Type_Length_Base'Size - and then Cursors (F_Type_Length).Predecessor = F_TCI - and then Cursors (F_Type_Length).First = Cursors (F_TCI).Last + 1 - and then (if - Structural_Valid (Cursors (F_Payload)) - and then Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - then - Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = Types.Bit_Length (Cursors (F_Type_Length).Value.Type_Length_Value) * 8 - and then Cursors (F_Payload).Predecessor = F_Type_Length - and then Cursors (F_Payload).First = Cursors (F_Type_Length).Last + 1) - and then (if - Structural_Valid (Cursors (F_Payload)) - and then Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - then - Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = Types.Bit_Length (Last) - Types.Bit_Length (Cursors (F_Type_Length).Last) - and then Cursors (F_Payload).Predecessor = F_Type_Length - and then Cursors (F_Payload).First = Cursors (F_Type_Length).Last + 1)))) - and then (if - Structural_Valid (Cursors (F_Type_Length)) - and then Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100# - then - Cursors (F_Type_Length).Last - Cursors (F_Type_Length).First + 1 = RFLX.Ethernet.Type_Length_Base'Size - and then Cursors (F_Type_Length).Predecessor = F_Type_Length_TPID - and then Cursors (F_Type_Length).First = Types.Bit_Index (Cursors (F_Type_Length_TPID).First) - and then (if - Structural_Valid (Cursors (F_Payload)) - and then Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - then - Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = Types.Bit_Length (Cursors (F_Type_Length).Value.Type_Length_Value) * 8 - and then Cursors (F_Payload).Predecessor = F_Type_Length - and then Cursors (F_Payload).First = Cursors (F_Type_Length).Last + 1) - and then (if - Structural_Valid (Cursors (F_Payload)) - and then Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - then - Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = Types.Bit_Length (Last) - Types.Bit_Length (Cursors (F_Type_Length).Last) - and then Cursors (F_Payload).Predecessor = F_Type_Length - and then Cursors (F_Payload).First = Cursors (F_Type_Length).Last + 1)))))); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Destination) - and then Field_First (Ctx, F_Destination) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Destination) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Destination) - and then Invalid (Ctx, F_Source) - and then Invalid (Ctx, F_Type_Length_TPID) - and then Invalid (Ctx, F_TPID) - and then Invalid (Ctx, F_TCI) - and then Invalid (Ctx, F_Type_Length) - and then Invalid (Ctx, F_Payload)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Destination => - True, - when others => - False), - when F_Destination => - (case Fld is - when F_Source => - True, - when others => - False), - when F_Source => - (case Fld is - when F_Type_Length_TPID => - True, - when others => - False), - when F_Type_Length_TPID => - (case Fld is - when F_TPID => - Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100#, - when F_Type_Length => - Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100#, - when others => - False), - when F_TPID => - (case Fld is - when F_TCI => - True, - when others => - False), - when F_TCI => - (case Fld is - when F_Type_Length => - True, - when others => - False), - when F_Type_Length => - (case Fld is - when F_Payload => - Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - or Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536, - when others => - False), - when F_Payload | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value; Size : Types.Bit_Length := 0) return Boolean is - ((case Val.Fld is - when F_Initial | F_Destination | F_Source => - True, - when F_Type_Length_TPID => - Types.U64 (Val.Type_Length_TPID_Value) = 16#8100# - or Types.U64 (Val.Type_Length_TPID_Value) /= 16#8100#, - when F_TPID | F_TCI => - True, - when F_Type_Length => - Types.U64 (Val.Type_Length_Value) <= 1500 - or Types.U64 (Val.Type_Length_Value) >= 1536, - when F_Payload => - Types.U64 (Size) / 8 >= 46 - and Types.U64 (Size) / 8 <= 1500, - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Destination => - RFLX.Ethernet.Address'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Destination => - (case Fld is - when F_Source => - RFLX.Ethernet.Address'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Source => - (case Fld is - when F_Type_Length_TPID => - RFLX.Ethernet.Type_Length_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Type_Length_TPID => - (case Fld is - when F_TPID => - RFLX.Ethernet.TPID_Base'Size, - when F_Type_Length => - RFLX.Ethernet.Type_Length_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_TPID => - (case Fld is - when F_TCI => - RFLX.Ethernet.TCI'Size, - when others => - Types.Unreachable_Bit_Length), - when F_TCI => - (case Fld is - when F_Type_Length => - RFLX.Ethernet.Type_Length_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Type_Length => - (case Fld is - when F_Payload => - (if - Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - then - Types.Bit_Length (Ctx.Cursors (F_Type_Length).Value.Type_Length_Value) * 8 - elsif - Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - then - Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Type_Length).Last) - else - Types.Unreachable_Bit_Length), - when others => - Types.Unreachable_Bit_Length), - when F_Payload | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Destination => - Ctx.First, - when F_Source => - (if - Ctx.Cursors (Fld).Predecessor = F_Destination - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Type_Length_TPID => - (if - Ctx.Cursors (Fld).Predecessor = F_Source - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_TPID => - (if - Ctx.Cursors (Fld).Predecessor = F_Type_Length_TPID - and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100# - then - Ctx.Cursors (F_Type_Length_TPID).First - else - Types.Unreachable_Bit_Length), - when F_TCI => - (if - Ctx.Cursors (Fld).Predecessor = F_TPID - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Type_Length => - (if - Ctx.Cursors (Fld).Predecessor = F_TCI - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - elsif - Ctx.Cursors (Fld).Predecessor = F_Type_Length_TPID - and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100# - then - Ctx.Cursors (F_Type_Length_TPID).First - else - Types.Unreachable_Bit_Length), - when F_Payload => - (if - Ctx.Cursors (Fld).Predecessor = F_Type_Length - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - elsif - Ctx.Cursors (Fld).Predecessor = F_Type_Length - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length))); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Destination => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_Source => - (Valid (Ctx.Cursors (F_Destination)) - and Ctx.Cursors (Fld).Predecessor = F_Destination), - when F_Type_Length_TPID => - (Valid (Ctx.Cursors (F_Source)) - and Ctx.Cursors (Fld).Predecessor = F_Source), - when F_TPID => - (Valid (Ctx.Cursors (F_Type_Length_TPID)) - and Ctx.Cursors (Fld).Predecessor = F_Type_Length_TPID), - when F_TCI => - (Valid (Ctx.Cursors (F_TPID)) - and Ctx.Cursors (Fld).Predecessor = F_TPID), - when F_Type_Length => - (Valid (Ctx.Cursors (F_TCI)) - and Ctx.Cursors (Fld).Predecessor = F_TCI) - or (Valid (Ctx.Cursors (F_Type_Length_TPID)) - and Ctx.Cursors (Fld).Predecessor = F_Type_Length_TPID), - when F_Payload => - (Valid (Ctx.Cursors (F_Type_Length)) - and Ctx.Cursors (Fld).Predecessor = F_Type_Length), - when F_Final => - (Structural_Valid (Ctx.Cursors (F_Payload)) - and Ctx.Cursors (Fld).Predecessor = F_Payload))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Destination) - and then Valid (Ctx, F_Source) - and then Valid (Ctx, F_Type_Length_TPID) - and then ((Valid (Ctx, F_TPID) - and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100# - and then Valid (Ctx, F_TCI) - and then Valid (Ctx, F_Type_Length) - and then ((Structural_Valid (Ctx, F_Payload) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - and then (Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 - and Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)) - or (Structural_Valid (Ctx, F_Payload) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - and then (Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 - and Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)))) - or (Valid (Ctx, F_Type_Length) - and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100# - and then ((Structural_Valid (Ctx, F_Payload) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - and then (Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 - and Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)) - or (Structural_Valid (Ctx, F_Payload) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - and then (Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 - and Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)))))); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Destination) - and then Valid (Ctx, F_Source) - and then Valid (Ctx, F_Type_Length_TPID) - and then ((Valid (Ctx, F_TPID) - and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value = 16#8100# - and then Valid (Ctx, F_TCI) - and then Valid (Ctx, F_Type_Length) - and then ((Valid (Ctx, F_Payload) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - and then (Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 - and Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)) - or (Valid (Ctx, F_Payload) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - and then (Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 - and Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)))) - or (Valid (Ctx, F_Type_Length) - and then Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value /= 16#8100# - and then ((Valid (Ctx, F_Payload) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value <= 1500 - and then (Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 - and Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)) - or (Valid (Ctx, F_Payload) - and then Ctx.Cursors (F_Type_Length).Value.Type_Length_Value >= 1536 - and then (Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 >= 46 - and Types.U64 (Ctx.Cursors (F_Payload).Last - Ctx.Cursors (F_Payload).First + 1) / 8 <= 1500)))))); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Destination) - or Incomplete (Ctx, F_Source) - or Incomplete (Ctx, F_Type_Length_TPID) - or Incomplete (Ctx, F_TPID) - or Incomplete (Ctx, F_TCI) - or Incomplete (Ctx, F_Type_Length) - or Incomplete (Ctx, F_Payload)); - - function Get_Destination (Ctx : Context) return RFLX.Ethernet.Address is - (To_Actual (Ctx.Cursors (F_Destination).Value.Destination_Value)); - - function Get_Source (Ctx : Context) return RFLX.Ethernet.Address is - (To_Actual (Ctx.Cursors (F_Source).Value.Source_Value)); - - function Get_Type_Length_TPID (Ctx : Context) return RFLX.Ethernet.Type_Length is - (To_Actual (Ctx.Cursors (F_Type_Length_TPID).Value.Type_Length_TPID_Value)); - - function Get_TPID (Ctx : Context) return RFLX.Ethernet.TPID is - (To_Actual (Ctx.Cursors (F_TPID).Value.TPID_Value)); - - function Get_TCI (Ctx : Context) return RFLX.Ethernet.TCI is - (To_Actual (Ctx.Cursors (F_TCI).Value.TCI_Value)); - - function Get_Type_Length (Ctx : Context) return RFLX.Ethernet.Type_Length is - (To_Actual (Ctx.Cursors (F_Type_Length).Value.Type_Length_Value)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.Ethernet.Generic_Frame; diff --git a/tests/spark/generated/rflx-expression-generic_message.ads b/tests/spark/generated/rflx-expression-generic_message.ads deleted file mode 100644 index e907d3b89..000000000 --- a/tests/spark/generated/rflx-expression-generic_message.ads +++ /dev/null @@ -1,524 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); -package RFLX.Expression.Generic_Message with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes, Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Payload, F_Final); - - subtype Field is Virtual_Field range F_Payload .. F_Payload; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Payload | F_Final => - null; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean with - Pre => - Has_Buffer (Ctx) - and Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - pragma Warnings (On, "precondition is always False"); - - generic - with procedure Process_Payload (Payload : Types.Bytes); - procedure Get_Payload (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Payload); - - procedure Initialize_Payload (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old; - - procedure Set_Payload (Ctx : in out Context; Value : Types.Bytes) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Value'Length = Types.Byte_Index (Field_Last (Ctx, F_Payload)) - Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old; - - generic - with procedure Process_Payload (Payload : out Types.Bytes); - with function Valid_Length (Length : Types.Length) return Boolean; - procedure Generic_Set_Payload (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Valid_Length (Types.Length (Field_Size (Ctx, F_Payload) / Types.Byte'Size)), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old; - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Payload => - True, - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then (True) - and then (True) - and then (if - Structural_Valid (Cursors (F_Payload)) - then - Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = 16 - and then Cursors (F_Payload).Predecessor = F_Initial - and then Cursors (F_Payload).First = First)); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Payload) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Payload)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Payload => - True), - when F_Payload | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Initial => - True, - when F_Payload => - Equal (Ctx, F_Payload, (Types.Byte'Val (1), Types.Byte'Val (2))), - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Payload => - 16), - when F_Payload | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Payload => - Ctx.First)); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Payload => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_Final => - (Structural_Valid (Ctx.Cursors (F_Payload)) - and Ctx.Cursors (Fld).Predecessor = F_Payload))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Structural_Valid (Ctx, F_Payload) - and then Equal (Ctx, F_Payload, (Types.Byte'Val (1), Types.Byte'Val (2)))); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Payload) - and then Equal (Ctx, F_Payload, (Types.Byte'Val (1), Types.Byte'Val (2)))); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Payload)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.Expression.Generic_Message; diff --git a/tests/spark/generated/rflx-expression-generic_message.adb b/tests/spark/generated/rflx-expression-message.adb similarity index 67% rename from tests/spark/generated/rflx-expression-generic_message.adb rename to tests/spark/generated/rflx-expression-message.adb index 9873231bd..fd97d4733 100644 --- a/tests/spark/generated/rflx-expression-generic_message.adb +++ b/tests/spark/generated/rflx-expression-message.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.Expression.Generic_Message with +package body RFLX.Expression.Message with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Payload => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -64,7 +64,7 @@ is ((case Fld is when F_Payload => (if - Equal (Ctx, F_Payload, (Types.Byte'Val (1), Types.Byte'Val (2))) + Equal (Ctx, F_Payload, (RFLX_Types.Byte'Val (1), RFLX_Types.Byte'Val (2))) then F_Final else @@ -79,8 +79,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -88,11 +87,11 @@ is Has_Buffer (Ctx) and Valid_Next (Ctx, Fld); - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean is + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Payload => - Ctx.Buffer.all (Types.Byte_Index (Field_First (Ctx, Fld)) .. Types.Byte_Index (Field_Last (Ctx, Fld))) = Data)); + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data)); procedure Reset_Dependent_Fields (Ctx : in out Context; Fld : Field) with Pre => @@ -112,9 +111,9 @@ is when F_Payload => Invalid (Ctx, F_Payload)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -156,10 +155,6 @@ is Valid_Value (Value) and Field_Condition (Ctx, Value) then - pragma Assert ((if - Fld = F_Payload - then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else @@ -177,8 +172,8 @@ is end Verify_Message; procedure Get_Payload (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); begin Process_Payload (Ctx.Buffer.all (First .. Last)); end Get_Payload; @@ -190,9 +185,9 @@ is and then Valid_Next (Ctx, F_Payload) and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0, + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0, Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -204,8 +199,8 @@ is and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; @@ -218,28 +213,28 @@ is Initialize_Payload_Private (Ctx); end Initialize_Payload; - procedure Set_Payload (Ctx : in out Context; Value : Types.Bytes) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; end Set_Payload; procedure Generic_Set_Payload (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Generic_Set_Payload; -end RFLX.Expression.Generic_Message; +end RFLX.Expression.Message; diff --git a/tests/spark/generated/rflx-expression-message.ads b/tests/spark/generated/rflx-expression-message.ads index d77b878bb..f3702b6c7 100644 --- a/tests/spark/generated/rflx-expression-message.ads +++ b/tests/spark/generated/rflx-expression-message.ads @@ -1,7 +1,530 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.Expression.Generic_Message; -package RFLX.Expression.Message is new RFLX.Expression.Generic_Message (RFLX.RFLX_Types); +package RFLX.Expression.Message with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Payload, F_Final); + + subtype Field is Virtual_Field range F_Payload .. F_Payload; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Payload | F_Final => + null; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Payload (Payload : RFLX_Types.Bytes); + procedure Get_Payload (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Payload); + + procedure Initialize_Payload (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old; + + procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Payload)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old; + + generic + with procedure Process_Payload (Payload : out RFLX_Types.Bytes); + with function Valid_Length (Length : RFLX_Types.Length) return Boolean; + procedure Generic_Set_Payload (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Valid_Length (RFLX_Types.Length (Field_Size (Ctx, F_Payload) / RFLX_Types.Byte'Size)), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old; + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Payload => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then (True) + and then (True) + and then (if + Structural_Valid (Cursors (F_Payload)) + then + Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = 16 + and then Cursors (F_Payload).Predecessor = F_Initial + and then Cursors (F_Payload).First = First)); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Payload) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Payload)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Payload => + True), + when F_Payload | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial => + True, + when F_Payload => + Equal (Ctx, F_Payload, (RFLX_Types.Byte'Val (1), RFLX_Types.Byte'Val (2))), + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Payload => + 16), + when F_Payload | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Payload => + Ctx.First)); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Payload => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Final => + (Structural_Valid (Ctx.Cursors (F_Payload)) + and Ctx.Cursors (Fld).Predecessor = F_Payload))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Structural_Valid (Ctx, F_Payload) + and then Equal (Ctx, F_Payload, (RFLX_Types.Byte'Val (1), RFLX_Types.Byte'Val (2)))); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Payload) + and then Equal (Ctx, F_Payload, (RFLX_Types.Byte'Val (1), RFLX_Types.Byte'Val (2)))); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Payload)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.Expression.Message; diff --git a/tests/spark/generated/rflx-icmp-generic_message.ads b/tests/spark/generated/rflx-icmp-generic_message.ads deleted file mode 100644 index f0d95acbd..000000000 --- a/tests/spark/generated/rflx-icmp-generic_message.ads +++ /dev/null @@ -1,2701 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); -package RFLX.ICMP.Generic_Message with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes, Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Tag, F_Code_Destination_Unreachable, F_Code_Redirect, F_Code_Time_Exceeded, F_Code_Zero, F_Checksum, F_Gateway_Internet_Address, F_Identifier, F_Pointer, F_Unused_32, F_Sequence_Number, F_Unused_24, F_Originate_Timestamp, F_Data, F_Receive_Timestamp, F_Transmit_Timestamp, F_Final); - - subtype Field is Virtual_Field range F_Tag .. F_Transmit_Timestamp; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Data | F_Final => - null; - when F_Tag => - Tag_Value : RFLX.ICMP.Tag_Base; - when F_Code_Destination_Unreachable => - Code_Destination_Unreachable_Value : RFLX.ICMP.Code_Destination_Unreachable_Base; - when F_Code_Redirect => - Code_Redirect_Value : RFLX.ICMP.Code_Redirect_Base; - when F_Code_Time_Exceeded => - Code_Time_Exceeded_Value : RFLX.ICMP.Code_Time_Exceeded_Base; - when F_Code_Zero => - Code_Zero_Value : RFLX.ICMP.Code_Zero_Base; - when F_Checksum => - Checksum_Value : RFLX.ICMP.Checksum; - when F_Gateway_Internet_Address => - Gateway_Internet_Address_Value : RFLX.ICMP.Gateway_Internet_Address; - when F_Identifier => - Identifier_Value : RFLX.ICMP.Identifier; - when F_Pointer => - Pointer_Value : RFLX.ICMP.Pointer; - when F_Unused_32 => - Unused_32_Value : RFLX.ICMP.Unused_32_Base; - when F_Sequence_Number => - Sequence_Number_Value : RFLX.ICMP.Sequence_Number; - when F_Unused_24 => - Unused_24_Value : RFLX.ICMP.Unused_24_Base; - when F_Originate_Timestamp => - Originate_Timestamp_Value : RFLX.ICMP.Timestamp; - when F_Receive_Timestamp => - Receive_Timestamp_Value : RFLX.ICMP.Timestamp; - when F_Transmit_Timestamp => - Transmit_Timestamp_Value : RFLX.ICMP.Timestamp; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean with - Pre => - Has_Buffer (Ctx) - and Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - function Get_Tag (Ctx : Context) return RFLX.ICMP.Tag with - Pre => - Valid (Ctx, F_Tag); - - function Get_Code_Destination_Unreachable (Ctx : Context) return RFLX.ICMP.Code_Destination_Unreachable with - Pre => - Valid (Ctx, F_Code_Destination_Unreachable); - - function Get_Code_Redirect (Ctx : Context) return RFLX.ICMP.Code_Redirect with - Pre => - Valid (Ctx, F_Code_Redirect); - - function Get_Code_Time_Exceeded (Ctx : Context) return RFLX.ICMP.Code_Time_Exceeded with - Pre => - Valid (Ctx, F_Code_Time_Exceeded); - - function Get_Code_Zero (Ctx : Context) return RFLX.ICMP.Code_Zero with - Pre => - Valid (Ctx, F_Code_Zero); - - function Get_Checksum (Ctx : Context) return RFLX.ICMP.Checksum with - Pre => - Valid (Ctx, F_Checksum); - - function Get_Gateway_Internet_Address (Ctx : Context) return RFLX.ICMP.Gateway_Internet_Address with - Pre => - Valid (Ctx, F_Gateway_Internet_Address); - - function Get_Identifier (Ctx : Context) return RFLX.ICMP.Identifier with - Pre => - Valid (Ctx, F_Identifier); - - function Get_Pointer (Ctx : Context) return RFLX.ICMP.Pointer with - Pre => - Valid (Ctx, F_Pointer); - - function Get_Unused_32 (Ctx : Context) return RFLX.ICMP.Unused_32 with - Pre => - Valid (Ctx, F_Unused_32); - - function Get_Sequence_Number (Ctx : Context) return RFLX.ICMP.Sequence_Number with - Pre => - Valid (Ctx, F_Sequence_Number); - - function Get_Unused_24 (Ctx : Context) return RFLX.ICMP.Unused_24 with - Pre => - Valid (Ctx, F_Unused_24); - - function Get_Originate_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp with - Pre => - Valid (Ctx, F_Originate_Timestamp); - - function Get_Receive_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp with - Pre => - Valid (Ctx, F_Receive_Timestamp); - - function Get_Transmit_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp with - Pre => - Valid (Ctx, F_Transmit_Timestamp); - - pragma Warnings (On, "precondition is always False"); - - generic - with procedure Process_Data (Data : Types.Bytes); - procedure Get_Data (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Data); - - procedure Set_Tag (Ctx : in out Context; Val : RFLX.ICMP.Tag) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Tag) - and then Field_Condition (Ctx, (F_Tag, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Tag) >= Field_Size (Ctx, F_Tag), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Tag) - and Get_Tag (Ctx) = Val - and Invalid (Ctx, F_Code_Destination_Unreachable) - and Invalid (Ctx, F_Code_Redirect) - and Invalid (Ctx, F_Code_Time_Exceeded) - and Invalid (Ctx, F_Code_Zero) - and Invalid (Ctx, F_Checksum) - and Invalid (Ctx, F_Gateway_Internet_Address) - and Invalid (Ctx, F_Identifier) - and Invalid (Ctx, F_Pointer) - and Invalid (Ctx, F_Unused_32) - and Invalid (Ctx, F_Sequence_Number) - and Invalid (Ctx, F_Unused_24) - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (if - Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Destination_Unreachable)) - then - Predecessor (Ctx, F_Code_Destination_Unreachable) = F_Tag - and Valid_Next (Ctx, F_Code_Destination_Unreachable)) - and (if - Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Redirect)) - then - Predecessor (Ctx, F_Code_Redirect) = F_Tag - and Valid_Next (Ctx, F_Code_Redirect)) - and (if - Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Time_Exceeded)) - then - Predecessor (Ctx, F_Code_Time_Exceeded) = F_Tag - and Valid_Next (Ctx, F_Code_Time_Exceeded)) - and (if - Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Source_Quench)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Echo_Request)) - then - Predecessor (Ctx, F_Code_Zero) = F_Tag - and Valid_Next (Ctx, F_Code_Zero)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Tag) = Predecessor (Ctx, F_Tag)'Old - and Valid_Next (Ctx, F_Tag) = Valid_Next (Ctx, F_Tag)'Old; - - procedure Set_Code_Destination_Unreachable (Ctx : in out Context; Val : RFLX.ICMP.Code_Destination_Unreachable) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Code_Destination_Unreachable) - and then Field_Condition (Ctx, (F_Code_Destination_Unreachable, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Code_Destination_Unreachable) >= Field_Size (Ctx, F_Code_Destination_Unreachable), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Code_Destination_Unreachable) - and Get_Code_Destination_Unreachable (Ctx) = Val - and Invalid (Ctx, F_Code_Redirect) - and Invalid (Ctx, F_Code_Time_Exceeded) - and Invalid (Ctx, F_Code_Zero) - and Invalid (Ctx, F_Checksum) - and Invalid (Ctx, F_Gateway_Internet_Address) - and Invalid (Ctx, F_Identifier) - and Invalid (Ctx, F_Pointer) - and Invalid (Ctx, F_Unused_32) - and Invalid (Ctx, F_Sequence_Number) - and Invalid (Ctx, F_Unused_24) - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (Predecessor (Ctx, F_Checksum) = F_Code_Destination_Unreachable - and Valid_Next (Ctx, F_Checksum)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Code_Destination_Unreachable) = Predecessor (Ctx, F_Code_Destination_Unreachable)'Old - and Valid_Next (Ctx, F_Code_Destination_Unreachable) = Valid_Next (Ctx, F_Code_Destination_Unreachable)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old; - - procedure Set_Code_Redirect (Ctx : in out Context; Val : RFLX.ICMP.Code_Redirect) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Code_Redirect) - and then Field_Condition (Ctx, (F_Code_Redirect, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Code_Redirect) >= Field_Size (Ctx, F_Code_Redirect), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Code_Redirect) - and Get_Code_Redirect (Ctx) = Val - and Invalid (Ctx, F_Code_Time_Exceeded) - and Invalid (Ctx, F_Code_Zero) - and Invalid (Ctx, F_Checksum) - and Invalid (Ctx, F_Gateway_Internet_Address) - and Invalid (Ctx, F_Identifier) - and Invalid (Ctx, F_Pointer) - and Invalid (Ctx, F_Unused_32) - and Invalid (Ctx, F_Sequence_Number) - and Invalid (Ctx, F_Unused_24) - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (Predecessor (Ctx, F_Checksum) = F_Code_Redirect - and Valid_Next (Ctx, F_Checksum)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Code_Redirect) = Predecessor (Ctx, F_Code_Redirect)'Old - and Valid_Next (Ctx, F_Code_Redirect) = Valid_Next (Ctx, F_Code_Redirect)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old; - - procedure Set_Code_Time_Exceeded (Ctx : in out Context; Val : RFLX.ICMP.Code_Time_Exceeded) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Code_Time_Exceeded) - and then Field_Condition (Ctx, (F_Code_Time_Exceeded, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Code_Time_Exceeded) >= Field_Size (Ctx, F_Code_Time_Exceeded), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Code_Time_Exceeded) - and Get_Code_Time_Exceeded (Ctx) = Val - and Invalid (Ctx, F_Code_Zero) - and Invalid (Ctx, F_Checksum) - and Invalid (Ctx, F_Gateway_Internet_Address) - and Invalid (Ctx, F_Identifier) - and Invalid (Ctx, F_Pointer) - and Invalid (Ctx, F_Unused_32) - and Invalid (Ctx, F_Sequence_Number) - and Invalid (Ctx, F_Unused_24) - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (Predecessor (Ctx, F_Checksum) = F_Code_Time_Exceeded - and Valid_Next (Ctx, F_Checksum)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Code_Time_Exceeded) = Predecessor (Ctx, F_Code_Time_Exceeded)'Old - and Valid_Next (Ctx, F_Code_Time_Exceeded) = Valid_Next (Ctx, F_Code_Time_Exceeded)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old; - - procedure Set_Code_Zero (Ctx : in out Context; Val : RFLX.ICMP.Code_Zero) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Code_Zero) - and then Field_Condition (Ctx, (F_Code_Zero, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Code_Zero) >= Field_Size (Ctx, F_Code_Zero), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Code_Zero) - and Get_Code_Zero (Ctx) = Val - and Invalid (Ctx, F_Checksum) - and Invalid (Ctx, F_Gateway_Internet_Address) - and Invalid (Ctx, F_Identifier) - and Invalid (Ctx, F_Pointer) - and Invalid (Ctx, F_Unused_32) - and Invalid (Ctx, F_Sequence_Number) - and Invalid (Ctx, F_Unused_24) - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (Predecessor (Ctx, F_Checksum) = F_Code_Zero - and Valid_Next (Ctx, F_Checksum)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Code_Zero) = Predecessor (Ctx, F_Code_Zero)'Old - and Valid_Next (Ctx, F_Code_Zero) = Valid_Next (Ctx, F_Code_Zero)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old - and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old; - - procedure Set_Checksum (Ctx : in out Context; Val : RFLX.ICMP.Checksum) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Checksum) - and then Field_Condition (Ctx, (F_Checksum, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Checksum) >= Field_Size (Ctx, F_Checksum), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Checksum) - and Get_Checksum (Ctx) = Val - and Invalid (Ctx, F_Gateway_Internet_Address) - and Invalid (Ctx, F_Identifier) - and Invalid (Ctx, F_Pointer) - and Invalid (Ctx, F_Unused_32) - and Invalid (Ctx, F_Sequence_Number) - and Invalid (Ctx, F_Unused_24) - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (if - Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Redirect)) - then - Predecessor (Ctx, F_Gateway_Internet_Address) = F_Checksum - and Valid_Next (Ctx, F_Gateway_Internet_Address)) - and (if - Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Echo_Reply)) - then - Predecessor (Ctx, F_Identifier) = F_Checksum - and Valid_Next (Ctx, F_Identifier)) - and (if - Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Parameter_Problem)) - then - Predecessor (Ctx, F_Pointer) = F_Checksum - and Valid_Next (Ctx, F_Pointer)) - and (if - Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Source_Quench)) - then - Predecessor (Ctx, F_Unused_32) = F_Checksum - and Valid_Next (Ctx, F_Unused_32)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Checksum) = Predecessor (Ctx, F_Checksum)'Old - and Valid_Next (Ctx, F_Checksum) = Valid_Next (Ctx, F_Checksum)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old - and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old - and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old; - - procedure Set_Gateway_Internet_Address (Ctx : in out Context; Val : RFLX.ICMP.Gateway_Internet_Address) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Gateway_Internet_Address) - and then Field_Condition (Ctx, (F_Gateway_Internet_Address, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Gateway_Internet_Address) >= Field_Size (Ctx, F_Gateway_Internet_Address), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Gateway_Internet_Address) - and Get_Gateway_Internet_Address (Ctx) = Val - and Invalid (Ctx, F_Identifier) - and Invalid (Ctx, F_Pointer) - and Invalid (Ctx, F_Unused_32) - and Invalid (Ctx, F_Sequence_Number) - and Invalid (Ctx, F_Unused_24) - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (Predecessor (Ctx, F_Data) = F_Gateway_Internet_Address - and Valid_Next (Ctx, F_Data)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Gateway_Internet_Address) = Predecessor (Ctx, F_Gateway_Internet_Address)'Old - and Valid_Next (Ctx, F_Gateway_Internet_Address) = Valid_Next (Ctx, F_Gateway_Internet_Address)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old - and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old - and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old - and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old; - - procedure Set_Identifier (Ctx : in out Context; Val : RFLX.ICMP.Identifier) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Identifier) - and then Field_Condition (Ctx, (F_Identifier, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Identifier) >= Field_Size (Ctx, F_Identifier), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Identifier) - and Get_Identifier (Ctx) = Val - and Invalid (Ctx, F_Pointer) - and Invalid (Ctx, F_Unused_32) - and Invalid (Ctx, F_Sequence_Number) - and Invalid (Ctx, F_Unused_24) - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (Predecessor (Ctx, F_Sequence_Number) = F_Identifier - and Valid_Next (Ctx, F_Sequence_Number)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Identifier) = Predecessor (Ctx, F_Identifier)'Old - and Valid_Next (Ctx, F_Identifier) = Valid_Next (Ctx, F_Identifier)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old - and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old - and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old - and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old - and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old; - - procedure Set_Pointer (Ctx : in out Context; Val : RFLX.ICMP.Pointer) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Pointer) - and then Field_Condition (Ctx, (F_Pointer, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Pointer) >= Field_Size (Ctx, F_Pointer), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Pointer) - and Get_Pointer (Ctx) = Val - and Invalid (Ctx, F_Unused_32) - and Invalid (Ctx, F_Sequence_Number) - and Invalid (Ctx, F_Unused_24) - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (Predecessor (Ctx, F_Unused_24) = F_Pointer - and Valid_Next (Ctx, F_Unused_24)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Pointer) = Predecessor (Ctx, F_Pointer)'Old - and Valid_Next (Ctx, F_Pointer) = Valid_Next (Ctx, F_Pointer)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old - and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old - and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old - and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old - and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old - and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old; - - procedure Set_Unused_32 (Ctx : in out Context; Val : RFLX.ICMP.Unused_32) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Unused_32) - and then Field_Condition (Ctx, (F_Unused_32, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Unused_32) >= Field_Size (Ctx, F_Unused_32), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Unused_32) - and Get_Unused_32 (Ctx) = Val - and Invalid (Ctx, F_Sequence_Number) - and Invalid (Ctx, F_Unused_24) - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (Predecessor (Ctx, F_Data) = F_Unused_32 - and Valid_Next (Ctx, F_Data)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Unused_32) = Predecessor (Ctx, F_Unused_32)'Old - and Valid_Next (Ctx, F_Unused_32) = Valid_Next (Ctx, F_Unused_32)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old - and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old - and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old - and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old - and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old - and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old - and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old; - - procedure Set_Sequence_Number (Ctx : in out Context; Val : RFLX.ICMP.Sequence_Number) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Sequence_Number) - and then Field_Condition (Ctx, (F_Sequence_Number, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Sequence_Number) >= Field_Size (Ctx, F_Sequence_Number), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Sequence_Number) - and Get_Sequence_Number (Ctx) = Val - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Sequence_Number)) - and Invalid (Ctx, F_Unused_24) - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (if - Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Echo_Request)) - then - Predecessor (Ctx, F_Data) = F_Sequence_Number - and Valid_Next (Ctx, F_Data)) - and (if - Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Timestamp_Reply)) - then - Predecessor (Ctx, F_Originate_Timestamp) = F_Sequence_Number - and Valid_Next (Ctx, F_Originate_Timestamp)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Sequence_Number) = Predecessor (Ctx, F_Sequence_Number)'Old - and Valid_Next (Ctx, F_Sequence_Number) = Valid_Next (Ctx, F_Sequence_Number)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old - and Get_Identifier (Ctx) = Get_Identifier (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old - and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old - and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old - and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old - and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old - and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old - and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old - and Context_Cursor (Ctx, F_Unused_32) = Context_Cursor (Ctx, F_Unused_32)'Old; - - procedure Set_Unused_24 (Ctx : in out Context; Val : RFLX.ICMP.Unused_24) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Unused_24) - and then Field_Condition (Ctx, (F_Unused_24, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Unused_24) >= Field_Size (Ctx, F_Unused_24), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Unused_24) - and Get_Unused_24 (Ctx) = Val - and Invalid (Ctx, F_Originate_Timestamp) - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (Predecessor (Ctx, F_Data) = F_Unused_24 - and Valid_Next (Ctx, F_Data)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Unused_24) = Predecessor (Ctx, F_Unused_24)'Old - and Valid_Next (Ctx, F_Unused_24) = Valid_Next (Ctx, F_Unused_24)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old - and Get_Pointer (Ctx) = Get_Pointer (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old - and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old - and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old - and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old - and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old - and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old - and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old - and Context_Cursor (Ctx, F_Unused_32) = Context_Cursor (Ctx, F_Unused_32)'Old - and Context_Cursor (Ctx, F_Sequence_Number) = Context_Cursor (Ctx, F_Sequence_Number)'Old; - - procedure Set_Originate_Timestamp (Ctx : in out Context; Val : RFLX.ICMP.Timestamp) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Originate_Timestamp) - and then Field_Condition (Ctx, (F_Originate_Timestamp, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Originate_Timestamp) >= Field_Size (Ctx, F_Originate_Timestamp), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Originate_Timestamp) - and Get_Originate_Timestamp (Ctx) = Val - and Invalid (Ctx, F_Data) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and (Predecessor (Ctx, F_Receive_Timestamp) = F_Originate_Timestamp - and Valid_Next (Ctx, F_Receive_Timestamp)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Originate_Timestamp) = Predecessor (Ctx, F_Originate_Timestamp)'Old - and Valid_Next (Ctx, F_Originate_Timestamp) = Valid_Next (Ctx, F_Originate_Timestamp)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old - and Get_Identifier (Ctx) = Get_Identifier (Ctx)'Old - and Get_Sequence_Number (Ctx) = Get_Sequence_Number (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old - and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old - and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old - and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old - and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old - and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old - and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old - and Context_Cursor (Ctx, F_Unused_32) = Context_Cursor (Ctx, F_Unused_32)'Old - and Context_Cursor (Ctx, F_Sequence_Number) = Context_Cursor (Ctx, F_Sequence_Number)'Old - and Context_Cursor (Ctx, F_Unused_24) = Context_Cursor (Ctx, F_Unused_24)'Old; - - procedure Set_Receive_Timestamp (Ctx : in out Context; Val : RFLX.ICMP.Timestamp) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Receive_Timestamp) - and then Field_Condition (Ctx, (F_Receive_Timestamp, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Receive_Timestamp) >= Field_Size (Ctx, F_Receive_Timestamp), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Receive_Timestamp) - and Get_Receive_Timestamp (Ctx) = Val - and Invalid (Ctx, F_Transmit_Timestamp) - and (Predecessor (Ctx, F_Transmit_Timestamp) = F_Receive_Timestamp - and Valid_Next (Ctx, F_Transmit_Timestamp)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Receive_Timestamp) = Predecessor (Ctx, F_Receive_Timestamp)'Old - and Valid_Next (Ctx, F_Receive_Timestamp) = Valid_Next (Ctx, F_Receive_Timestamp)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old - and Get_Identifier (Ctx) = Get_Identifier (Ctx)'Old - and Get_Sequence_Number (Ctx) = Get_Sequence_Number (Ctx)'Old - and Get_Originate_Timestamp (Ctx) = Get_Originate_Timestamp (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old - and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old - and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old - and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old - and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old - and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old - and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old - and Context_Cursor (Ctx, F_Unused_32) = Context_Cursor (Ctx, F_Unused_32)'Old - and Context_Cursor (Ctx, F_Sequence_Number) = Context_Cursor (Ctx, F_Sequence_Number)'Old - and Context_Cursor (Ctx, F_Unused_24) = Context_Cursor (Ctx, F_Unused_24)'Old - and Context_Cursor (Ctx, F_Originate_Timestamp) = Context_Cursor (Ctx, F_Originate_Timestamp)'Old - and Context_Cursor (Ctx, F_Data) = Context_Cursor (Ctx, F_Data)'Old; - - procedure Set_Transmit_Timestamp (Ctx : in out Context; Val : RFLX.ICMP.Timestamp) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Transmit_Timestamp) - and then Field_Condition (Ctx, (F_Transmit_Timestamp, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Transmit_Timestamp) >= Field_Size (Ctx, F_Transmit_Timestamp), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Transmit_Timestamp) - and Get_Transmit_Timestamp (Ctx) = Val - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Transmit_Timestamp)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Transmit_Timestamp) = Predecessor (Ctx, F_Transmit_Timestamp)'Old - and Valid_Next (Ctx, F_Transmit_Timestamp) = Valid_Next (Ctx, F_Transmit_Timestamp)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old - and Get_Identifier (Ctx) = Get_Identifier (Ctx)'Old - and Get_Sequence_Number (Ctx) = Get_Sequence_Number (Ctx)'Old - and Get_Originate_Timestamp (Ctx) = Get_Originate_Timestamp (Ctx)'Old - and Get_Receive_Timestamp (Ctx) = Get_Receive_Timestamp (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old - and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old - and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old - and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old - and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old - and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old - and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old - and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old - and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old - and Context_Cursor (Ctx, F_Unused_32) = Context_Cursor (Ctx, F_Unused_32)'Old - and Context_Cursor (Ctx, F_Sequence_Number) = Context_Cursor (Ctx, F_Sequence_Number)'Old - and Context_Cursor (Ctx, F_Unused_24) = Context_Cursor (Ctx, F_Unused_24)'Old - and Context_Cursor (Ctx, F_Originate_Timestamp) = Context_Cursor (Ctx, F_Originate_Timestamp)'Old - and Context_Cursor (Ctx, F_Data) = Context_Cursor (Ctx, F_Data)'Old - and Context_Cursor (Ctx, F_Receive_Timestamp) = Context_Cursor (Ctx, F_Receive_Timestamp)'Old; - - procedure Set_Data_Empty (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Data) - and then Field_Condition (Ctx, (Fld => F_Data)) - and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) - and then Field_First (Ctx, F_Data) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Data) = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Data) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Data)) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old - and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; - - procedure Initialize_Data (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Data) - and then Field_Condition (Ctx, (Fld => F_Data)) - and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) - and then Field_First (Ctx, F_Data) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Data) mod Types.Byte'Size = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Data) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Data)) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old - and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; - - procedure Set_Data (Ctx : in out Context; Value : Types.Bytes) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Data) - and then Field_Condition (Ctx, (Fld => F_Data)) - and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) - and then Field_First (Ctx, F_Data) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Data) mod Types.Byte'Size = 0 - and then Value'Length = Types.Byte_Index (Field_Last (Ctx, F_Data)) - Types.Byte_Index (Field_First (Ctx, F_Data)) + 1, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Data) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Data)) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old - and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; - - generic - with procedure Process_Data (Data : out Types.Bytes); - with function Valid_Length (Length : Types.Length) return Boolean; - procedure Generic_Set_Data (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Data) - and then Field_Condition (Ctx, (Fld => F_Data)) - and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) - and then Field_First (Ctx, F_Data) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Data) mod Types.Byte'Size = 0 - and then Valid_Length (Types.Length (Field_Size (Ctx, F_Data) / Types.Byte'Size)), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Data) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Data)) - and Invalid (Ctx, F_Receive_Timestamp) - and Invalid (Ctx, F_Transmit_Timestamp) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old - and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Tag => - Valid (Val.Tag_Value), - when F_Code_Destination_Unreachable => - Valid (Val.Code_Destination_Unreachable_Value), - when F_Code_Redirect => - Valid (Val.Code_Redirect_Value), - when F_Code_Time_Exceeded => - Valid (Val.Code_Time_Exceeded_Value), - when F_Code_Zero => - Valid (Val.Code_Zero_Value), - when F_Checksum => - Valid (Val.Checksum_Value), - when F_Gateway_Internet_Address => - Valid (Val.Gateway_Internet_Address_Value), - when F_Identifier => - Valid (Val.Identifier_Value), - when F_Pointer => - Valid (Val.Pointer_Value), - when F_Unused_32 => - Valid (Val.Unused_32_Value), - when F_Sequence_Number => - Valid (Val.Sequence_Number_Value), - when F_Unused_24 => - Valid (Val.Unused_24_Value), - when F_Originate_Timestamp => - Valid (Val.Originate_Timestamp_Value), - when F_Data => - True, - when F_Receive_Timestamp => - Valid (Val.Receive_Timestamp_Value), - when F_Transmit_Timestamp => - Valid (Val.Transmit_Timestamp_Value), - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then ((if - Structural_Valid (Cursors (F_Code_Destination_Unreachable)) - then - (Valid (Cursors (F_Tag)) - and then Cursors (F_Code_Destination_Unreachable).Predecessor = F_Tag - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)))) - and then (if - Structural_Valid (Cursors (F_Code_Redirect)) - then - (Valid (Cursors (F_Tag)) - and then Cursors (F_Code_Redirect).Predecessor = F_Tag - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)))) - and then (if - Structural_Valid (Cursors (F_Code_Time_Exceeded)) - then - (Valid (Cursors (F_Tag)) - and then Cursors (F_Code_Time_Exceeded).Predecessor = F_Tag - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)))) - and then (if - Structural_Valid (Cursors (F_Code_Zero)) - then - (Valid (Cursors (F_Tag)) - and then Cursors (F_Code_Zero).Predecessor = F_Tag - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))))) - and then (if - Structural_Valid (Cursors (F_Checksum)) - then - (Valid (Cursors (F_Code_Destination_Unreachable)) - and then Cursors (F_Checksum).Predecessor = F_Code_Destination_Unreachable) - or (Valid (Cursors (F_Code_Redirect)) - and then Cursors (F_Checksum).Predecessor = F_Code_Redirect) - or (Valid (Cursors (F_Code_Time_Exceeded)) - and then Cursors (F_Checksum).Predecessor = F_Code_Time_Exceeded) - or (Valid (Cursors (F_Code_Zero)) - and then Cursors (F_Checksum).Predecessor = F_Code_Zero)) - and then (if - Structural_Valid (Cursors (F_Gateway_Internet_Address)) - then - (Valid (Cursors (F_Checksum)) - and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)))) - and then (if - Structural_Valid (Cursors (F_Identifier)) - then - (Valid (Cursors (F_Checksum)) - and then Cursors (F_Identifier).Predecessor = F_Checksum - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))))) - and then (if - Structural_Valid (Cursors (F_Pointer)) - then - (Valid (Cursors (F_Checksum)) - and then Cursors (F_Pointer).Predecessor = F_Checksum - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)))) - and then (if - Structural_Valid (Cursors (F_Unused_32)) - then - (Valid (Cursors (F_Checksum)) - and then Cursors (F_Unused_32).Predecessor = F_Checksum - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))))) - and then (if - Structural_Valid (Cursors (F_Sequence_Number)) - then - (Valid (Cursors (F_Identifier)) - and then Cursors (F_Sequence_Number).Predecessor = F_Identifier)) - and then (if - Structural_Valid (Cursors (F_Unused_24)) - then - (Valid (Cursors (F_Pointer)) - and then Cursors (F_Unused_24).Predecessor = F_Pointer)) - and then (if - Structural_Valid (Cursors (F_Originate_Timestamp)) - then - (Valid (Cursors (F_Sequence_Number)) - and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))))) - and then (if - Structural_Valid (Cursors (F_Data)) - then - (Valid (Cursors (F_Gateway_Internet_Address)) - and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address) - or (Valid (Cursors (F_Sequence_Number)) - and then Cursors (F_Data).Predecessor = F_Sequence_Number - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)))) - or (Valid (Cursors (F_Unused_24)) - and then Cursors (F_Data).Predecessor = F_Unused_24) - or (Valid (Cursors (F_Unused_32)) - and then Cursors (F_Data).Predecessor = F_Unused_32)) - and then (if - Structural_Valid (Cursors (F_Receive_Timestamp)) - then - (Valid (Cursors (F_Originate_Timestamp)) - and then Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp)) - and then (if - Structural_Valid (Cursors (F_Transmit_Timestamp)) - then - (Valid (Cursors (F_Receive_Timestamp)) - and then Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp))) - and then ((if - Invalid (Cursors (F_Tag)) - then - Invalid (Cursors (F_Code_Destination_Unreachable))) - and then (if - Invalid (Cursors (F_Tag)) - then - Invalid (Cursors (F_Code_Redirect))) - and then (if - Invalid (Cursors (F_Tag)) - then - Invalid (Cursors (F_Code_Time_Exceeded))) - and then (if - Invalid (Cursors (F_Tag)) - then - Invalid (Cursors (F_Code_Zero))) - and then (if - Invalid (Cursors (F_Code_Destination_Unreachable)) - and then Invalid (Cursors (F_Code_Redirect)) - and then Invalid (Cursors (F_Code_Time_Exceeded)) - and then Invalid (Cursors (F_Code_Zero)) - then - Invalid (Cursors (F_Checksum))) - and then (if - Invalid (Cursors (F_Checksum)) - then - Invalid (Cursors (F_Gateway_Internet_Address))) - and then (if - Invalid (Cursors (F_Checksum)) - then - Invalid (Cursors (F_Identifier))) - and then (if - Invalid (Cursors (F_Checksum)) - then - Invalid (Cursors (F_Pointer))) - and then (if - Invalid (Cursors (F_Checksum)) - then - Invalid (Cursors (F_Unused_32))) - and then (if - Invalid (Cursors (F_Identifier)) - then - Invalid (Cursors (F_Sequence_Number))) - and then (if - Invalid (Cursors (F_Pointer)) - then - Invalid (Cursors (F_Unused_24))) - and then (if - Invalid (Cursors (F_Sequence_Number)) - then - Invalid (Cursors (F_Originate_Timestamp))) - and then (if - Invalid (Cursors (F_Gateway_Internet_Address)) - and then Invalid (Cursors (F_Sequence_Number)) - and then Invalid (Cursors (F_Unused_24)) - and then Invalid (Cursors (F_Unused_32)) - then - Invalid (Cursors (F_Data))) - and then (if - Invalid (Cursors (F_Originate_Timestamp)) - then - Invalid (Cursors (F_Receive_Timestamp))) - and then (if - Invalid (Cursors (F_Receive_Timestamp)) - then - Invalid (Cursors (F_Transmit_Timestamp)))) - and then (if - Structural_Valid (Cursors (F_Tag)) - then - Cursors (F_Tag).Last - Cursors (F_Tag).First + 1 = RFLX.ICMP.Tag_Base'Size - and then Cursors (F_Tag).Predecessor = F_Initial - and then Cursors (F_Tag).First = First - and then (if - Structural_Valid (Cursors (F_Code_Destination_Unreachable)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - then - Cursors (F_Code_Destination_Unreachable).Last - Cursors (F_Code_Destination_Unreachable).First + 1 = RFLX.ICMP.Code_Destination_Unreachable_Base'Size - and then Cursors (F_Code_Destination_Unreachable).Predecessor = F_Tag - and then Cursors (F_Code_Destination_Unreachable).First = Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Cursors (F_Checksum)) - then - Cursors (F_Checksum).Last - Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Cursors (F_Checksum).Predecessor = F_Code_Destination_Unreachable - and then Cursors (F_Checksum).First = Cursors (F_Code_Destination_Unreachable).Last + 1 - and then (if - Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Cursors (F_Gateway_Internet_Address).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Cursors (F_Identifier)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Cursors (F_Identifier).Predecessor = F_Checksum - and then Cursors (F_Identifier).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Sequence_Number)) - then - Cursors (F_Sequence_Number).Last - Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = Types.Bit_Length (Last) - Types.Bit_Length (Cursors (F_Sequence_Number).Last) - and then Cursors (F_Data).Predecessor = F_Sequence_Number - and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Cursors (F_Originate_Timestamp).First = Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Cursors (F_Receive_Timestamp)) - then - Cursors (F_Receive_Timestamp).Last - Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Cursors (F_Receive_Timestamp).First = Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Cursors (F_Transmit_Timestamp)) - then - Cursors (F_Transmit_Timestamp).Last - Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Cursors (F_Pointer)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Cursors (F_Pointer).Predecessor = F_Checksum - and then Cursors (F_Pointer).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Unused_24)) - then - Cursors (F_Unused_24).Last - Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Cursors (F_Unused_24).Predecessor = F_Pointer - and then Cursors (F_Unused_24).First = Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Unused_24 - and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Cursors (F_Unused_32)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Cursors (F_Unused_32).Predecessor = F_Checksum - and then Cursors (F_Unused_32).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Unused_32 - and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) - and then (if - Structural_Valid (Cursors (F_Code_Redirect)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Cursors (F_Code_Redirect).Last - Cursors (F_Code_Redirect).First + 1 = RFLX.ICMP.Code_Redirect_Base'Size - and then Cursors (F_Code_Redirect).Predecessor = F_Tag - and then Cursors (F_Code_Redirect).First = Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Cursors (F_Checksum)) - then - Cursors (F_Checksum).Last - Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Cursors (F_Checksum).Predecessor = F_Code_Redirect - and then Cursors (F_Checksum).First = Cursors (F_Code_Redirect).Last + 1 - and then (if - Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Cursors (F_Gateway_Internet_Address).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Cursors (F_Identifier)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Cursors (F_Identifier).Predecessor = F_Checksum - and then Cursors (F_Identifier).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Sequence_Number)) - then - Cursors (F_Sequence_Number).Last - Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = Types.Bit_Length (Last) - Types.Bit_Length (Cursors (F_Sequence_Number).Last) - and then Cursors (F_Data).Predecessor = F_Sequence_Number - and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Cursors (F_Originate_Timestamp).First = Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Cursors (F_Receive_Timestamp)) - then - Cursors (F_Receive_Timestamp).Last - Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Cursors (F_Receive_Timestamp).First = Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Cursors (F_Transmit_Timestamp)) - then - Cursors (F_Transmit_Timestamp).Last - Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Cursors (F_Pointer)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Cursors (F_Pointer).Predecessor = F_Checksum - and then Cursors (F_Pointer).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Unused_24)) - then - Cursors (F_Unused_24).Last - Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Cursors (F_Unused_24).Predecessor = F_Pointer - and then Cursors (F_Unused_24).First = Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Unused_24 - and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Cursors (F_Unused_32)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Cursors (F_Unused_32).Predecessor = F_Checksum - and then Cursors (F_Unused_32).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Unused_32 - and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) - and then (if - Structural_Valid (Cursors (F_Code_Time_Exceeded)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - then - Cursors (F_Code_Time_Exceeded).Last - Cursors (F_Code_Time_Exceeded).First + 1 = RFLX.ICMP.Code_Time_Exceeded_Base'Size - and then Cursors (F_Code_Time_Exceeded).Predecessor = F_Tag - and then Cursors (F_Code_Time_Exceeded).First = Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Cursors (F_Checksum)) - then - Cursors (F_Checksum).Last - Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Cursors (F_Checksum).Predecessor = F_Code_Time_Exceeded - and then Cursors (F_Checksum).First = Cursors (F_Code_Time_Exceeded).Last + 1 - and then (if - Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Cursors (F_Gateway_Internet_Address).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Cursors (F_Identifier)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Cursors (F_Identifier).Predecessor = F_Checksum - and then Cursors (F_Identifier).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Sequence_Number)) - then - Cursors (F_Sequence_Number).Last - Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = Types.Bit_Length (Last) - Types.Bit_Length (Cursors (F_Sequence_Number).Last) - and then Cursors (F_Data).Predecessor = F_Sequence_Number - and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Cursors (F_Originate_Timestamp).First = Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Cursors (F_Receive_Timestamp)) - then - Cursors (F_Receive_Timestamp).Last - Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Cursors (F_Receive_Timestamp).First = Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Cursors (F_Transmit_Timestamp)) - then - Cursors (F_Transmit_Timestamp).Last - Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Cursors (F_Pointer)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Cursors (F_Pointer).Predecessor = F_Checksum - and then Cursors (F_Pointer).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Unused_24)) - then - Cursors (F_Unused_24).Last - Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Cursors (F_Unused_24).Predecessor = F_Pointer - and then Cursors (F_Unused_24).First = Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Unused_24 - and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Cursors (F_Unused_32)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Cursors (F_Unused_32).Predecessor = F_Checksum - and then Cursors (F_Unused_32).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Unused_32 - and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) - and then (if - Structural_Valid (Cursors (F_Code_Zero)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Cursors (F_Code_Zero).Last - Cursors (F_Code_Zero).First + 1 = RFLX.ICMP.Code_Zero_Base'Size - and then Cursors (F_Code_Zero).Predecessor = F_Tag - and then Cursors (F_Code_Zero).First = Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Cursors (F_Checksum)) - then - Cursors (F_Checksum).Last - Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size - and then Cursors (F_Checksum).Predecessor = F_Code_Zero - and then Cursors (F_Checksum).First = Cursors (F_Code_Zero).Last + 1 - and then (if - Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size - and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then Cursors (F_Gateway_Internet_Address).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address - and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) - and then (if - Structural_Valid (Cursors (F_Identifier)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size - and then Cursors (F_Identifier).Predecessor = F_Checksum - and then Cursors (F_Identifier).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Sequence_Number)) - then - Cursors (F_Sequence_Number).Last - Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size - and then Cursors (F_Sequence_Number).Predecessor = F_Identifier - and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = Types.Bit_Length (Last) - Types.Bit_Length (Cursors (F_Sequence_Number).Last) - and then Cursors (F_Data).Predecessor = F_Sequence_Number - and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) - and then (if - Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then Cursors (F_Originate_Timestamp).First = Cursors (F_Sequence_Number).Last + 1 - and then (if - Structural_Valid (Cursors (F_Receive_Timestamp)) - then - Cursors (F_Receive_Timestamp).Last - Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp - and then Cursors (F_Receive_Timestamp).First = Cursors (F_Originate_Timestamp).Last + 1 - and then (if - Structural_Valid (Cursors (F_Transmit_Timestamp)) - then - Cursors (F_Transmit_Timestamp).Last - Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size - and then Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp - and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) - and then (if - Structural_Valid (Cursors (F_Pointer)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size - and then Cursors (F_Pointer).Predecessor = F_Checksum - and then Cursors (F_Pointer).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Unused_24)) - then - Cursors (F_Unused_24).Last - Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size - and then Cursors (F_Unused_24).Predecessor = F_Pointer - and then Cursors (F_Unused_24).First = Cursors (F_Pointer).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Unused_24 - and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) - and then (if - Structural_Valid (Cursors (F_Unused_32)) - and then (Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size - and then Cursors (F_Unused_32).Predecessor = F_Checksum - and then Cursors (F_Unused_32).First = Cursors (F_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Data)) - then - Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 - and then Cursors (F_Data).Predecessor = F_Unused_32 - and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))))); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Tag) - and then Field_First (Ctx, F_Tag) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Tag) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Tag) - and then Invalid (Ctx, F_Code_Destination_Unreachable) - and then Invalid (Ctx, F_Code_Redirect) - and then Invalid (Ctx, F_Code_Time_Exceeded) - and then Invalid (Ctx, F_Code_Zero) - and then Invalid (Ctx, F_Checksum) - and then Invalid (Ctx, F_Gateway_Internet_Address) - and then Invalid (Ctx, F_Identifier) - and then Invalid (Ctx, F_Pointer) - and then Invalid (Ctx, F_Unused_32) - and then Invalid (Ctx, F_Sequence_Number) - and then Invalid (Ctx, F_Unused_24) - and then Invalid (Ctx, F_Originate_Timestamp) - and then Invalid (Ctx, F_Data) - and then Invalid (Ctx, F_Receive_Timestamp) - and then Invalid (Ctx, F_Transmit_Timestamp)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Tag => - True, - when others => - False), - when F_Tag => - (case Fld is - when F_Code_Destination_Unreachable => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)), - when F_Code_Redirect => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)), - when F_Code_Time_Exceeded => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)), - when F_Code_Zero => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)), - when others => - False), - when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => - (case Fld is - when F_Checksum => - True, - when others => - False), - when F_Checksum => - (case Fld is - when F_Gateway_Internet_Address => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)), - when F_Identifier => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)), - when F_Pointer => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)), - when F_Unused_32 => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)), - when others => - False), - when F_Gateway_Internet_Address => - (case Fld is - when F_Data => - True, - when others => - False), - when F_Identifier => - (case Fld is - when F_Sequence_Number => - True, - when others => - False), - when F_Pointer => - (case Fld is - when F_Unused_24 => - True, - when others => - False), - when F_Unused_32 => - (case Fld is - when F_Data => - True, - when others => - False), - when F_Sequence_Number => - (case Fld is - when F_Data => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)), - when F_Originate_Timestamp => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)), - when others => - False), - when F_Unused_24 => - (case Fld is - when F_Data => - True, - when others => - False), - when F_Originate_Timestamp => - (case Fld is - when F_Receive_Timestamp => - True, - when others => - False), - when F_Data => - False, - when F_Receive_Timestamp => - (case Fld is - when F_Transmit_Timestamp => - True, - when others => - False), - when F_Transmit_Timestamp | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Initial => - True, - when F_Tag => - Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Redirect)) - or Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Source_Quench)) - or Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Echo_Request)), - when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => - True, - when F_Checksum => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)), - when F_Gateway_Internet_Address | F_Identifier | F_Pointer | F_Unused_32 => - True, - when F_Sequence_Number => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)), - when F_Unused_24 | F_Originate_Timestamp | F_Data | F_Receive_Timestamp | F_Transmit_Timestamp => - True, - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Tag => - RFLX.ICMP.Tag_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Tag => - (case Fld is - when F_Code_Destination_Unreachable => - RFLX.ICMP.Code_Destination_Unreachable_Base'Size, - when F_Code_Redirect => - RFLX.ICMP.Code_Redirect_Base'Size, - when F_Code_Time_Exceeded => - RFLX.ICMP.Code_Time_Exceeded_Base'Size, - when F_Code_Zero => - RFLX.ICMP.Code_Zero_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => - (case Fld is - when F_Checksum => - RFLX.ICMP.Checksum'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Checksum => - (case Fld is - when F_Gateway_Internet_Address => - RFLX.ICMP.Gateway_Internet_Address'Size, - when F_Identifier => - RFLX.ICMP.Identifier'Size, - when F_Pointer => - RFLX.ICMP.Pointer'Size, - when F_Unused_32 => - RFLX.ICMP.Unused_32_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Gateway_Internet_Address => - (case Fld is - when F_Data => - 224, - when others => - Types.Unreachable_Bit_Length), - when F_Identifier => - (case Fld is - when F_Sequence_Number => - RFLX.ICMP.Sequence_Number'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Pointer => - (case Fld is - when F_Unused_24 => - RFLX.ICMP.Unused_24_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Unused_32 => - (case Fld is - when F_Data => - 224, - when others => - Types.Unreachable_Bit_Length), - when F_Sequence_Number => - (case Fld is - when F_Data => - Types.Bit_Length (Ctx.Last) - Types.Bit_Length (Ctx.Cursors (F_Sequence_Number).Last), - when F_Originate_Timestamp => - RFLX.ICMP.Timestamp'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Unused_24 => - (case Fld is - when F_Data => - 224, - when others => - Types.Unreachable_Bit_Length), - when F_Originate_Timestamp => - (case Fld is - when F_Receive_Timestamp => - RFLX.ICMP.Timestamp'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Data => - 0, - when F_Receive_Timestamp => - (case Fld is - when F_Transmit_Timestamp => - RFLX.ICMP.Timestamp'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Transmit_Timestamp | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Tag => - Ctx.First, - when F_Code_Destination_Unreachable => - (if - Ctx.Cursors (Fld).Predecessor = F_Tag - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Code_Redirect => - (if - Ctx.Cursors (Fld).Predecessor = F_Tag - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Code_Time_Exceeded => - (if - Ctx.Cursors (Fld).Predecessor = F_Tag - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Code_Zero => - (if - Ctx.Cursors (Fld).Predecessor = F_Tag - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Checksum => - (if - Ctx.Cursors (Fld).Predecessor = F_Code_Destination_Unreachable - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - elsif - Ctx.Cursors (Fld).Predecessor = F_Code_Redirect - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - elsif - Ctx.Cursors (Fld).Predecessor = F_Code_Time_Exceeded - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - elsif - Ctx.Cursors (Fld).Predecessor = F_Code_Zero - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Gateway_Internet_Address => - (if - Ctx.Cursors (Fld).Predecessor = F_Checksum - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Identifier => - (if - Ctx.Cursors (Fld).Predecessor = F_Checksum - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Pointer => - (if - Ctx.Cursors (Fld).Predecessor = F_Checksum - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Unused_32 => - (if - Ctx.Cursors (Fld).Predecessor = F_Checksum - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Sequence_Number => - (if - Ctx.Cursors (Fld).Predecessor = F_Identifier - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Unused_24 => - (if - Ctx.Cursors (Fld).Predecessor = F_Pointer - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Originate_Timestamp => - (if - Ctx.Cursors (Fld).Predecessor = F_Sequence_Number - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Data => - (if - Ctx.Cursors (Fld).Predecessor = F_Gateway_Internet_Address - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - elsif - Ctx.Cursors (Fld).Predecessor = F_Sequence_Number - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - elsif - Ctx.Cursors (Fld).Predecessor = F_Unused_24 - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - elsif - Ctx.Cursors (Fld).Predecessor = F_Unused_32 - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Receive_Timestamp => - (if - Ctx.Cursors (Fld).Predecessor = F_Originate_Timestamp - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Transmit_Timestamp => - (if - Ctx.Cursors (Fld).Predecessor = F_Receive_Timestamp - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length))); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Tag => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => - (Valid (Ctx.Cursors (F_Tag)) - and Ctx.Cursors (Fld).Predecessor = F_Tag), - when F_Checksum => - (Valid (Ctx.Cursors (F_Code_Destination_Unreachable)) - and Ctx.Cursors (Fld).Predecessor = F_Code_Destination_Unreachable) - or (Valid (Ctx.Cursors (F_Code_Redirect)) - and Ctx.Cursors (Fld).Predecessor = F_Code_Redirect) - or (Valid (Ctx.Cursors (F_Code_Time_Exceeded)) - and Ctx.Cursors (Fld).Predecessor = F_Code_Time_Exceeded) - or (Valid (Ctx.Cursors (F_Code_Zero)) - and Ctx.Cursors (Fld).Predecessor = F_Code_Zero), - when F_Gateway_Internet_Address | F_Identifier | F_Pointer | F_Unused_32 => - (Valid (Ctx.Cursors (F_Checksum)) - and Ctx.Cursors (Fld).Predecessor = F_Checksum), - when F_Sequence_Number => - (Valid (Ctx.Cursors (F_Identifier)) - and Ctx.Cursors (Fld).Predecessor = F_Identifier), - when F_Unused_24 => - (Valid (Ctx.Cursors (F_Pointer)) - and Ctx.Cursors (Fld).Predecessor = F_Pointer), - when F_Originate_Timestamp => - (Valid (Ctx.Cursors (F_Sequence_Number)) - and Ctx.Cursors (Fld).Predecessor = F_Sequence_Number), - when F_Data => - (Valid (Ctx.Cursors (F_Gateway_Internet_Address)) - and Ctx.Cursors (Fld).Predecessor = F_Gateway_Internet_Address) - or (Valid (Ctx.Cursors (F_Sequence_Number)) - and Ctx.Cursors (Fld).Predecessor = F_Sequence_Number) - or (Valid (Ctx.Cursors (F_Unused_24)) - and Ctx.Cursors (Fld).Predecessor = F_Unused_24) - or (Valid (Ctx.Cursors (F_Unused_32)) - and Ctx.Cursors (Fld).Predecessor = F_Unused_32), - when F_Receive_Timestamp => - (Valid (Ctx.Cursors (F_Originate_Timestamp)) - and Ctx.Cursors (Fld).Predecessor = F_Originate_Timestamp), - when F_Transmit_Timestamp => - (Valid (Ctx.Cursors (F_Receive_Timestamp)) - and Ctx.Cursors (Fld).Predecessor = F_Receive_Timestamp), - when F_Final => - (Structural_Valid (Ctx.Cursors (F_Data)) - and Ctx.Cursors (Fld).Predecessor = F_Data) - or (Valid (Ctx.Cursors (F_Sequence_Number)) - and Ctx.Cursors (Fld).Predecessor = F_Sequence_Number) - or (Valid (Ctx.Cursors (F_Transmit_Timestamp)) - and Ctx.Cursors (Fld).Predecessor = F_Transmit_Timestamp))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Tag) - and then ((Valid (Ctx, F_Code_Destination_Unreachable) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - and then Valid (Ctx, F_Checksum) - and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - and then Structural_Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Identifier) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - and then Valid (Ctx, F_Sequence_Number) - and then ((Structural_Valid (Ctx, F_Data) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)))) - or (Valid (Ctx, F_Originate_Timestamp) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - and then Valid (Ctx, F_Receive_Timestamp) - and then Valid (Ctx, F_Transmit_Timestamp)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)))) - or (Valid (Ctx, F_Pointer) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - and then Valid (Ctx, F_Unused_24) - and then Structural_Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Unused_32) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - and then Structural_Valid (Ctx, F_Data)))) - or (Valid (Ctx, F_Code_Redirect) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - and then Valid (Ctx, F_Checksum) - and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - and then Structural_Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Identifier) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - and then Valid (Ctx, F_Sequence_Number) - and then ((Structural_Valid (Ctx, F_Data) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)))) - or (Valid (Ctx, F_Originate_Timestamp) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - and then Valid (Ctx, F_Receive_Timestamp) - and then Valid (Ctx, F_Transmit_Timestamp)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)))) - or (Valid (Ctx, F_Pointer) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - and then Valid (Ctx, F_Unused_24) - and then Structural_Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Unused_32) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - and then Structural_Valid (Ctx, F_Data)))) - or (Valid (Ctx, F_Code_Time_Exceeded) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - and then Valid (Ctx, F_Checksum) - and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - and then Structural_Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Identifier) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - and then Valid (Ctx, F_Sequence_Number) - and then ((Structural_Valid (Ctx, F_Data) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)))) - or (Valid (Ctx, F_Originate_Timestamp) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - and then Valid (Ctx, F_Receive_Timestamp) - and then Valid (Ctx, F_Transmit_Timestamp)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)))) - or (Valid (Ctx, F_Pointer) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - and then Valid (Ctx, F_Unused_24) - and then Structural_Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Unused_32) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - and then Structural_Valid (Ctx, F_Data)))) - or (Valid (Ctx, F_Code_Zero) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - and then Valid (Ctx, F_Checksum) - and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - and then Structural_Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Identifier) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - and then Valid (Ctx, F_Sequence_Number) - and then ((Structural_Valid (Ctx, F_Data) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)))) - or (Valid (Ctx, F_Originate_Timestamp) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - and then Valid (Ctx, F_Receive_Timestamp) - and then Valid (Ctx, F_Transmit_Timestamp)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)))) - or (Valid (Ctx, F_Pointer) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - and then Valid (Ctx, F_Unused_24) - and then Structural_Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Unused_32) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - and then Structural_Valid (Ctx, F_Data)))))); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Tag) - and then ((Valid (Ctx, F_Code_Destination_Unreachable) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - and then Valid (Ctx, F_Checksum) - and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - and then Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Identifier) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - and then Valid (Ctx, F_Sequence_Number) - and then ((Valid (Ctx, F_Data) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)))) - or (Valid (Ctx, F_Originate_Timestamp) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - and then Valid (Ctx, F_Receive_Timestamp) - and then Valid (Ctx, F_Transmit_Timestamp)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)))) - or (Valid (Ctx, F_Pointer) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - and then Valid (Ctx, F_Unused_24) - and then Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Unused_32) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - and then Valid (Ctx, F_Data)))) - or (Valid (Ctx, F_Code_Redirect) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - and then Valid (Ctx, F_Checksum) - and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - and then Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Identifier) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - and then Valid (Ctx, F_Sequence_Number) - and then ((Valid (Ctx, F_Data) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)))) - or (Valid (Ctx, F_Originate_Timestamp) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - and then Valid (Ctx, F_Receive_Timestamp) - and then Valid (Ctx, F_Transmit_Timestamp)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)))) - or (Valid (Ctx, F_Pointer) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - and then Valid (Ctx, F_Unused_24) - and then Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Unused_32) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - and then Valid (Ctx, F_Data)))) - or (Valid (Ctx, F_Code_Time_Exceeded) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - and then Valid (Ctx, F_Checksum) - and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - and then Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Identifier) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - and then Valid (Ctx, F_Sequence_Number) - and then ((Valid (Ctx, F_Data) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)))) - or (Valid (Ctx, F_Originate_Timestamp) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - and then Valid (Ctx, F_Receive_Timestamp) - and then Valid (Ctx, F_Transmit_Timestamp)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)))) - or (Valid (Ctx, F_Pointer) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - and then Valid (Ctx, F_Unused_24) - and then Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Unused_32) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - and then Valid (Ctx, F_Data)))) - or (Valid (Ctx, F_Code_Zero) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request))) - and then Valid (Ctx, F_Checksum) - and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) - and then Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Identifier) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply))) - and then Valid (Ctx, F_Sequence_Number) - and then ((Valid (Ctx, F_Data) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)))) - or (Valid (Ctx, F_Originate_Timestamp) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply))) - and then Valid (Ctx, F_Receive_Timestamp) - and then Valid (Ctx, F_Transmit_Timestamp)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)))) - or (Valid (Ctx, F_Pointer) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - and then Valid (Ctx, F_Unused_24) - and then Valid (Ctx, F_Data)) - or (Valid (Ctx, F_Unused_32) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench))) - and then Valid (Ctx, F_Data)))))); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Tag) - or Incomplete (Ctx, F_Code_Destination_Unreachable) - or Incomplete (Ctx, F_Code_Redirect) - or Incomplete (Ctx, F_Code_Time_Exceeded) - or Incomplete (Ctx, F_Code_Zero) - or Incomplete (Ctx, F_Checksum) - or Incomplete (Ctx, F_Gateway_Internet_Address) - or Incomplete (Ctx, F_Identifier) - or Incomplete (Ctx, F_Pointer) - or Incomplete (Ctx, F_Unused_32) - or Incomplete (Ctx, F_Sequence_Number) - or Incomplete (Ctx, F_Unused_24) - or Incomplete (Ctx, F_Originate_Timestamp) - or Incomplete (Ctx, F_Data) - or Incomplete (Ctx, F_Receive_Timestamp) - or Incomplete (Ctx, F_Transmit_Timestamp)); - - function Get_Tag (Ctx : Context) return RFLX.ICMP.Tag is - (To_Actual (Ctx.Cursors (F_Tag).Value.Tag_Value)); - - function Get_Code_Destination_Unreachable (Ctx : Context) return RFLX.ICMP.Code_Destination_Unreachable is - (To_Actual (Ctx.Cursors (F_Code_Destination_Unreachable).Value.Code_Destination_Unreachable_Value)); - - function Get_Code_Redirect (Ctx : Context) return RFLX.ICMP.Code_Redirect is - (To_Actual (Ctx.Cursors (F_Code_Redirect).Value.Code_Redirect_Value)); - - function Get_Code_Time_Exceeded (Ctx : Context) return RFLX.ICMP.Code_Time_Exceeded is - (To_Actual (Ctx.Cursors (F_Code_Time_Exceeded).Value.Code_Time_Exceeded_Value)); - - function Get_Code_Zero (Ctx : Context) return RFLX.ICMP.Code_Zero is - (To_Actual (Ctx.Cursors (F_Code_Zero).Value.Code_Zero_Value)); - - function Get_Checksum (Ctx : Context) return RFLX.ICMP.Checksum is - (To_Actual (Ctx.Cursors (F_Checksum).Value.Checksum_Value)); - - function Get_Gateway_Internet_Address (Ctx : Context) return RFLX.ICMP.Gateway_Internet_Address is - (To_Actual (Ctx.Cursors (F_Gateway_Internet_Address).Value.Gateway_Internet_Address_Value)); - - function Get_Identifier (Ctx : Context) return RFLX.ICMP.Identifier is - (To_Actual (Ctx.Cursors (F_Identifier).Value.Identifier_Value)); - - function Get_Pointer (Ctx : Context) return RFLX.ICMP.Pointer is - (To_Actual (Ctx.Cursors (F_Pointer).Value.Pointer_Value)); - - function Get_Unused_32 (Ctx : Context) return RFLX.ICMP.Unused_32 is - (To_Actual (Ctx.Cursors (F_Unused_32).Value.Unused_32_Value)); - - function Get_Sequence_Number (Ctx : Context) return RFLX.ICMP.Sequence_Number is - (To_Actual (Ctx.Cursors (F_Sequence_Number).Value.Sequence_Number_Value)); - - function Get_Unused_24 (Ctx : Context) return RFLX.ICMP.Unused_24 is - (To_Actual (Ctx.Cursors (F_Unused_24).Value.Unused_24_Value)); - - function Get_Originate_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp is - (To_Actual (Ctx.Cursors (F_Originate_Timestamp).Value.Originate_Timestamp_Value)); - - function Get_Receive_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp is - (To_Actual (Ctx.Cursors (F_Receive_Timestamp).Value.Receive_Timestamp_Value)); - - function Get_Transmit_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp is - (To_Actual (Ctx.Cursors (F_Transmit_Timestamp).Value.Transmit_Timestamp_Value)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.ICMP.Generic_Message; diff --git a/tests/spark/generated/rflx-icmp-generic_message.adb b/tests/spark/generated/rflx-icmp-message.adb similarity index 85% rename from tests/spark/generated/rflx-icmp-generic_message.adb rename to tests/spark/generated/rflx-icmp-message.adb index c24dbe32b..b6b5d731c 100644 --- a/tests/spark/generated/rflx-icmp-generic_message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.ICMP.Generic_Message with +package body RFLX.ICMP.Message with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Tag => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -64,26 +64,26 @@ is ((case Fld is when F_Tag => (if - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) then F_Code_Destination_Unreachable elsif - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) then F_Code_Redirect elsif - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) then F_Code_Time_Exceeded elsif - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) then F_Code_Zero else @@ -92,26 +92,26 @@ is F_Checksum, when F_Checksum => (if - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Redirect)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) then F_Gateway_Internet_Address elsif - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) then F_Identifier elsif - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Parameter_Problem)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) then F_Pointer elsif - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Time_Exceeded)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Destination_Unreachable)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Source_Quench)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) then F_Unused_32 else @@ -126,18 +126,18 @@ is F_Data, when F_Sequence_Number => (if - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Reply)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Echo_Request)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) then F_Data elsif - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Request)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Information_Reply)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) then F_Final elsif - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Msg)) - or Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Timestamp_Reply)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) then F_Originate_Timestamp else @@ -198,8 +198,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -207,11 +206,11 @@ is Has_Buffer (Ctx) and Valid_Next (Ctx, Fld); - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean is + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Data => - Ctx.Buffer.all (Types.Byte_Index (Field_First (Ctx, Fld)) .. Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -504,9 +503,9 @@ is and Ctx.Cursors (F_Receive_Timestamp) = Ctx.Cursors (F_Receive_Timestamp)'Old and Invalid (Ctx, F_Transmit_Timestamp)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -716,27 +715,27 @@ is Post => Get_Field_Value'Result.Fld = Fld is - First : constant Types.Bit_Index := Field_First (Ctx, Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - function Extract is new Types.Extract (RFLX.ICMP.Tag_Base); - function Extract is new Types.Extract (RFLX.ICMP.Code_Destination_Unreachable_Base); - function Extract is new Types.Extract (RFLX.ICMP.Code_Redirect_Base); - function Extract is new Types.Extract (RFLX.ICMP.Code_Time_Exceeded_Base); - function Extract is new Types.Extract (RFLX.ICMP.Code_Zero_Base); - function Extract is new Types.Extract (RFLX.ICMP.Checksum); - function Extract is new Types.Extract (RFLX.ICMP.Gateway_Internet_Address); - function Extract is new Types.Extract (RFLX.ICMP.Identifier); - function Extract is new Types.Extract (RFLX.ICMP.Pointer); - function Extract is new Types.Extract (RFLX.ICMP.Unused_32_Base); - function Extract is new Types.Extract (RFLX.ICMP.Sequence_Number); - function Extract is new Types.Extract (RFLX.ICMP.Unused_24_Base); - function Extract is new Types.Extract (RFLX.ICMP.Timestamp); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Tag_Base); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Code_Destination_Unreachable_Base); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Code_Redirect_Base); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Code_Time_Exceeded_Base); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Code_Zero_Base); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Checksum); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Gateway_Internet_Address); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Identifier); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Pointer); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Unused_32_Base); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Sequence_Number); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Unused_24_Base); + function Extract is new RFLX_Types.Extract (RFLX.ICMP.Timestamp); begin return ((case Fld is when F_Tag => @@ -793,7 +792,7 @@ is or Fld = F_Sequence_Number or Fld = F_Transmit_Timestamp then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); @@ -863,13 +862,13 @@ is end Verify_Message; procedure Get_Data (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Data).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Data).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Data).Last); begin Process_Data (Ctx.Buffer.all (First .. Last)); end Get_Data; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out Types.Bit_Index) with + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -899,27 +898,27 @@ is and Ctx.Last = Ctx.Last'Old and Ctx.Cursors = Ctx.Cursors'Old is - First : constant Types.Bit_Index := Field_First (Ctx, Val.Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Val.Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - procedure Insert is new Types.Insert (RFLX.ICMP.Tag_Base); - procedure Insert is new Types.Insert (RFLX.ICMP.Code_Destination_Unreachable_Base); - procedure Insert is new Types.Insert (RFLX.ICMP.Code_Redirect_Base); - procedure Insert is new Types.Insert (RFLX.ICMP.Code_Time_Exceeded_Base); - procedure Insert is new Types.Insert (RFLX.ICMP.Code_Zero_Base); - procedure Insert is new Types.Insert (RFLX.ICMP.Checksum); - procedure Insert is new Types.Insert (RFLX.ICMP.Gateway_Internet_Address); - procedure Insert is new Types.Insert (RFLX.ICMP.Identifier); - procedure Insert is new Types.Insert (RFLX.ICMP.Pointer); - procedure Insert is new Types.Insert (RFLX.ICMP.Unused_32_Base); - procedure Insert is new Types.Insert (RFLX.ICMP.Sequence_Number); - procedure Insert is new Types.Insert (RFLX.ICMP.Unused_24_Base); - procedure Insert is new Types.Insert (RFLX.ICMP.Timestamp); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Tag_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Code_Destination_Unreachable_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Code_Redirect_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Code_Time_Exceeded_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Code_Zero_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Checksum); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Gateway_Internet_Address); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Identifier); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Pointer); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Unused_32_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Sequence_Number); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Unused_24_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Timestamp); begin Fst := First; Lst := Last; @@ -965,7 +964,7 @@ is procedure Set_Tag (Ctx : in out Context; Val : RFLX.ICMP.Tag) is Field_Value : constant Field_Dependent_Value := (F_Tag, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Tag); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -976,7 +975,7 @@ is procedure Set_Code_Destination_Unreachable (Ctx : in out Context; Val : RFLX.ICMP.Code_Destination_Unreachable) is Field_Value : constant Field_Dependent_Value := (F_Code_Destination_Unreachable, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Code_Destination_Unreachable); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -987,7 +986,7 @@ is procedure Set_Code_Redirect (Ctx : in out Context; Val : RFLX.ICMP.Code_Redirect) is Field_Value : constant Field_Dependent_Value := (F_Code_Redirect, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Code_Redirect); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -998,7 +997,7 @@ is procedure Set_Code_Time_Exceeded (Ctx : in out Context; Val : RFLX.ICMP.Code_Time_Exceeded) is Field_Value : constant Field_Dependent_Value := (F_Code_Time_Exceeded, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Code_Time_Exceeded); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1009,7 +1008,7 @@ is procedure Set_Code_Zero (Ctx : in out Context; Val : RFLX.ICMP.Code_Zero) is Field_Value : constant Field_Dependent_Value := (F_Code_Zero, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Code_Zero); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1020,7 +1019,7 @@ is procedure Set_Checksum (Ctx : in out Context; Val : RFLX.ICMP.Checksum) is Field_Value : constant Field_Dependent_Value := (F_Checksum, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Checksum); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1031,7 +1030,7 @@ is procedure Set_Gateway_Internet_Address (Ctx : in out Context; Val : RFLX.ICMP.Gateway_Internet_Address) is Field_Value : constant Field_Dependent_Value := (F_Gateway_Internet_Address, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Gateway_Internet_Address); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1042,7 +1041,7 @@ is procedure Set_Identifier (Ctx : in out Context; Val : RFLX.ICMP.Identifier) is Field_Value : constant Field_Dependent_Value := (F_Identifier, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Identifier); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1053,7 +1052,7 @@ is procedure Set_Pointer (Ctx : in out Context; Val : RFLX.ICMP.Pointer) is Field_Value : constant Field_Dependent_Value := (F_Pointer, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Pointer); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1064,7 +1063,7 @@ is procedure Set_Unused_32 (Ctx : in out Context; Val : RFLX.ICMP.Unused_32) is Field_Value : constant Field_Dependent_Value := (F_Unused_32, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Unused_32); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1075,7 +1074,7 @@ is procedure Set_Sequence_Number (Ctx : in out Context; Val : RFLX.ICMP.Sequence_Number) is Field_Value : constant Field_Dependent_Value := (F_Sequence_Number, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Sequence_Number); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1086,7 +1085,7 @@ is procedure Set_Unused_24 (Ctx : in out Context; Val : RFLX.ICMP.Unused_24) is Field_Value : constant Field_Dependent_Value := (F_Unused_24, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Unused_24); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1097,7 +1096,7 @@ is procedure Set_Originate_Timestamp (Ctx : in out Context; Val : RFLX.ICMP.Timestamp) is Field_Value : constant Field_Dependent_Value := (F_Originate_Timestamp, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Originate_Timestamp); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1108,7 +1107,7 @@ is procedure Set_Receive_Timestamp (Ctx : in out Context; Val : RFLX.ICMP.Timestamp) is Field_Value : constant Field_Dependent_Value := (F_Receive_Timestamp, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Receive_Timestamp); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1119,7 +1118,7 @@ is procedure Set_Transmit_Timestamp (Ctx : in out Context; Val : RFLX.ICMP.Timestamp) is Field_Value : constant Field_Dependent_Value := (F_Transmit_Timestamp, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Transmit_Timestamp); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1129,8 +1128,8 @@ is end Set_Transmit_Timestamp; procedure Set_Data_Empty (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Data); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Data); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Data); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Data); begin Reset_Dependent_Fields (Ctx, F_Data); Ctx.Message_Last := Last; @@ -1145,9 +1144,9 @@ is and then Valid_Next (Ctx, F_Data) and then Field_Condition (Ctx, (Fld => F_Data)) and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) - and then Field_First (Ctx, F_Data) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Data) mod Types.Byte'Size = 0, + and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0, Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Data) @@ -1163,8 +1162,8 @@ is and Get_Tag (Ctx) = Get_Tag (Ctx)'Old and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old is - First : constant Types.Bit_Index := Field_First (Ctx, F_Data); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Data); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Data); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Data); begin Reset_Dependent_Fields (Ctx, F_Data); Ctx.Message_Last := Last; @@ -1177,28 +1176,28 @@ is Initialize_Data_Private (Ctx); end Initialize_Data; - procedure Set_Data (Ctx : in out Context; Value : Types.Bytes) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Data); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Data); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Data (Ctx : in out Context; Value : RFLX_Types.Bytes) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Data); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Data); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Data_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; end Set_Data; procedure Generic_Set_Data (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Data); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Data); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Data); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Data); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Data_Private (Ctx); Process_Data (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Generic_Set_Data; -end RFLX.ICMP.Generic_Message; +end RFLX.ICMP.Message; diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index 1dc9dc7ba..163fb9892 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -1,7 +1,2704 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.ICMP.Generic_Message; -package RFLX.ICMP.Message is new RFLX.ICMP.Generic_Message (RFLX.RFLX_Types); +package RFLX.ICMP.Message with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Tag, F_Code_Destination_Unreachable, F_Code_Redirect, F_Code_Time_Exceeded, F_Code_Zero, F_Checksum, F_Gateway_Internet_Address, F_Identifier, F_Pointer, F_Unused_32, F_Sequence_Number, F_Unused_24, F_Originate_Timestamp, F_Data, F_Receive_Timestamp, F_Transmit_Timestamp, F_Final); + + subtype Field is Virtual_Field range F_Tag .. F_Transmit_Timestamp; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Data | F_Final => + null; + when F_Tag => + Tag_Value : RFLX.ICMP.Tag_Base; + when F_Code_Destination_Unreachable => + Code_Destination_Unreachable_Value : RFLX.ICMP.Code_Destination_Unreachable_Base; + when F_Code_Redirect => + Code_Redirect_Value : RFLX.ICMP.Code_Redirect_Base; + when F_Code_Time_Exceeded => + Code_Time_Exceeded_Value : RFLX.ICMP.Code_Time_Exceeded_Base; + when F_Code_Zero => + Code_Zero_Value : RFLX.ICMP.Code_Zero_Base; + when F_Checksum => + Checksum_Value : RFLX.ICMP.Checksum; + when F_Gateway_Internet_Address => + Gateway_Internet_Address_Value : RFLX.ICMP.Gateway_Internet_Address; + when F_Identifier => + Identifier_Value : RFLX.ICMP.Identifier; + when F_Pointer => + Pointer_Value : RFLX.ICMP.Pointer; + when F_Unused_32 => + Unused_32_Value : RFLX.ICMP.Unused_32_Base; + when F_Sequence_Number => + Sequence_Number_Value : RFLX.ICMP.Sequence_Number; + when F_Unused_24 => + Unused_24_Value : RFLX.ICMP.Unused_24_Base; + when F_Originate_Timestamp => + Originate_Timestamp_Value : RFLX.ICMP.Timestamp; + when F_Receive_Timestamp => + Receive_Timestamp_Value : RFLX.ICMP.Timestamp; + when F_Transmit_Timestamp => + Transmit_Timestamp_Value : RFLX.ICMP.Timestamp; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Tag (Ctx : Context) return RFLX.ICMP.Tag with + Pre => + Valid (Ctx, F_Tag); + + function Get_Code_Destination_Unreachable (Ctx : Context) return RFLX.ICMP.Code_Destination_Unreachable with + Pre => + Valid (Ctx, F_Code_Destination_Unreachable); + + function Get_Code_Redirect (Ctx : Context) return RFLX.ICMP.Code_Redirect with + Pre => + Valid (Ctx, F_Code_Redirect); + + function Get_Code_Time_Exceeded (Ctx : Context) return RFLX.ICMP.Code_Time_Exceeded with + Pre => + Valid (Ctx, F_Code_Time_Exceeded); + + function Get_Code_Zero (Ctx : Context) return RFLX.ICMP.Code_Zero with + Pre => + Valid (Ctx, F_Code_Zero); + + function Get_Checksum (Ctx : Context) return RFLX.ICMP.Checksum with + Pre => + Valid (Ctx, F_Checksum); + + function Get_Gateway_Internet_Address (Ctx : Context) return RFLX.ICMP.Gateway_Internet_Address with + Pre => + Valid (Ctx, F_Gateway_Internet_Address); + + function Get_Identifier (Ctx : Context) return RFLX.ICMP.Identifier with + Pre => + Valid (Ctx, F_Identifier); + + function Get_Pointer (Ctx : Context) return RFLX.ICMP.Pointer with + Pre => + Valid (Ctx, F_Pointer); + + function Get_Unused_32 (Ctx : Context) return RFLX.ICMP.Unused_32 with + Pre => + Valid (Ctx, F_Unused_32); + + function Get_Sequence_Number (Ctx : Context) return RFLX.ICMP.Sequence_Number with + Pre => + Valid (Ctx, F_Sequence_Number); + + function Get_Unused_24 (Ctx : Context) return RFLX.ICMP.Unused_24 with + Pre => + Valid (Ctx, F_Unused_24); + + function Get_Originate_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp with + Pre => + Valid (Ctx, F_Originate_Timestamp); + + function Get_Receive_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp with + Pre => + Valid (Ctx, F_Receive_Timestamp); + + function Get_Transmit_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp with + Pre => + Valid (Ctx, F_Transmit_Timestamp); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Data (Data : RFLX_Types.Bytes); + procedure Get_Data (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Data); + + procedure Set_Tag (Ctx : in out Context; Val : RFLX.ICMP.Tag) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Tag) + and then Field_Condition (Ctx, (F_Tag, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Tag) >= Field_Size (Ctx, F_Tag), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Tag) + and Get_Tag (Ctx) = Val + and Invalid (Ctx, F_Code_Destination_Unreachable) + and Invalid (Ctx, F_Code_Redirect) + and Invalid (Ctx, F_Code_Time_Exceeded) + and Invalid (Ctx, F_Code_Zero) + and Invalid (Ctx, F_Checksum) + and Invalid (Ctx, F_Gateway_Internet_Address) + and Invalid (Ctx, F_Identifier) + and Invalid (Ctx, F_Pointer) + and Invalid (Ctx, F_Unused_32) + and Invalid (Ctx, F_Sequence_Number) + and Invalid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + then + Predecessor (Ctx, F_Code_Destination_Unreachable) = F_Tag + and Valid_Next (Ctx, F_Code_Destination_Unreachable)) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Redirect)) + then + Predecessor (Ctx, F_Code_Redirect) = F_Tag + and Valid_Next (Ctx, F_Code_Redirect)) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + then + Predecessor (Ctx, F_Code_Time_Exceeded) = F_Tag + and Valid_Next (Ctx, F_Code_Time_Exceeded)) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Source_Quench)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Request)) + then + Predecessor (Ctx, F_Code_Zero) = F_Tag + and Valid_Next (Ctx, F_Code_Zero)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Tag) = Predecessor (Ctx, F_Tag)'Old + and Valid_Next (Ctx, F_Tag) = Valid_Next (Ctx, F_Tag)'Old; + + procedure Set_Code_Destination_Unreachable (Ctx : in out Context; Val : RFLX.ICMP.Code_Destination_Unreachable) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Code_Destination_Unreachable) + and then Field_Condition (Ctx, (F_Code_Destination_Unreachable, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Code_Destination_Unreachable) >= Field_Size (Ctx, F_Code_Destination_Unreachable), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Code_Destination_Unreachable) + and Get_Code_Destination_Unreachable (Ctx) = Val + and Invalid (Ctx, F_Code_Redirect) + and Invalid (Ctx, F_Code_Time_Exceeded) + and Invalid (Ctx, F_Code_Zero) + and Invalid (Ctx, F_Checksum) + and Invalid (Ctx, F_Gateway_Internet_Address) + and Invalid (Ctx, F_Identifier) + and Invalid (Ctx, F_Pointer) + and Invalid (Ctx, F_Unused_32) + and Invalid (Ctx, F_Sequence_Number) + and Invalid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (Predecessor (Ctx, F_Checksum) = F_Code_Destination_Unreachable + and Valid_Next (Ctx, F_Checksum)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Code_Destination_Unreachable) = Predecessor (Ctx, F_Code_Destination_Unreachable)'Old + and Valid_Next (Ctx, F_Code_Destination_Unreachable) = Valid_Next (Ctx, F_Code_Destination_Unreachable)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old; + + procedure Set_Code_Redirect (Ctx : in out Context; Val : RFLX.ICMP.Code_Redirect) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Code_Redirect) + and then Field_Condition (Ctx, (F_Code_Redirect, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Code_Redirect) >= Field_Size (Ctx, F_Code_Redirect), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Code_Redirect) + and Get_Code_Redirect (Ctx) = Val + and Invalid (Ctx, F_Code_Time_Exceeded) + and Invalid (Ctx, F_Code_Zero) + and Invalid (Ctx, F_Checksum) + and Invalid (Ctx, F_Gateway_Internet_Address) + and Invalid (Ctx, F_Identifier) + and Invalid (Ctx, F_Pointer) + and Invalid (Ctx, F_Unused_32) + and Invalid (Ctx, F_Sequence_Number) + and Invalid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (Predecessor (Ctx, F_Checksum) = F_Code_Redirect + and Valid_Next (Ctx, F_Checksum)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Code_Redirect) = Predecessor (Ctx, F_Code_Redirect)'Old + and Valid_Next (Ctx, F_Code_Redirect) = Valid_Next (Ctx, F_Code_Redirect)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old; + + procedure Set_Code_Time_Exceeded (Ctx : in out Context; Val : RFLX.ICMP.Code_Time_Exceeded) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Code_Time_Exceeded) + and then Field_Condition (Ctx, (F_Code_Time_Exceeded, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Code_Time_Exceeded) >= Field_Size (Ctx, F_Code_Time_Exceeded), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Code_Time_Exceeded) + and Get_Code_Time_Exceeded (Ctx) = Val + and Invalid (Ctx, F_Code_Zero) + and Invalid (Ctx, F_Checksum) + and Invalid (Ctx, F_Gateway_Internet_Address) + and Invalid (Ctx, F_Identifier) + and Invalid (Ctx, F_Pointer) + and Invalid (Ctx, F_Unused_32) + and Invalid (Ctx, F_Sequence_Number) + and Invalid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (Predecessor (Ctx, F_Checksum) = F_Code_Time_Exceeded + and Valid_Next (Ctx, F_Checksum)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Code_Time_Exceeded) = Predecessor (Ctx, F_Code_Time_Exceeded)'Old + and Valid_Next (Ctx, F_Code_Time_Exceeded) = Valid_Next (Ctx, F_Code_Time_Exceeded)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old; + + procedure Set_Code_Zero (Ctx : in out Context; Val : RFLX.ICMP.Code_Zero) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Code_Zero) + and then Field_Condition (Ctx, (F_Code_Zero, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Code_Zero) >= Field_Size (Ctx, F_Code_Zero), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Code_Zero) + and Invalid (Ctx, F_Checksum) + and Invalid (Ctx, F_Gateway_Internet_Address) + and Invalid (Ctx, F_Identifier) + and Invalid (Ctx, F_Pointer) + and Invalid (Ctx, F_Unused_32) + and Invalid (Ctx, F_Sequence_Number) + and Invalid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (Predecessor (Ctx, F_Checksum) = F_Code_Zero + and Valid_Next (Ctx, F_Checksum)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Code_Zero) = Predecessor (Ctx, F_Code_Zero)'Old + and Valid_Next (Ctx, F_Code_Zero) = Valid_Next (Ctx, F_Code_Zero)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old + and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old; + + procedure Set_Checksum (Ctx : in out Context; Val : RFLX.ICMP.Checksum) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Checksum) + and then Field_Condition (Ctx, (F_Checksum, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Checksum) >= Field_Size (Ctx, F_Checksum), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Checksum) + and Get_Checksum (Ctx) = Val + and Invalid (Ctx, F_Gateway_Internet_Address) + and Invalid (Ctx, F_Identifier) + and Invalid (Ctx, F_Pointer) + and Invalid (Ctx, F_Unused_32) + and Invalid (Ctx, F_Sequence_Number) + and Invalid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Redirect)) + then + Predecessor (Ctx, F_Gateway_Internet_Address) = F_Checksum + and Valid_Next (Ctx, F_Gateway_Internet_Address)) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Reply)) + then + Predecessor (Ctx, F_Identifier) = F_Checksum + and Valid_Next (Ctx, F_Identifier)) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + then + Predecessor (Ctx, F_Pointer) = F_Checksum + and Valid_Next (Ctx, F_Pointer)) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Source_Quench)) + then + Predecessor (Ctx, F_Unused_32) = F_Checksum + and Valid_Next (Ctx, F_Unused_32)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Checksum) = Predecessor (Ctx, F_Checksum)'Old + and Valid_Next (Ctx, F_Checksum) = Valid_Next (Ctx, F_Checksum)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old + and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old + and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old; + + procedure Set_Gateway_Internet_Address (Ctx : in out Context; Val : RFLX.ICMP.Gateway_Internet_Address) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Gateway_Internet_Address) + and then Field_Condition (Ctx, (F_Gateway_Internet_Address, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Gateway_Internet_Address) >= Field_Size (Ctx, F_Gateway_Internet_Address), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Gateway_Internet_Address) + and Get_Gateway_Internet_Address (Ctx) = Val + and Invalid (Ctx, F_Identifier) + and Invalid (Ctx, F_Pointer) + and Invalid (Ctx, F_Unused_32) + and Invalid (Ctx, F_Sequence_Number) + and Invalid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (Predecessor (Ctx, F_Data) = F_Gateway_Internet_Address + and Valid_Next (Ctx, F_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Gateway_Internet_Address) = Predecessor (Ctx, F_Gateway_Internet_Address)'Old + and Valid_Next (Ctx, F_Gateway_Internet_Address) = Valid_Next (Ctx, F_Gateway_Internet_Address)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old + and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old + and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old + and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old; + + procedure Set_Identifier (Ctx : in out Context; Val : RFLX.ICMP.Identifier) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Identifier) + and then Field_Condition (Ctx, (F_Identifier, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Identifier) >= Field_Size (Ctx, F_Identifier), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Identifier) + and Get_Identifier (Ctx) = Val + and Invalid (Ctx, F_Pointer) + and Invalid (Ctx, F_Unused_32) + and Invalid (Ctx, F_Sequence_Number) + and Invalid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (Predecessor (Ctx, F_Sequence_Number) = F_Identifier + and Valid_Next (Ctx, F_Sequence_Number)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Identifier) = Predecessor (Ctx, F_Identifier)'Old + and Valid_Next (Ctx, F_Identifier) = Valid_Next (Ctx, F_Identifier)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old + and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old + and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old + and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old + and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old; + + procedure Set_Pointer (Ctx : in out Context; Val : RFLX.ICMP.Pointer) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Pointer) + and then Field_Condition (Ctx, (F_Pointer, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Pointer) >= Field_Size (Ctx, F_Pointer), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Pointer) + and Get_Pointer (Ctx) = Val + and Invalid (Ctx, F_Unused_32) + and Invalid (Ctx, F_Sequence_Number) + and Invalid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (Predecessor (Ctx, F_Unused_24) = F_Pointer + and Valid_Next (Ctx, F_Unused_24)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Pointer) = Predecessor (Ctx, F_Pointer)'Old + and Valid_Next (Ctx, F_Pointer) = Valid_Next (Ctx, F_Pointer)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old + and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old + and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old + and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old + and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old + and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old; + + procedure Set_Unused_32 (Ctx : in out Context; Val : RFLX.ICMP.Unused_32) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Unused_32) + and then Field_Condition (Ctx, (F_Unused_32, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Unused_32) >= Field_Size (Ctx, F_Unused_32), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Unused_32) + and Invalid (Ctx, F_Sequence_Number) + and Invalid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (Predecessor (Ctx, F_Data) = F_Unused_32 + and Valid_Next (Ctx, F_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Unused_32) = Predecessor (Ctx, F_Unused_32)'Old + and Valid_Next (Ctx, F_Unused_32) = Valid_Next (Ctx, F_Unused_32)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old + and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old + and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old + and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old + and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old + and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old + and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old; + + procedure Set_Sequence_Number (Ctx : in out Context; Val : RFLX.ICMP.Sequence_Number) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Sequence_Number) + and then Field_Condition (Ctx, (F_Sequence_Number, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Sequence_Number) >= Field_Size (Ctx, F_Sequence_Number), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Sequence_Number) + and Get_Sequence_Number (Ctx) = Val + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Sequence_Number)) + and Invalid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Request)) + then + Predecessor (Ctx, F_Data) = F_Sequence_Number + and Valid_Next (Ctx, F_Data)) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + then + Predecessor (Ctx, F_Originate_Timestamp) = F_Sequence_Number + and Valid_Next (Ctx, F_Originate_Timestamp)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Sequence_Number) = Predecessor (Ctx, F_Sequence_Number)'Old + and Valid_Next (Ctx, F_Sequence_Number) = Valid_Next (Ctx, F_Sequence_Number)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old + and Get_Identifier (Ctx) = Get_Identifier (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old + and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old + and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old + and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old + and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old + and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old + and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old + and Context_Cursor (Ctx, F_Unused_32) = Context_Cursor (Ctx, F_Unused_32)'Old; + + procedure Set_Unused_24 (Ctx : in out Context; Val : RFLX.ICMP.Unused_24) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Unused_24) + and then Field_Condition (Ctx, (F_Unused_24, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Unused_24) >= Field_Size (Ctx, F_Unused_24), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Unused_24) + and Invalid (Ctx, F_Originate_Timestamp) + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (Predecessor (Ctx, F_Data) = F_Unused_24 + and Valid_Next (Ctx, F_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Unused_24) = Predecessor (Ctx, F_Unused_24)'Old + and Valid_Next (Ctx, F_Unused_24) = Valid_Next (Ctx, F_Unused_24)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old + and Get_Pointer (Ctx) = Get_Pointer (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old + and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old + and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old + and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old + and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old + and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old + and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old + and Context_Cursor (Ctx, F_Unused_32) = Context_Cursor (Ctx, F_Unused_32)'Old + and Context_Cursor (Ctx, F_Sequence_Number) = Context_Cursor (Ctx, F_Sequence_Number)'Old; + + procedure Set_Originate_Timestamp (Ctx : in out Context; Val : RFLX.ICMP.Timestamp) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Originate_Timestamp) + and then Field_Condition (Ctx, (F_Originate_Timestamp, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Originate_Timestamp) >= Field_Size (Ctx, F_Originate_Timestamp), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Originate_Timestamp) + and Get_Originate_Timestamp (Ctx) = Val + and Invalid (Ctx, F_Data) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and (Predecessor (Ctx, F_Receive_Timestamp) = F_Originate_Timestamp + and Valid_Next (Ctx, F_Receive_Timestamp)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Originate_Timestamp) = Predecessor (Ctx, F_Originate_Timestamp)'Old + and Valid_Next (Ctx, F_Originate_Timestamp) = Valid_Next (Ctx, F_Originate_Timestamp)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old + and Get_Identifier (Ctx) = Get_Identifier (Ctx)'Old + and Get_Sequence_Number (Ctx) = Get_Sequence_Number (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old + and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old + and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old + and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old + and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old + and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old + and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old + and Context_Cursor (Ctx, F_Unused_32) = Context_Cursor (Ctx, F_Unused_32)'Old + and Context_Cursor (Ctx, F_Sequence_Number) = Context_Cursor (Ctx, F_Sequence_Number)'Old + and Context_Cursor (Ctx, F_Unused_24) = Context_Cursor (Ctx, F_Unused_24)'Old; + + procedure Set_Receive_Timestamp (Ctx : in out Context; Val : RFLX.ICMP.Timestamp) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Receive_Timestamp) + and then Field_Condition (Ctx, (F_Receive_Timestamp, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Receive_Timestamp) >= Field_Size (Ctx, F_Receive_Timestamp), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Receive_Timestamp) + and Get_Receive_Timestamp (Ctx) = Val + and Invalid (Ctx, F_Transmit_Timestamp) + and (Predecessor (Ctx, F_Transmit_Timestamp) = F_Receive_Timestamp + and Valid_Next (Ctx, F_Transmit_Timestamp)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Receive_Timestamp) = Predecessor (Ctx, F_Receive_Timestamp)'Old + and Valid_Next (Ctx, F_Receive_Timestamp) = Valid_Next (Ctx, F_Receive_Timestamp)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old + and Get_Identifier (Ctx) = Get_Identifier (Ctx)'Old + and Get_Sequence_Number (Ctx) = Get_Sequence_Number (Ctx)'Old + and Get_Originate_Timestamp (Ctx) = Get_Originate_Timestamp (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old + and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old + and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old + and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old + and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old + and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old + and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old + and Context_Cursor (Ctx, F_Unused_32) = Context_Cursor (Ctx, F_Unused_32)'Old + and Context_Cursor (Ctx, F_Sequence_Number) = Context_Cursor (Ctx, F_Sequence_Number)'Old + and Context_Cursor (Ctx, F_Unused_24) = Context_Cursor (Ctx, F_Unused_24)'Old + and Context_Cursor (Ctx, F_Originate_Timestamp) = Context_Cursor (Ctx, F_Originate_Timestamp)'Old + and Context_Cursor (Ctx, F_Data) = Context_Cursor (Ctx, F_Data)'Old; + + procedure Set_Transmit_Timestamp (Ctx : in out Context; Val : RFLX.ICMP.Timestamp) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Transmit_Timestamp) + and then Field_Condition (Ctx, (F_Transmit_Timestamp, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Transmit_Timestamp) >= Field_Size (Ctx, F_Transmit_Timestamp), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Transmit_Timestamp) + and Get_Transmit_Timestamp (Ctx) = Val + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Transmit_Timestamp)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Transmit_Timestamp) = Predecessor (Ctx, F_Transmit_Timestamp)'Old + and Valid_Next (Ctx, F_Transmit_Timestamp) = Valid_Next (Ctx, F_Transmit_Timestamp)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old + and Get_Identifier (Ctx) = Get_Identifier (Ctx)'Old + and Get_Sequence_Number (Ctx) = Get_Sequence_Number (Ctx)'Old + and Get_Originate_Timestamp (Ctx) = Get_Originate_Timestamp (Ctx)'Old + and Get_Receive_Timestamp (Ctx) = Get_Receive_Timestamp (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old + and Context_Cursor (Ctx, F_Code_Destination_Unreachable) = Context_Cursor (Ctx, F_Code_Destination_Unreachable)'Old + and Context_Cursor (Ctx, F_Code_Redirect) = Context_Cursor (Ctx, F_Code_Redirect)'Old + and Context_Cursor (Ctx, F_Code_Time_Exceeded) = Context_Cursor (Ctx, F_Code_Time_Exceeded)'Old + and Context_Cursor (Ctx, F_Code_Zero) = Context_Cursor (Ctx, F_Code_Zero)'Old + and Context_Cursor (Ctx, F_Checksum) = Context_Cursor (Ctx, F_Checksum)'Old + and Context_Cursor (Ctx, F_Gateway_Internet_Address) = Context_Cursor (Ctx, F_Gateway_Internet_Address)'Old + and Context_Cursor (Ctx, F_Identifier) = Context_Cursor (Ctx, F_Identifier)'Old + and Context_Cursor (Ctx, F_Pointer) = Context_Cursor (Ctx, F_Pointer)'Old + and Context_Cursor (Ctx, F_Unused_32) = Context_Cursor (Ctx, F_Unused_32)'Old + and Context_Cursor (Ctx, F_Sequence_Number) = Context_Cursor (Ctx, F_Sequence_Number)'Old + and Context_Cursor (Ctx, F_Unused_24) = Context_Cursor (Ctx, F_Unused_24)'Old + and Context_Cursor (Ctx, F_Originate_Timestamp) = Context_Cursor (Ctx, F_Originate_Timestamp)'Old + and Context_Cursor (Ctx, F_Data) = Context_Cursor (Ctx, F_Data)'Old + and Context_Cursor (Ctx, F_Receive_Timestamp) = Context_Cursor (Ctx, F_Receive_Timestamp)'Old; + + procedure Set_Data_Empty (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Data) + and then Field_Condition (Ctx, (Fld => F_Data)) + and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) + and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Data) = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Data) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Data)) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old + and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; + + procedure Initialize_Data (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Data) + and then Field_Condition (Ctx, (Fld => F_Data)) + and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) + and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Data) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Data)) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old + and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; + + procedure Set_Data (Ctx : in out Context; Value : RFLX_Types.Bytes) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Data) + and then Field_Condition (Ctx, (Fld => F_Data)) + and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) + and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Data)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Data)) + 1, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Data) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Data)) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old + and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; + + generic + with procedure Process_Data (Data : out RFLX_Types.Bytes); + with function Valid_Length (Length : RFLX_Types.Length) return Boolean; + procedure Generic_Set_Data (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Data) + and then Field_Condition (Ctx, (Fld => F_Data)) + and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) + and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Valid_Length (RFLX_Types.Length (Field_Size (Ctx, F_Data) / RFLX_Types.Byte'Size)), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Data) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Data)) + and Invalid (Ctx, F_Receive_Timestamp) + and Invalid (Ctx, F_Transmit_Timestamp) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old + and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Tag => + Valid (Val.Tag_Value), + when F_Code_Destination_Unreachable => + Valid (Val.Code_Destination_Unreachable_Value), + when F_Code_Redirect => + Valid (Val.Code_Redirect_Value), + when F_Code_Time_Exceeded => + Valid (Val.Code_Time_Exceeded_Value), + when F_Code_Zero => + Valid (Val.Code_Zero_Value), + when F_Checksum => + Valid (Val.Checksum_Value), + when F_Gateway_Internet_Address => + Valid (Val.Gateway_Internet_Address_Value), + when F_Identifier => + Valid (Val.Identifier_Value), + when F_Pointer => + Valid (Val.Pointer_Value), + when F_Unused_32 => + Valid (Val.Unused_32_Value), + when F_Sequence_Number => + Valid (Val.Sequence_Number_Value), + when F_Unused_24 => + Valid (Val.Unused_24_Value), + when F_Originate_Timestamp => + Valid (Val.Originate_Timestamp_Value), + when F_Data => + True, + when F_Receive_Timestamp => + Valid (Val.Receive_Timestamp_Value), + when F_Transmit_Timestamp => + Valid (Val.Transmit_Timestamp_Value), + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_Code_Destination_Unreachable)) + then + (Valid (Cursors (F_Tag)) + and then Cursors (F_Code_Destination_Unreachable).Predecessor = F_Tag + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)))) + and then (if + Structural_Valid (Cursors (F_Code_Redirect)) + then + (Valid (Cursors (F_Tag)) + and then Cursors (F_Code_Redirect).Predecessor = F_Tag + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)))) + and then (if + Structural_Valid (Cursors (F_Code_Time_Exceeded)) + then + (Valid (Cursors (F_Tag)) + and then Cursors (F_Code_Time_Exceeded).Predecessor = F_Tag + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)))) + and then (if + Structural_Valid (Cursors (F_Code_Zero)) + then + (Valid (Cursors (F_Tag)) + and then Cursors (F_Code_Zero).Predecessor = F_Tag + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))))) + and then (if + Structural_Valid (Cursors (F_Checksum)) + then + (Valid (Cursors (F_Code_Destination_Unreachable)) + and then Cursors (F_Checksum).Predecessor = F_Code_Destination_Unreachable) + or (Valid (Cursors (F_Code_Redirect)) + and then Cursors (F_Checksum).Predecessor = F_Code_Redirect) + or (Valid (Cursors (F_Code_Time_Exceeded)) + and then Cursors (F_Checksum).Predecessor = F_Code_Time_Exceeded) + or (Valid (Cursors (F_Code_Zero)) + and then Cursors (F_Checksum).Predecessor = F_Code_Zero)) + and then (if + Structural_Valid (Cursors (F_Gateway_Internet_Address)) + then + (Valid (Cursors (F_Checksum)) + and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)))) + and then (if + Structural_Valid (Cursors (F_Identifier)) + then + (Valid (Cursors (F_Checksum)) + and then Cursors (F_Identifier).Predecessor = F_Checksum + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))))) + and then (if + Structural_Valid (Cursors (F_Pointer)) + then + (Valid (Cursors (F_Checksum)) + and then Cursors (F_Pointer).Predecessor = F_Checksum + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)))) + and then (if + Structural_Valid (Cursors (F_Unused_32)) + then + (Valid (Cursors (F_Checksum)) + and then Cursors (F_Unused_32).Predecessor = F_Checksum + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))))) + and then (if + Structural_Valid (Cursors (F_Sequence_Number)) + then + (Valid (Cursors (F_Identifier)) + and then Cursors (F_Sequence_Number).Predecessor = F_Identifier)) + and then (if + Structural_Valid (Cursors (F_Unused_24)) + then + (Valid (Cursors (F_Pointer)) + and then Cursors (F_Unused_24).Predecessor = F_Pointer)) + and then (if + Structural_Valid (Cursors (F_Originate_Timestamp)) + then + (Valid (Cursors (F_Sequence_Number)) + and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))))) + and then (if + Structural_Valid (Cursors (F_Data)) + then + (Valid (Cursors (F_Gateway_Internet_Address)) + and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address) + or (Valid (Cursors (F_Sequence_Number)) + and then Cursors (F_Data).Predecessor = F_Sequence_Number + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + or (Valid (Cursors (F_Unused_24)) + and then Cursors (F_Data).Predecessor = F_Unused_24) + or (Valid (Cursors (F_Unused_32)) + and then Cursors (F_Data).Predecessor = F_Unused_32)) + and then (if + Structural_Valid (Cursors (F_Receive_Timestamp)) + then + (Valid (Cursors (F_Originate_Timestamp)) + and then Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp)) + and then (if + Structural_Valid (Cursors (F_Transmit_Timestamp)) + then + (Valid (Cursors (F_Receive_Timestamp)) + and then Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp))) + and then ((if + Invalid (Cursors (F_Tag)) + then + Invalid (Cursors (F_Code_Destination_Unreachable))) + and then (if + Invalid (Cursors (F_Tag)) + then + Invalid (Cursors (F_Code_Redirect))) + and then (if + Invalid (Cursors (F_Tag)) + then + Invalid (Cursors (F_Code_Time_Exceeded))) + and then (if + Invalid (Cursors (F_Tag)) + then + Invalid (Cursors (F_Code_Zero))) + and then (if + Invalid (Cursors (F_Code_Destination_Unreachable)) + and then Invalid (Cursors (F_Code_Redirect)) + and then Invalid (Cursors (F_Code_Time_Exceeded)) + and then Invalid (Cursors (F_Code_Zero)) + then + Invalid (Cursors (F_Checksum))) + and then (if + Invalid (Cursors (F_Checksum)) + then + Invalid (Cursors (F_Gateway_Internet_Address))) + and then (if + Invalid (Cursors (F_Checksum)) + then + Invalid (Cursors (F_Identifier))) + and then (if + Invalid (Cursors (F_Checksum)) + then + Invalid (Cursors (F_Pointer))) + and then (if + Invalid (Cursors (F_Checksum)) + then + Invalid (Cursors (F_Unused_32))) + and then (if + Invalid (Cursors (F_Identifier)) + then + Invalid (Cursors (F_Sequence_Number))) + and then (if + Invalid (Cursors (F_Pointer)) + then + Invalid (Cursors (F_Unused_24))) + and then (if + Invalid (Cursors (F_Sequence_Number)) + then + Invalid (Cursors (F_Originate_Timestamp))) + and then (if + Invalid (Cursors (F_Gateway_Internet_Address)) + and then Invalid (Cursors (F_Sequence_Number)) + and then Invalid (Cursors (F_Unused_24)) + and then Invalid (Cursors (F_Unused_32)) + then + Invalid (Cursors (F_Data))) + and then (if + Invalid (Cursors (F_Originate_Timestamp)) + then + Invalid (Cursors (F_Receive_Timestamp))) + and then (if + Invalid (Cursors (F_Receive_Timestamp)) + then + Invalid (Cursors (F_Transmit_Timestamp)))) + and then (if + Structural_Valid (Cursors (F_Tag)) + then + Cursors (F_Tag).Last - Cursors (F_Tag).First + 1 = RFLX.ICMP.Tag_Base'Size + and then Cursors (F_Tag).Predecessor = F_Initial + and then Cursors (F_Tag).First = First + and then (if + Structural_Valid (Cursors (F_Code_Destination_Unreachable)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + then + Cursors (F_Code_Destination_Unreachable).Last - Cursors (F_Code_Destination_Unreachable).First + 1 = RFLX.ICMP.Code_Destination_Unreachable_Base'Size + and then Cursors (F_Code_Destination_Unreachable).Predecessor = F_Tag + and then Cursors (F_Code_Destination_Unreachable).First = Cursors (F_Tag).Last + 1 + and then (if + Structural_Valid (Cursors (F_Checksum)) + then + Cursors (F_Checksum).Last - Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size + and then Cursors (F_Checksum).Predecessor = F_Code_Destination_Unreachable + and then Cursors (F_Checksum).First = Cursors (F_Code_Destination_Unreachable).Last + 1 + and then (if + Structural_Valid (Cursors (F_Gateway_Internet_Address)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + then + Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size + and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum + and then Cursors (F_Gateway_Internet_Address).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address + and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) + and then (if + Structural_Valid (Cursors (F_Identifier)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + then + Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size + and then Cursors (F_Identifier).Predecessor = F_Checksum + and then Cursors (F_Identifier).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Sequence_Number)) + then + Cursors (F_Sequence_Number).Last - Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size + and then Cursors (F_Sequence_Number).Predecessor = F_Identifier + and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) + and then Cursors (F_Data).Predecessor = F_Sequence_Number + and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) + and then (if + Structural_Valid (Cursors (F_Originate_Timestamp)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + then + Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number + and then Cursors (F_Originate_Timestamp).First = Cursors (F_Sequence_Number).Last + 1 + and then (if + Structural_Valid (Cursors (F_Receive_Timestamp)) + then + Cursors (F_Receive_Timestamp).Last - Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp + and then Cursors (F_Receive_Timestamp).First = Cursors (F_Originate_Timestamp).Last + 1 + and then (if + Structural_Valid (Cursors (F_Transmit_Timestamp)) + then + Cursors (F_Transmit_Timestamp).Last - Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp + and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) + and then (if + Structural_Valid (Cursors (F_Pointer)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + then + Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size + and then Cursors (F_Pointer).Predecessor = F_Checksum + and then Cursors (F_Pointer).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Unused_24)) + then + Cursors (F_Unused_24).Last - Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size + and then Cursors (F_Unused_24).Predecessor = F_Pointer + and then Cursors (F_Unused_24).First = Cursors (F_Pointer).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Unused_24 + and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) + and then (if + Structural_Valid (Cursors (F_Unused_32)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + then + Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size + and then Cursors (F_Unused_32).Predecessor = F_Checksum + and then Cursors (F_Unused_32).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Unused_32 + and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) + and then (if + Structural_Valid (Cursors (F_Code_Redirect)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + then + Cursors (F_Code_Redirect).Last - Cursors (F_Code_Redirect).First + 1 = RFLX.ICMP.Code_Redirect_Base'Size + and then Cursors (F_Code_Redirect).Predecessor = F_Tag + and then Cursors (F_Code_Redirect).First = Cursors (F_Tag).Last + 1 + and then (if + Structural_Valid (Cursors (F_Checksum)) + then + Cursors (F_Checksum).Last - Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size + and then Cursors (F_Checksum).Predecessor = F_Code_Redirect + and then Cursors (F_Checksum).First = Cursors (F_Code_Redirect).Last + 1 + and then (if + Structural_Valid (Cursors (F_Gateway_Internet_Address)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + then + Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size + and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum + and then Cursors (F_Gateway_Internet_Address).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address + and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) + and then (if + Structural_Valid (Cursors (F_Identifier)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + then + Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size + and then Cursors (F_Identifier).Predecessor = F_Checksum + and then Cursors (F_Identifier).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Sequence_Number)) + then + Cursors (F_Sequence_Number).Last - Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size + and then Cursors (F_Sequence_Number).Predecessor = F_Identifier + and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) + and then Cursors (F_Data).Predecessor = F_Sequence_Number + and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) + and then (if + Structural_Valid (Cursors (F_Originate_Timestamp)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + then + Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number + and then Cursors (F_Originate_Timestamp).First = Cursors (F_Sequence_Number).Last + 1 + and then (if + Structural_Valid (Cursors (F_Receive_Timestamp)) + then + Cursors (F_Receive_Timestamp).Last - Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp + and then Cursors (F_Receive_Timestamp).First = Cursors (F_Originate_Timestamp).Last + 1 + and then (if + Structural_Valid (Cursors (F_Transmit_Timestamp)) + then + Cursors (F_Transmit_Timestamp).Last - Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp + and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) + and then (if + Structural_Valid (Cursors (F_Pointer)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + then + Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size + and then Cursors (F_Pointer).Predecessor = F_Checksum + and then Cursors (F_Pointer).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Unused_24)) + then + Cursors (F_Unused_24).Last - Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size + and then Cursors (F_Unused_24).Predecessor = F_Pointer + and then Cursors (F_Unused_24).First = Cursors (F_Pointer).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Unused_24 + and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) + and then (if + Structural_Valid (Cursors (F_Unused_32)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + then + Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size + and then Cursors (F_Unused_32).Predecessor = F_Checksum + and then Cursors (F_Unused_32).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Unused_32 + and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) + and then (if + Structural_Valid (Cursors (F_Code_Time_Exceeded)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + then + Cursors (F_Code_Time_Exceeded).Last - Cursors (F_Code_Time_Exceeded).First + 1 = RFLX.ICMP.Code_Time_Exceeded_Base'Size + and then Cursors (F_Code_Time_Exceeded).Predecessor = F_Tag + and then Cursors (F_Code_Time_Exceeded).First = Cursors (F_Tag).Last + 1 + and then (if + Structural_Valid (Cursors (F_Checksum)) + then + Cursors (F_Checksum).Last - Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size + and then Cursors (F_Checksum).Predecessor = F_Code_Time_Exceeded + and then Cursors (F_Checksum).First = Cursors (F_Code_Time_Exceeded).Last + 1 + and then (if + Structural_Valid (Cursors (F_Gateway_Internet_Address)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + then + Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size + and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum + and then Cursors (F_Gateway_Internet_Address).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address + and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) + and then (if + Structural_Valid (Cursors (F_Identifier)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + then + Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size + and then Cursors (F_Identifier).Predecessor = F_Checksum + and then Cursors (F_Identifier).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Sequence_Number)) + then + Cursors (F_Sequence_Number).Last - Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size + and then Cursors (F_Sequence_Number).Predecessor = F_Identifier + and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) + and then Cursors (F_Data).Predecessor = F_Sequence_Number + and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) + and then (if + Structural_Valid (Cursors (F_Originate_Timestamp)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + then + Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number + and then Cursors (F_Originate_Timestamp).First = Cursors (F_Sequence_Number).Last + 1 + and then (if + Structural_Valid (Cursors (F_Receive_Timestamp)) + then + Cursors (F_Receive_Timestamp).Last - Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp + and then Cursors (F_Receive_Timestamp).First = Cursors (F_Originate_Timestamp).Last + 1 + and then (if + Structural_Valid (Cursors (F_Transmit_Timestamp)) + then + Cursors (F_Transmit_Timestamp).Last - Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp + and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) + and then (if + Structural_Valid (Cursors (F_Pointer)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + then + Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size + and then Cursors (F_Pointer).Predecessor = F_Checksum + and then Cursors (F_Pointer).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Unused_24)) + then + Cursors (F_Unused_24).Last - Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size + and then Cursors (F_Unused_24).Predecessor = F_Pointer + and then Cursors (F_Unused_24).First = Cursors (F_Pointer).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Unused_24 + and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) + and then (if + Structural_Valid (Cursors (F_Unused_32)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + then + Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size + and then Cursors (F_Unused_32).Predecessor = F_Checksum + and then Cursors (F_Unused_32).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Unused_32 + and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) + and then (if + Structural_Valid (Cursors (F_Code_Zero)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + then + Cursors (F_Code_Zero).Last - Cursors (F_Code_Zero).First + 1 = RFLX.ICMP.Code_Zero_Base'Size + and then Cursors (F_Code_Zero).Predecessor = F_Tag + and then Cursors (F_Code_Zero).First = Cursors (F_Tag).Last + 1 + and then (if + Structural_Valid (Cursors (F_Checksum)) + then + Cursors (F_Checksum).Last - Cursors (F_Checksum).First + 1 = RFLX.ICMP.Checksum'Size + and then Cursors (F_Checksum).Predecessor = F_Code_Zero + and then Cursors (F_Checksum).First = Cursors (F_Code_Zero).Last + 1 + and then (if + Structural_Valid (Cursors (F_Gateway_Internet_Address)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + then + Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size + and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum + and then Cursors (F_Gateway_Internet_Address).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address + and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) + and then (if + Structural_Valid (Cursors (F_Identifier)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + then + Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size + and then Cursors (F_Identifier).Predecessor = F_Checksum + and then Cursors (F_Identifier).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Sequence_Number)) + then + Cursors (F_Sequence_Number).Last - Cursors (F_Sequence_Number).First + 1 = RFLX.ICMP.Sequence_Number'Size + and then Cursors (F_Sequence_Number).Predecessor = F_Identifier + and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) + and then Cursors (F_Data).Predecessor = F_Sequence_Number + and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) + and then (if + Structural_Valid (Cursors (F_Originate_Timestamp)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + then + Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number + and then Cursors (F_Originate_Timestamp).First = Cursors (F_Sequence_Number).Last + 1 + and then (if + Structural_Valid (Cursors (F_Receive_Timestamp)) + then + Cursors (F_Receive_Timestamp).Last - Cursors (F_Receive_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Receive_Timestamp).Predecessor = F_Originate_Timestamp + and then Cursors (F_Receive_Timestamp).First = Cursors (F_Originate_Timestamp).Last + 1 + and then (if + Structural_Valid (Cursors (F_Transmit_Timestamp)) + then + Cursors (F_Transmit_Timestamp).Last - Cursors (F_Transmit_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size + and then Cursors (F_Transmit_Timestamp).Predecessor = F_Receive_Timestamp + and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) + and then (if + Structural_Valid (Cursors (F_Pointer)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + then + Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size + and then Cursors (F_Pointer).Predecessor = F_Checksum + and then Cursors (F_Pointer).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Unused_24)) + then + Cursors (F_Unused_24).Last - Cursors (F_Unused_24).First + 1 = RFLX.ICMP.Unused_24_Base'Size + and then Cursors (F_Unused_24).Predecessor = F_Pointer + and then Cursors (F_Unused_24).First = Cursors (F_Pointer).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Unused_24 + and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) + and then (if + Structural_Valid (Cursors (F_Unused_32)) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + then + Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size + and then Cursors (F_Unused_32).Predecessor = F_Checksum + and then Cursors (F_Unused_32).First = Cursors (F_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 224 + and then Cursors (F_Data).Predecessor = F_Unused_32 + and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Tag) + and then Field_First (Ctx, F_Tag) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Tag) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Tag) + and then Invalid (Ctx, F_Code_Destination_Unreachable) + and then Invalid (Ctx, F_Code_Redirect) + and then Invalid (Ctx, F_Code_Time_Exceeded) + and then Invalid (Ctx, F_Code_Zero) + and then Invalid (Ctx, F_Checksum) + and then Invalid (Ctx, F_Gateway_Internet_Address) + and then Invalid (Ctx, F_Identifier) + and then Invalid (Ctx, F_Pointer) + and then Invalid (Ctx, F_Unused_32) + and then Invalid (Ctx, F_Sequence_Number) + and then Invalid (Ctx, F_Unused_24) + and then Invalid (Ctx, F_Originate_Timestamp) + and then Invalid (Ctx, F_Data) + and then Invalid (Ctx, F_Receive_Timestamp) + and then Invalid (Ctx, F_Transmit_Timestamp)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Tag => + True, + when others => + False), + when F_Tag => + (case Fld is + when F_Code_Destination_Unreachable => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)), + when F_Code_Redirect => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)), + when F_Code_Time_Exceeded => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)), + when F_Code_Zero => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)), + when others => + False), + when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => + (case Fld is + when F_Checksum => + True, + when others => + False), + when F_Checksum => + (case Fld is + when F_Gateway_Internet_Address => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)), + when F_Identifier => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)), + when F_Pointer => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)), + when F_Unused_32 => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)), + when others => + False), + when F_Gateway_Internet_Address => + (case Fld is + when F_Data => + True, + when others => + False), + when F_Identifier => + (case Fld is + when F_Sequence_Number => + True, + when others => + False), + when F_Pointer => + (case Fld is + when F_Unused_24 => + True, + when others => + False), + when F_Unused_32 => + (case Fld is + when F_Data => + True, + when others => + False), + when F_Sequence_Number => + (case Fld is + when F_Data => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)), + when F_Originate_Timestamp => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)), + when others => + False), + when F_Unused_24 => + (case Fld is + when F_Data => + True, + when others => + False), + when F_Originate_Timestamp => + (case Fld is + when F_Receive_Timestamp => + True, + when others => + False), + when F_Data => + False, + when F_Receive_Timestamp => + (case Fld is + when F_Transmit_Timestamp => + True, + when others => + False), + when F_Transmit_Timestamp | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial => + True, + when F_Tag => + RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)), + when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => + True, + when F_Checksum => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)), + when F_Gateway_Internet_Address | F_Identifier | F_Pointer | F_Unused_32 => + True, + when F_Sequence_Number => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)), + when F_Unused_24 | F_Originate_Timestamp | F_Data | F_Receive_Timestamp | F_Transmit_Timestamp => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Tag => + RFLX.ICMP.Tag_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Tag => + (case Fld is + when F_Code_Destination_Unreachable => + RFLX.ICMP.Code_Destination_Unreachable_Base'Size, + when F_Code_Redirect => + RFLX.ICMP.Code_Redirect_Base'Size, + when F_Code_Time_Exceeded => + RFLX.ICMP.Code_Time_Exceeded_Base'Size, + when F_Code_Zero => + RFLX.ICMP.Code_Zero_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => + (case Fld is + when F_Checksum => + RFLX.ICMP.Checksum'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Checksum => + (case Fld is + when F_Gateway_Internet_Address => + RFLX.ICMP.Gateway_Internet_Address'Size, + when F_Identifier => + RFLX.ICMP.Identifier'Size, + when F_Pointer => + RFLX.ICMP.Pointer'Size, + when F_Unused_32 => + RFLX.ICMP.Unused_32_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Gateway_Internet_Address => + (case Fld is + when F_Data => + 224, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Identifier => + (case Fld is + when F_Sequence_Number => + RFLX.ICMP.Sequence_Number'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Pointer => + (case Fld is + when F_Unused_24 => + RFLX.ICMP.Unused_24_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Unused_32 => + (case Fld is + when F_Data => + 224, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Sequence_Number => + (case Fld is + when F_Data => + RFLX_Types.Bit_Length (Ctx.Last) - RFLX_Types.Bit_Length (Ctx.Cursors (F_Sequence_Number).Last), + when F_Originate_Timestamp => + RFLX.ICMP.Timestamp'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Unused_24 => + (case Fld is + when F_Data => + 224, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Originate_Timestamp => + (case Fld is + when F_Receive_Timestamp => + RFLX.ICMP.Timestamp'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Data => + 0, + when F_Receive_Timestamp => + (case Fld is + when F_Transmit_Timestamp => + RFLX.ICMP.Timestamp'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Transmit_Timestamp | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Tag => + Ctx.First, + when F_Code_Destination_Unreachable => + (if + Ctx.Cursors (Fld).Predecessor = F_Tag + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Code_Redirect => + (if + Ctx.Cursors (Fld).Predecessor = F_Tag + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Code_Time_Exceeded => + (if + Ctx.Cursors (Fld).Predecessor = F_Tag + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Code_Zero => + (if + Ctx.Cursors (Fld).Predecessor = F_Tag + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Checksum => + (if + Ctx.Cursors (Fld).Predecessor = F_Code_Destination_Unreachable + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + elsif + Ctx.Cursors (Fld).Predecessor = F_Code_Redirect + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + elsif + Ctx.Cursors (Fld).Predecessor = F_Code_Time_Exceeded + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + elsif + Ctx.Cursors (Fld).Predecessor = F_Code_Zero + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Gateway_Internet_Address => + (if + Ctx.Cursors (Fld).Predecessor = F_Checksum + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Identifier => + (if + Ctx.Cursors (Fld).Predecessor = F_Checksum + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Pointer => + (if + Ctx.Cursors (Fld).Predecessor = F_Checksum + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Unused_32 => + (if + Ctx.Cursors (Fld).Predecessor = F_Checksum + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Sequence_Number => + (if + Ctx.Cursors (Fld).Predecessor = F_Identifier + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Unused_24 => + (if + Ctx.Cursors (Fld).Predecessor = F_Pointer + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Originate_Timestamp => + (if + Ctx.Cursors (Fld).Predecessor = F_Sequence_Number + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Data => + (if + Ctx.Cursors (Fld).Predecessor = F_Gateway_Internet_Address + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + elsif + Ctx.Cursors (Fld).Predecessor = F_Sequence_Number + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + elsif + Ctx.Cursors (Fld).Predecessor = F_Unused_24 + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + elsif + Ctx.Cursors (Fld).Predecessor = F_Unused_32 + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Receive_Timestamp => + (if + Ctx.Cursors (Fld).Predecessor = F_Originate_Timestamp + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Transmit_Timestamp => + (if + Ctx.Cursors (Fld).Predecessor = F_Receive_Timestamp + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Tag => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => + (Valid (Ctx.Cursors (F_Tag)) + and Ctx.Cursors (Fld).Predecessor = F_Tag), + when F_Checksum => + (Valid (Ctx.Cursors (F_Code_Destination_Unreachable)) + and Ctx.Cursors (Fld).Predecessor = F_Code_Destination_Unreachable) + or (Valid (Ctx.Cursors (F_Code_Redirect)) + and Ctx.Cursors (Fld).Predecessor = F_Code_Redirect) + or (Valid (Ctx.Cursors (F_Code_Time_Exceeded)) + and Ctx.Cursors (Fld).Predecessor = F_Code_Time_Exceeded) + or (Valid (Ctx.Cursors (F_Code_Zero)) + and Ctx.Cursors (Fld).Predecessor = F_Code_Zero), + when F_Gateway_Internet_Address | F_Identifier | F_Pointer | F_Unused_32 => + (Valid (Ctx.Cursors (F_Checksum)) + and Ctx.Cursors (Fld).Predecessor = F_Checksum), + when F_Sequence_Number => + (Valid (Ctx.Cursors (F_Identifier)) + and Ctx.Cursors (Fld).Predecessor = F_Identifier), + when F_Unused_24 => + (Valid (Ctx.Cursors (F_Pointer)) + and Ctx.Cursors (Fld).Predecessor = F_Pointer), + when F_Originate_Timestamp => + (Valid (Ctx.Cursors (F_Sequence_Number)) + and Ctx.Cursors (Fld).Predecessor = F_Sequence_Number), + when F_Data => + (Valid (Ctx.Cursors (F_Gateway_Internet_Address)) + and Ctx.Cursors (Fld).Predecessor = F_Gateway_Internet_Address) + or (Valid (Ctx.Cursors (F_Sequence_Number)) + and Ctx.Cursors (Fld).Predecessor = F_Sequence_Number) + or (Valid (Ctx.Cursors (F_Unused_24)) + and Ctx.Cursors (Fld).Predecessor = F_Unused_24) + or (Valid (Ctx.Cursors (F_Unused_32)) + and Ctx.Cursors (Fld).Predecessor = F_Unused_32), + when F_Receive_Timestamp => + (Valid (Ctx.Cursors (F_Originate_Timestamp)) + and Ctx.Cursors (Fld).Predecessor = F_Originate_Timestamp), + when F_Transmit_Timestamp => + (Valid (Ctx.Cursors (F_Receive_Timestamp)) + and Ctx.Cursors (Fld).Predecessor = F_Receive_Timestamp), + when F_Final => + (Structural_Valid (Ctx.Cursors (F_Data)) + and Ctx.Cursors (Fld).Predecessor = F_Data) + or (Valid (Ctx.Cursors (F_Sequence_Number)) + and Ctx.Cursors (Fld).Predecessor = F_Sequence_Number) + or (Valid (Ctx.Cursors (F_Transmit_Timestamp)) + and Ctx.Cursors (Fld).Predecessor = F_Transmit_Timestamp))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Tag) + and then ((Valid (Ctx, F_Code_Destination_Unreachable) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + and then Valid (Ctx, F_Checksum) + and then ((Valid (Ctx, F_Gateway_Internet_Address) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then Structural_Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Identifier) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then Valid (Ctx, F_Sequence_Number) + and then ((Structural_Valid (Ctx, F_Data) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + or (Valid (Ctx, F_Originate_Timestamp) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then Valid (Ctx, F_Receive_Timestamp) + and then Valid (Ctx, F_Transmit_Timestamp)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or (Valid (Ctx, F_Pointer) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then Valid (Ctx, F_Unused_24) + and then Structural_Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Unused_32) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then Structural_Valid (Ctx, F_Data)))) + or (Valid (Ctx, F_Code_Redirect) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then Valid (Ctx, F_Checksum) + and then ((Valid (Ctx, F_Gateway_Internet_Address) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then Structural_Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Identifier) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then Valid (Ctx, F_Sequence_Number) + and then ((Structural_Valid (Ctx, F_Data) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + or (Valid (Ctx, F_Originate_Timestamp) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then Valid (Ctx, F_Receive_Timestamp) + and then Valid (Ctx, F_Transmit_Timestamp)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or (Valid (Ctx, F_Pointer) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then Valid (Ctx, F_Unused_24) + and then Structural_Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Unused_32) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then Structural_Valid (Ctx, F_Data)))) + or (Valid (Ctx, F_Code_Time_Exceeded) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + and then Valid (Ctx, F_Checksum) + and then ((Valid (Ctx, F_Gateway_Internet_Address) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then Structural_Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Identifier) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then Valid (Ctx, F_Sequence_Number) + and then ((Structural_Valid (Ctx, F_Data) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + or (Valid (Ctx, F_Originate_Timestamp) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then Valid (Ctx, F_Receive_Timestamp) + and then Valid (Ctx, F_Transmit_Timestamp)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or (Valid (Ctx, F_Pointer) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then Valid (Ctx, F_Unused_24) + and then Structural_Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Unused_32) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then Structural_Valid (Ctx, F_Data)))) + or (Valid (Ctx, F_Code_Zero) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + and then Valid (Ctx, F_Checksum) + and then ((Valid (Ctx, F_Gateway_Internet_Address) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then Structural_Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Identifier) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then Valid (Ctx, F_Sequence_Number) + and then ((Structural_Valid (Ctx, F_Data) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + or (Valid (Ctx, F_Originate_Timestamp) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then Valid (Ctx, F_Receive_Timestamp) + and then Valid (Ctx, F_Transmit_Timestamp)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or (Valid (Ctx, F_Pointer) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then Valid (Ctx, F_Unused_24) + and then Structural_Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Unused_32) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then Structural_Valid (Ctx, F_Data)))))); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Tag) + and then ((Valid (Ctx, F_Code_Destination_Unreachable) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + and then Valid (Ctx, F_Checksum) + and then ((Valid (Ctx, F_Gateway_Internet_Address) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Identifier) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then Valid (Ctx, F_Sequence_Number) + and then ((Valid (Ctx, F_Data) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + or (Valid (Ctx, F_Originate_Timestamp) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then Valid (Ctx, F_Receive_Timestamp) + and then Valid (Ctx, F_Transmit_Timestamp)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or (Valid (Ctx, F_Pointer) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then Valid (Ctx, F_Unused_24) + and then Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Unused_32) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then Valid (Ctx, F_Data)))) + or (Valid (Ctx, F_Code_Redirect) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then Valid (Ctx, F_Checksum) + and then ((Valid (Ctx, F_Gateway_Internet_Address) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Identifier) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then Valid (Ctx, F_Sequence_Number) + and then ((Valid (Ctx, F_Data) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + or (Valid (Ctx, F_Originate_Timestamp) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then Valid (Ctx, F_Receive_Timestamp) + and then Valid (Ctx, F_Transmit_Timestamp)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or (Valid (Ctx, F_Pointer) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then Valid (Ctx, F_Unused_24) + and then Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Unused_32) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then Valid (Ctx, F_Data)))) + or (Valid (Ctx, F_Code_Time_Exceeded) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + and then Valid (Ctx, F_Checksum) + and then ((Valid (Ctx, F_Gateway_Internet_Address) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Identifier) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then Valid (Ctx, F_Sequence_Number) + and then ((Valid (Ctx, F_Data) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + or (Valid (Ctx, F_Originate_Timestamp) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then Valid (Ctx, F_Receive_Timestamp) + and then Valid (Ctx, F_Transmit_Timestamp)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or (Valid (Ctx, F_Pointer) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then Valid (Ctx, F_Unused_24) + and then Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Unused_32) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then Valid (Ctx, F_Data)))) + or (Valid (Ctx, F_Code_Zero) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + and then Valid (Ctx, F_Checksum) + and then ((Valid (Ctx, F_Gateway_Internet_Address) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Identifier) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then Valid (Ctx, F_Sequence_Number) + and then ((Valid (Ctx, F_Data) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + or (Valid (Ctx, F_Originate_Timestamp) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then Valid (Ctx, F_Receive_Timestamp) + and then Valid (Ctx, F_Transmit_Timestamp)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or (Valid (Ctx, F_Pointer) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then Valid (Ctx, F_Unused_24) + and then Valid (Ctx, F_Data)) + or (Valid (Ctx, F_Unused_32) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then Valid (Ctx, F_Data)))))); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Tag) + or Incomplete (Ctx, F_Code_Destination_Unreachable) + or Incomplete (Ctx, F_Code_Redirect) + or Incomplete (Ctx, F_Code_Time_Exceeded) + or Incomplete (Ctx, F_Code_Zero) + or Incomplete (Ctx, F_Checksum) + or Incomplete (Ctx, F_Gateway_Internet_Address) + or Incomplete (Ctx, F_Identifier) + or Incomplete (Ctx, F_Pointer) + or Incomplete (Ctx, F_Unused_32) + or Incomplete (Ctx, F_Sequence_Number) + or Incomplete (Ctx, F_Unused_24) + or Incomplete (Ctx, F_Originate_Timestamp) + or Incomplete (Ctx, F_Data) + or Incomplete (Ctx, F_Receive_Timestamp) + or Incomplete (Ctx, F_Transmit_Timestamp)); + + function Get_Tag (Ctx : Context) return RFLX.ICMP.Tag is + (To_Actual (Ctx.Cursors (F_Tag).Value.Tag_Value)); + + function Get_Code_Destination_Unreachable (Ctx : Context) return RFLX.ICMP.Code_Destination_Unreachable is + (To_Actual (Ctx.Cursors (F_Code_Destination_Unreachable).Value.Code_Destination_Unreachable_Value)); + + function Get_Code_Redirect (Ctx : Context) return RFLX.ICMP.Code_Redirect is + (To_Actual (Ctx.Cursors (F_Code_Redirect).Value.Code_Redirect_Value)); + + function Get_Code_Time_Exceeded (Ctx : Context) return RFLX.ICMP.Code_Time_Exceeded is + (To_Actual (Ctx.Cursors (F_Code_Time_Exceeded).Value.Code_Time_Exceeded_Value)); + + function Get_Code_Zero (Ctx : Context) return RFLX.ICMP.Code_Zero is + (To_Actual (Ctx.Cursors (F_Code_Zero).Value.Code_Zero_Value)); + + function Get_Checksum (Ctx : Context) return RFLX.ICMP.Checksum is + (To_Actual (Ctx.Cursors (F_Checksum).Value.Checksum_Value)); + + function Get_Gateway_Internet_Address (Ctx : Context) return RFLX.ICMP.Gateway_Internet_Address is + (To_Actual (Ctx.Cursors (F_Gateway_Internet_Address).Value.Gateway_Internet_Address_Value)); + + function Get_Identifier (Ctx : Context) return RFLX.ICMP.Identifier is + (To_Actual (Ctx.Cursors (F_Identifier).Value.Identifier_Value)); + + function Get_Pointer (Ctx : Context) return RFLX.ICMP.Pointer is + (To_Actual (Ctx.Cursors (F_Pointer).Value.Pointer_Value)); + + function Get_Unused_32 (Ctx : Context) return RFLX.ICMP.Unused_32 is + (To_Actual (Ctx.Cursors (F_Unused_32).Value.Unused_32_Value)); + + function Get_Sequence_Number (Ctx : Context) return RFLX.ICMP.Sequence_Number is + (To_Actual (Ctx.Cursors (F_Sequence_Number).Value.Sequence_Number_Value)); + + function Get_Unused_24 (Ctx : Context) return RFLX.ICMP.Unused_24 is + (To_Actual (Ctx.Cursors (F_Unused_24).Value.Unused_24_Value)); + + function Get_Originate_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp is + (To_Actual (Ctx.Cursors (F_Originate_Timestamp).Value.Originate_Timestamp_Value)); + + function Get_Receive_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp is + (To_Actual (Ctx.Cursors (F_Receive_Timestamp).Value.Receive_Timestamp_Value)); + + function Get_Transmit_Timestamp (Ctx : Context) return RFLX.ICMP.Timestamp is + (To_Actual (Ctx.Cursors (F_Transmit_Timestamp).Value.Transmit_Timestamp_Value)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.ICMP.Message; diff --git a/tests/spark/generated/rflx-in_ethernet-contains.adb b/tests/spark/generated/rflx-in_ethernet-contains.adb new file mode 100644 index 000000000..a033d379f --- /dev/null +++ b/tests/spark/generated/rflx-in_ethernet-contains.adb @@ -0,0 +1,19 @@ +pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); +pragma Warnings (Off, "redundant conversion"); + +package body RFLX.In_Ethernet.Contains with + SPARK_Mode +is + + procedure Switch_To_Payload (Ethernet_Frame_PDU_Context : in out Ethernet.Frame.Context; IPv4_Packet_SDU_Context : out IPv4.Packet.Context) is + First : constant RFLX_Types.Bit_Index := Ethernet.Frame.Field_First (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload); + Last : constant RFLX_Types.Bit_Index := Ethernet.Frame.Field_Last (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload); + Buffer : RFLX_Types.Bytes_Ptr; + begin + Ethernet.Frame.Take_Buffer (Ethernet_Frame_PDU_Context, Buffer); + pragma Warnings (Off, "unused assignment to ""Buffer"""); + IPv4.Packet.Initialize (IPv4_Packet_SDU_Context, Buffer, First, Last); + pragma Warnings (On, "unused assignment to ""Buffer"""); + end Switch_To_Payload; + +end RFLX.In_Ethernet.Contains; diff --git a/tests/spark/generated/rflx-in_ethernet-contains.ads b/tests/spark/generated/rflx-in_ethernet-contains.ads index bebc368f1..f5a0fcad7 100644 --- a/tests/spark/generated/rflx-in_ethernet-contains.ads +++ b/tests/spark/generated/rflx-in_ethernet-contains.ads @@ -1,9 +1,46 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.In_Ethernet.Generic_Contains; +with RFLX.Ethernet; +use RFLX.Ethernet; with RFLX.Ethernet.Frame; with RFLX.IPv4.Packet; -package RFLX.In_Ethernet.Contains is new RFLX.In_Ethernet.Generic_Contains (RFLX.RFLX_Types, RFLX.Ethernet.Frame, RFLX.IPv4.Packet); +package RFLX.In_Ethernet.Contains with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + use type RFLX_Types.Index, RFLX_Types.Bit_Index; + + function IPv4_Packet_In_Ethernet_Frame_Payload (Ctx : Ethernet.Frame.Context) return Boolean is + (Ethernet.Frame.Has_Buffer (Ctx) + and then Ethernet.Frame.Present (Ctx, Ethernet.Frame.F_Payload) + and then Ethernet.Frame.Valid (Ctx, Ethernet.Frame.F_Type_Length) + and then Ethernet.Frame.Get_Type_Length (Ctx) = 16#800#); + + use type Ethernet.Frame.Field_Cursors; + + procedure Switch_To_Payload (Ethernet_Frame_PDU_Context : in out Ethernet.Frame.Context; IPv4_Packet_SDU_Context : out IPv4.Packet.Context) with + Pre => + not Ethernet_Frame_PDU_Context'Constrained + and not IPv4_Packet_SDU_Context'Constrained + and Ethernet.Frame.Has_Buffer (Ethernet_Frame_PDU_Context) + and Ethernet.Frame.Present (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload) + and Ethernet.Frame.Valid (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Type_Length) + and IPv4_Packet_In_Ethernet_Frame_Payload (Ethernet_Frame_PDU_Context), + Post => + not Ethernet.Frame.Has_Buffer (Ethernet_Frame_PDU_Context) + and IPv4.Packet.Has_Buffer (IPv4_Packet_SDU_Context) + and Ethernet_Frame_PDU_Context.Buffer_First = IPv4_Packet_SDU_Context.Buffer_First + and Ethernet_Frame_PDU_Context.Buffer_Last = IPv4_Packet_SDU_Context.Buffer_Last + and IPv4_Packet_SDU_Context.First = Ethernet.Frame.Field_First (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload) + and IPv4_Packet_SDU_Context.Last = Ethernet.Frame.Field_Last (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload) + and IPv4.Packet.Initialized (IPv4_Packet_SDU_Context) + and Ethernet_Frame_PDU_Context.Buffer_First = Ethernet_Frame_PDU_Context.Buffer_First'Old + and Ethernet_Frame_PDU_Context.Buffer_Last = Ethernet_Frame_PDU_Context.Buffer_Last'Old + and Ethernet_Frame_PDU_Context.First = Ethernet_Frame_PDU_Context.First'Old + and Ethernet.Frame.Context_Cursors (Ethernet_Frame_PDU_Context) = Ethernet.Frame.Context_Cursors (Ethernet_Frame_PDU_Context)'Old; + +end RFLX.In_Ethernet.Contains; diff --git a/tests/spark/generated/rflx-in_ethernet-generic_contains.adb b/tests/spark/generated/rflx-in_ethernet-generic_contains.adb deleted file mode 100644 index 2e9689c5c..000000000 --- a/tests/spark/generated/rflx-in_ethernet-generic_contains.adb +++ /dev/null @@ -1,19 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); - -package body RFLX.In_Ethernet.Generic_Contains with - SPARK_Mode -is - - procedure Switch_To_Payload (Ethernet_Frame_PDU_Context : in out Ethernet_Frame.Context; IPv4_Packet_SDU_Context : out IPv4_Packet.Context) is - First : constant Types.Bit_Index := Ethernet_Frame.Field_First (Ethernet_Frame_PDU_Context, Ethernet_Frame.F_Payload); - Last : constant Types.Bit_Index := Ethernet_Frame.Field_Last (Ethernet_Frame_PDU_Context, Ethernet_Frame.F_Payload); - Buffer : Types.Bytes_Ptr; - begin - Ethernet_Frame.Take_Buffer (Ethernet_Frame_PDU_Context, Buffer); - pragma Warnings (Off, "unused assignment to ""Buffer"""); - IPv4_Packet.Initialize (IPv4_Packet_SDU_Context, Buffer, First, Last); - pragma Warnings (On, "unused assignment to ""Buffer"""); - end Switch_To_Payload; - -end RFLX.In_Ethernet.Generic_Contains; diff --git a/tests/spark/generated/rflx-in_ethernet-generic_contains.ads b/tests/spark/generated/rflx-in_ethernet-generic_contains.ads deleted file mode 100644 index b74f6ee51..000000000 --- a/tests/spark/generated/rflx-in_ethernet-generic_contains.ads +++ /dev/null @@ -1,50 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; -with RFLX.Ethernet; -use RFLX.Ethernet; -with RFLX.Ethernet.Generic_Frame; -with RFLX.IPv4.Generic_Packet; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); - with package Ethernet_Frame is new RFLX.Ethernet.Generic_Frame (Types, others => <>); - with package IPv4_Packet is new RFLX.IPv4.Generic_Packet (Types, others => <>); -package RFLX.In_Ethernet.Generic_Contains with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - use type Types.Index, Types.Bit_Index; - - function IPv4_Packet_In_Ethernet_Frame_Payload (Ctx : Ethernet_Frame.Context) return Boolean is - (Ethernet_Frame.Has_Buffer (Ctx) - and then Ethernet_Frame.Present (Ctx, Ethernet_Frame.F_Payload) - and then Ethernet_Frame.Valid (Ctx, Ethernet_Frame.F_Type_Length) - and then Ethernet_Frame.Get_Type_Length (Ctx) = 16#800#); - - use type Ethernet_Frame.Field_Cursors; - - procedure Switch_To_Payload (Ethernet_Frame_PDU_Context : in out Ethernet_Frame.Context; IPv4_Packet_SDU_Context : out IPv4_Packet.Context) with - Pre => - not Ethernet_Frame_PDU_Context'Constrained - and not IPv4_Packet_SDU_Context'Constrained - and Ethernet_Frame.Has_Buffer (Ethernet_Frame_PDU_Context) - and Ethernet_Frame.Present (Ethernet_Frame_PDU_Context, Ethernet_Frame.F_Payload) - and Ethernet_Frame.Valid (Ethernet_Frame_PDU_Context, Ethernet_Frame.F_Type_Length) - and IPv4_Packet_In_Ethernet_Frame_Payload (Ethernet_Frame_PDU_Context), - Post => - not Ethernet_Frame.Has_Buffer (Ethernet_Frame_PDU_Context) - and IPv4_Packet.Has_Buffer (IPv4_Packet_SDU_Context) - and Ethernet_Frame_PDU_Context.Buffer_First = IPv4_Packet_SDU_Context.Buffer_First - and Ethernet_Frame_PDU_Context.Buffer_Last = IPv4_Packet_SDU_Context.Buffer_Last - and IPv4_Packet_SDU_Context.First = Ethernet_Frame.Field_First (Ethernet_Frame_PDU_Context, Ethernet_Frame.F_Payload) - and IPv4_Packet_SDU_Context.Last = Ethernet_Frame.Field_Last (Ethernet_Frame_PDU_Context, Ethernet_Frame.F_Payload) - and IPv4_Packet.Initialized (IPv4_Packet_SDU_Context) - and Ethernet_Frame_PDU_Context.Buffer_First = Ethernet_Frame_PDU_Context.Buffer_First'Old - and Ethernet_Frame_PDU_Context.Buffer_Last = Ethernet_Frame_PDU_Context.Buffer_Last'Old - and Ethernet_Frame_PDU_Context.First = Ethernet_Frame_PDU_Context.First'Old - and Ethernet_Frame.Context_Cursors (Ethernet_Frame_PDU_Context) = Ethernet_Frame.Context_Cursors (Ethernet_Frame_PDU_Context)'Old; - -end RFLX.In_Ethernet.Generic_Contains; diff --git a/tests/spark/generated/rflx-in_ipv4-contains.adb b/tests/spark/generated/rflx-in_ipv4-contains.adb new file mode 100644 index 000000000..345a3fe96 --- /dev/null +++ b/tests/spark/generated/rflx-in_ipv4-contains.adb @@ -0,0 +1,30 @@ +pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); +pragma Warnings (Off, "redundant conversion"); + +package body RFLX.In_IPv4.Contains with + SPARK_Mode +is + + procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4.Packet.Context; UDP_Datagram_SDU_Context : out UDP.Datagram.Context) is + First : constant RFLX_Types.Bit_Index := IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); + Last : constant RFLX_Types.Bit_Index := IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); + Buffer : RFLX_Types.Bytes_Ptr; + begin + IPv4.Packet.Take_Buffer (IPv4_Packet_PDU_Context, Buffer); + pragma Warnings (Off, "unused assignment to ""Buffer"""); + UDP.Datagram.Initialize (UDP_Datagram_SDU_Context, Buffer, First, Last); + pragma Warnings (On, "unused assignment to ""Buffer"""); + end Switch_To_Payload; + + procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4.Packet.Context; ICMP_Message_SDU_Context : out ICMP.Message.Context) is + First : constant RFLX_Types.Bit_Index := IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); + Last : constant RFLX_Types.Bit_Index := IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); + Buffer : RFLX_Types.Bytes_Ptr; + begin + IPv4.Packet.Take_Buffer (IPv4_Packet_PDU_Context, Buffer); + pragma Warnings (Off, "unused assignment to ""Buffer"""); + ICMP.Message.Initialize (ICMP_Message_SDU_Context, Buffer, First, Last); + pragma Warnings (On, "unused assignment to ""Buffer"""); + end Switch_To_Payload; + +end RFLX.In_IPv4.Contains; diff --git a/tests/spark/generated/rflx-in_ipv4-contains.ads b/tests/spark/generated/rflx-in_ipv4-contains.ads index 737645773..7ca536449 100644 --- a/tests/spark/generated/rflx-in_ipv4-contains.ads +++ b/tests/spark/generated/rflx-in_ipv4-contains.ads @@ -1,10 +1,76 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.In_IPv4.Generic_Contains; +with RFLX.IPv4; +use RFLX.IPv4; with RFLX.IPv4.Packet; with RFLX.UDP.Datagram; with RFLX.ICMP.Message; -package RFLX.In_IPv4.Contains is new RFLX.In_IPv4.Generic_Contains (RFLX.RFLX_Types, RFLX.IPv4.Packet, RFLX.UDP.Datagram, RFLX.ICMP.Message); +package RFLX.In_IPv4.Contains with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + use type RFLX_Types.Index, RFLX_Types.Bit_Index; + + function UDP_Datagram_In_IPv4_Packet_Payload (Ctx : IPv4.Packet.Context) return Boolean is + (IPv4.Packet.Has_Buffer (Ctx) + and then IPv4.Packet.Present (Ctx, IPv4.Packet.F_Payload) + and then IPv4.Packet.Valid (Ctx, IPv4.Packet.F_Protocol) + and then IPv4.Packet.Get_Protocol (Ctx).Known + and then IPv4.Packet.Get_Protocol (Ctx).Enum = IPv4.PROTOCOL_UDP); + + use type IPv4.Packet.Field_Cursors; + + procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4.Packet.Context; UDP_Datagram_SDU_Context : out UDP.Datagram.Context) with + Pre => + not IPv4_Packet_PDU_Context'Constrained + and not UDP_Datagram_SDU_Context'Constrained + and IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) + and IPv4.Packet.Present (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) + and IPv4.Packet.Valid (IPv4_Packet_PDU_Context, IPv4.Packet.F_Protocol) + and UDP_Datagram_In_IPv4_Packet_Payload (IPv4_Packet_PDU_Context), + Post => + not IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) + and UDP.Datagram.Has_Buffer (UDP_Datagram_SDU_Context) + and IPv4_Packet_PDU_Context.Buffer_First = UDP_Datagram_SDU_Context.Buffer_First + and IPv4_Packet_PDU_Context.Buffer_Last = UDP_Datagram_SDU_Context.Buffer_Last + and UDP_Datagram_SDU_Context.First = IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) + and UDP_Datagram_SDU_Context.Last = IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) + and UDP.Datagram.Initialized (UDP_Datagram_SDU_Context) + and IPv4_Packet_PDU_Context.Buffer_First = IPv4_Packet_PDU_Context.Buffer_First'Old + and IPv4_Packet_PDU_Context.Buffer_Last = IPv4_Packet_PDU_Context.Buffer_Last'Old + and IPv4_Packet_PDU_Context.First = IPv4_Packet_PDU_Context.First'Old + and IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context) = IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context)'Old; + + function ICMP_Message_In_IPv4_Packet_Payload (Ctx : IPv4.Packet.Context) return Boolean is + (IPv4.Packet.Has_Buffer (Ctx) + and then IPv4.Packet.Present (Ctx, IPv4.Packet.F_Payload) + and then IPv4.Packet.Valid (Ctx, IPv4.Packet.F_Protocol) + and then IPv4.Packet.Get_Protocol (Ctx).Known + and then IPv4.Packet.Get_Protocol (Ctx).Enum = IPv4.PROTOCOL_ICMP); + + procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4.Packet.Context; ICMP_Message_SDU_Context : out ICMP.Message.Context) with + Pre => + not IPv4_Packet_PDU_Context'Constrained + and not ICMP_Message_SDU_Context'Constrained + and IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) + and IPv4.Packet.Present (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) + and IPv4.Packet.Valid (IPv4_Packet_PDU_Context, IPv4.Packet.F_Protocol) + and ICMP_Message_In_IPv4_Packet_Payload (IPv4_Packet_PDU_Context), + Post => + not IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) + and ICMP.Message.Has_Buffer (ICMP_Message_SDU_Context) + and IPv4_Packet_PDU_Context.Buffer_First = ICMP_Message_SDU_Context.Buffer_First + and IPv4_Packet_PDU_Context.Buffer_Last = ICMP_Message_SDU_Context.Buffer_Last + and ICMP_Message_SDU_Context.First = IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) + and ICMP_Message_SDU_Context.Last = IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) + and ICMP.Message.Initialized (ICMP_Message_SDU_Context) + and IPv4_Packet_PDU_Context.Buffer_First = IPv4_Packet_PDU_Context.Buffer_First'Old + and IPv4_Packet_PDU_Context.Buffer_Last = IPv4_Packet_PDU_Context.Buffer_Last'Old + and IPv4_Packet_PDU_Context.First = IPv4_Packet_PDU_Context.First'Old + and IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context) = IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context)'Old; + +end RFLX.In_IPv4.Contains; diff --git a/tests/spark/generated/rflx-in_ipv4-generic_contains.adb b/tests/spark/generated/rflx-in_ipv4-generic_contains.adb deleted file mode 100644 index f70f577f6..000000000 --- a/tests/spark/generated/rflx-in_ipv4-generic_contains.adb +++ /dev/null @@ -1,30 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); - -package body RFLX.In_IPv4.Generic_Contains with - SPARK_Mode -is - - procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4_Packet.Context; UDP_Datagram_SDU_Context : out UDP_Datagram.Context) is - First : constant Types.Bit_Index := IPv4_Packet.Field_First (IPv4_Packet_PDU_Context, IPv4_Packet.F_Payload); - Last : constant Types.Bit_Index := IPv4_Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4_Packet.F_Payload); - Buffer : Types.Bytes_Ptr; - begin - IPv4_Packet.Take_Buffer (IPv4_Packet_PDU_Context, Buffer); - pragma Warnings (Off, "unused assignment to ""Buffer"""); - UDP_Datagram.Initialize (UDP_Datagram_SDU_Context, Buffer, First, Last); - pragma Warnings (On, "unused assignment to ""Buffer"""); - end Switch_To_Payload; - - procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4_Packet.Context; ICMP_Message_SDU_Context : out ICMP_Message.Context) is - First : constant Types.Bit_Index := IPv4_Packet.Field_First (IPv4_Packet_PDU_Context, IPv4_Packet.F_Payload); - Last : constant Types.Bit_Index := IPv4_Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4_Packet.F_Payload); - Buffer : Types.Bytes_Ptr; - begin - IPv4_Packet.Take_Buffer (IPv4_Packet_PDU_Context, Buffer); - pragma Warnings (Off, "unused assignment to ""Buffer"""); - ICMP_Message.Initialize (ICMP_Message_SDU_Context, Buffer, First, Last); - pragma Warnings (On, "unused assignment to ""Buffer"""); - end Switch_To_Payload; - -end RFLX.In_IPv4.Generic_Contains; diff --git a/tests/spark/generated/rflx-in_ipv4-generic_contains.ads b/tests/spark/generated/rflx-in_ipv4-generic_contains.ads deleted file mode 100644 index e08f9e0fe..000000000 --- a/tests/spark/generated/rflx-in_ipv4-generic_contains.ads +++ /dev/null @@ -1,81 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; -with RFLX.IPv4; -use RFLX.IPv4; -with RFLX.IPv4.Generic_Packet; -with RFLX.UDP.Generic_Datagram; -with RFLX.ICMP.Generic_Message; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); - with package IPv4_Packet is new RFLX.IPv4.Generic_Packet (Types, others => <>); - with package UDP_Datagram is new RFLX.UDP.Generic_Datagram (Types, others => <>); - with package ICMP_Message is new RFLX.ICMP.Generic_Message (Types, others => <>); -package RFLX.In_IPv4.Generic_Contains with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - use type Types.Index, Types.Bit_Index; - - function UDP_Datagram_In_IPv4_Packet_Payload (Ctx : IPv4_Packet.Context) return Boolean is - (IPv4_Packet.Has_Buffer (Ctx) - and then IPv4_Packet.Present (Ctx, IPv4_Packet.F_Payload) - and then IPv4_Packet.Valid (Ctx, IPv4_Packet.F_Protocol) - and then IPv4_Packet.Get_Protocol (Ctx).Known - and then IPv4_Packet.Get_Protocol (Ctx).Enum = IPv4.PROTOCOL_UDP); - - use type IPv4_Packet.Field_Cursors; - - procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4_Packet.Context; UDP_Datagram_SDU_Context : out UDP_Datagram.Context) with - Pre => - not IPv4_Packet_PDU_Context'Constrained - and not UDP_Datagram_SDU_Context'Constrained - and IPv4_Packet.Has_Buffer (IPv4_Packet_PDU_Context) - and IPv4_Packet.Present (IPv4_Packet_PDU_Context, IPv4_Packet.F_Payload) - and IPv4_Packet.Valid (IPv4_Packet_PDU_Context, IPv4_Packet.F_Protocol) - and UDP_Datagram_In_IPv4_Packet_Payload (IPv4_Packet_PDU_Context), - Post => - not IPv4_Packet.Has_Buffer (IPv4_Packet_PDU_Context) - and UDP_Datagram.Has_Buffer (UDP_Datagram_SDU_Context) - and IPv4_Packet_PDU_Context.Buffer_First = UDP_Datagram_SDU_Context.Buffer_First - and IPv4_Packet_PDU_Context.Buffer_Last = UDP_Datagram_SDU_Context.Buffer_Last - and UDP_Datagram_SDU_Context.First = IPv4_Packet.Field_First (IPv4_Packet_PDU_Context, IPv4_Packet.F_Payload) - and UDP_Datagram_SDU_Context.Last = IPv4_Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4_Packet.F_Payload) - and UDP_Datagram.Initialized (UDP_Datagram_SDU_Context) - and IPv4_Packet_PDU_Context.Buffer_First = IPv4_Packet_PDU_Context.Buffer_First'Old - and IPv4_Packet_PDU_Context.Buffer_Last = IPv4_Packet_PDU_Context.Buffer_Last'Old - and IPv4_Packet_PDU_Context.First = IPv4_Packet_PDU_Context.First'Old - and IPv4_Packet.Context_Cursors (IPv4_Packet_PDU_Context) = IPv4_Packet.Context_Cursors (IPv4_Packet_PDU_Context)'Old; - - function ICMP_Message_In_IPv4_Packet_Payload (Ctx : IPv4_Packet.Context) return Boolean is - (IPv4_Packet.Has_Buffer (Ctx) - and then IPv4_Packet.Present (Ctx, IPv4_Packet.F_Payload) - and then IPv4_Packet.Valid (Ctx, IPv4_Packet.F_Protocol) - and then IPv4_Packet.Get_Protocol (Ctx).Known - and then IPv4_Packet.Get_Protocol (Ctx).Enum = IPv4.PROTOCOL_ICMP); - - procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4_Packet.Context; ICMP_Message_SDU_Context : out ICMP_Message.Context) with - Pre => - not IPv4_Packet_PDU_Context'Constrained - and not ICMP_Message_SDU_Context'Constrained - and IPv4_Packet.Has_Buffer (IPv4_Packet_PDU_Context) - and IPv4_Packet.Present (IPv4_Packet_PDU_Context, IPv4_Packet.F_Payload) - and IPv4_Packet.Valid (IPv4_Packet_PDU_Context, IPv4_Packet.F_Protocol) - and ICMP_Message_In_IPv4_Packet_Payload (IPv4_Packet_PDU_Context), - Post => - not IPv4_Packet.Has_Buffer (IPv4_Packet_PDU_Context) - and ICMP_Message.Has_Buffer (ICMP_Message_SDU_Context) - and IPv4_Packet_PDU_Context.Buffer_First = ICMP_Message_SDU_Context.Buffer_First - and IPv4_Packet_PDU_Context.Buffer_Last = ICMP_Message_SDU_Context.Buffer_Last - and ICMP_Message_SDU_Context.First = IPv4_Packet.Field_First (IPv4_Packet_PDU_Context, IPv4_Packet.F_Payload) - and ICMP_Message_SDU_Context.Last = IPv4_Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4_Packet.F_Payload) - and ICMP_Message.Initialized (ICMP_Message_SDU_Context) - and IPv4_Packet_PDU_Context.Buffer_First = IPv4_Packet_PDU_Context.Buffer_First'Old - and IPv4_Packet_PDU_Context.Buffer_Last = IPv4_Packet_PDU_Context.Buffer_Last'Old - and IPv4_Packet_PDU_Context.First = IPv4_Packet_PDU_Context.First'Old - and IPv4_Packet.Context_Cursors (IPv4_Packet_PDU_Context) = IPv4_Packet.Context_Cursors (IPv4_Packet_PDU_Context)'Old; - -end RFLX.In_IPv4.Generic_Contains; diff --git a/tests/spark/generated/rflx-in_tlv-contains.ads b/tests/spark/generated/rflx-in_tlv-contains.ads index cb3c75ae1..5dc272368 100644 --- a/tests/spark/generated/rflx-in_tlv-contains.ads +++ b/tests/spark/generated/rflx-in_tlv-contains.ads @@ -1,8 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; -with RFLX.RFLX_Types; -with RFLX.In_TLV.Generic_Contains; +with RFLX.TLV; +use RFLX.TLV; with RFLX.TLV.Message; -package RFLX.In_TLV.Contains is new RFLX.In_TLV.Generic_Contains (RFLX.RFLX_Types, RFLX.TLV.Message); +package RFLX.In_TLV.Contains with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + function Null_Message_In_TLV_Message_Value (Ctx : TLV.Message.Context) return Boolean is + (TLV.Message.Has_Buffer (Ctx) + and then TLV.Message.Structural_Valid (Ctx, TLV.Message.F_Value) + and then not TLV.Message.Present (Ctx, TLV.Message.F_Value)); + +end RFLX.In_TLV.Contains; diff --git a/tests/spark/generated/rflx-in_tlv-generic_contains.ads b/tests/spark/generated/rflx-in_tlv-generic_contains.ads deleted file mode 100644 index 076e32cd6..000000000 --- a/tests/spark/generated/rflx-in_tlv-generic_contains.ads +++ /dev/null @@ -1,22 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; -with RFLX.TLV; -use RFLX.TLV; -with RFLX.TLV.Generic_Message; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); - with package TLV_Message is new RFLX.TLV.Generic_Message (Types, others => <>); -package RFLX.In_TLV.Generic_Contains with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - function Null_Message_In_TLV_Message_Value (Ctx : TLV_Message.Context) return Boolean is - (TLV_Message.Has_Buffer (Ctx) - and then TLV_Message.Structural_Valid (Ctx, TLV_Message.F_Value) - and then not TLV_Message.Present (Ctx, TLV_Message.F_Value)); - -end RFLX.In_TLV.Generic_Contains; diff --git a/tests/spark/generated/rflx-ipv4-generic_option.ads b/tests/spark/generated/rflx-ipv4-generic_option.ads deleted file mode 100644 index ecf9665b7..000000000 --- a/tests/spark/generated/rflx-ipv4-generic_option.ads +++ /dev/null @@ -1,1002 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Builtin_Types; -with RFLX.RFLX_Builtin_Types.Conversions; -use RFLX.RFLX_Builtin_Types.Conversions; -with RFLX.RFLX_Generic_Types; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); -package RFLX.IPv4.Generic_Option with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes, Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Copied, F_Option_Class, F_Option_Number, F_Option_Length, F_Option_Data, F_Final); - - subtype Field is Virtual_Field range F_Copied .. F_Option_Data; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Option_Data | F_Final => - null; - when F_Copied => - Copied_Value : RFLX.RFLX_Builtin_Types.Boolean_Base; - when F_Option_Class => - Option_Class_Value : RFLX.IPv4.Option_Class_Base; - when F_Option_Number => - Option_Number_Value : RFLX.IPv4.Option_Number; - when F_Option_Length => - Option_Length_Value : RFLX.IPv4.Option_Length_Base; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean with - Pre => - Has_Buffer (Ctx) - and Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - function Get_Copied (Ctx : Context) return Boolean with - Pre => - Valid (Ctx, F_Copied); - - function Get_Option_Class (Ctx : Context) return RFLX.IPv4.Option_Class with - Pre => - Valid (Ctx, F_Option_Class); - - function Get_Option_Number (Ctx : Context) return RFLX.IPv4.Option_Number with - Pre => - Valid (Ctx, F_Option_Number); - - function Get_Option_Length (Ctx : Context) return RFLX.IPv4.Option_Length with - Pre => - Valid (Ctx, F_Option_Length); - - pragma Warnings (On, "precondition is always False"); - - generic - with procedure Process_Option_Data (Option_Data : Types.Bytes); - procedure Get_Option_Data (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Option_Data); - - procedure Set_Copied (Ctx : in out Context; Val : Boolean) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Copied) - and then Field_Condition (Ctx, (F_Copied, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Copied) >= Field_Size (Ctx, F_Copied), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Copied) - and Get_Copied (Ctx) = Val - and Invalid (Ctx, F_Option_Class) - and Invalid (Ctx, F_Option_Number) - and Invalid (Ctx, F_Option_Length) - and Invalid (Ctx, F_Option_Data) - and (Predecessor (Ctx, F_Option_Class) = F_Copied - and Valid_Next (Ctx, F_Option_Class)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Copied) = Predecessor (Ctx, F_Copied)'Old - and Valid_Next (Ctx, F_Copied) = Valid_Next (Ctx, F_Copied)'Old; - - procedure Set_Option_Class (Ctx : in out Context; Val : RFLX.IPv4.Option_Class) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Option_Class) - and then Field_Condition (Ctx, (F_Option_Class, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Option_Class) >= Field_Size (Ctx, F_Option_Class), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Option_Class) - and Get_Option_Class (Ctx) = Val - and Invalid (Ctx, F_Option_Number) - and Invalid (Ctx, F_Option_Length) - and Invalid (Ctx, F_Option_Data) - and (Predecessor (Ctx, F_Option_Number) = F_Option_Class - and Valid_Next (Ctx, F_Option_Number)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Option_Class) = Predecessor (Ctx, F_Option_Class)'Old - and Valid_Next (Ctx, F_Option_Class) = Valid_Next (Ctx, F_Option_Class)'Old - and Get_Copied (Ctx) = Get_Copied (Ctx)'Old - and Context_Cursor (Ctx, F_Copied) = Context_Cursor (Ctx, F_Copied)'Old; - - procedure Set_Option_Number (Ctx : in out Context; Val : RFLX.IPv4.Option_Number) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Option_Number) - and then Field_Condition (Ctx, (F_Option_Number, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Option_Number) >= Field_Size (Ctx, F_Option_Number), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Option_Number) - and Get_Option_Number (Ctx) = Val - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Option_Number)) - and Invalid (Ctx, F_Option_Length) - and Invalid (Ctx, F_Option_Data) - and (if - Get_Option_Number (Ctx) > 1 - then - Predecessor (Ctx, F_Option_Length) = F_Option_Number - and Valid_Next (Ctx, F_Option_Length)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Option_Number) = Predecessor (Ctx, F_Option_Number)'Old - and Valid_Next (Ctx, F_Option_Number) = Valid_Next (Ctx, F_Option_Number)'Old - and Get_Copied (Ctx) = Get_Copied (Ctx)'Old - and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old - and Context_Cursor (Ctx, F_Copied) = Context_Cursor (Ctx, F_Copied)'Old - and Context_Cursor (Ctx, F_Option_Class) = Context_Cursor (Ctx, F_Option_Class)'Old; - - procedure Set_Option_Length (Ctx : in out Context; Val : RFLX.IPv4.Option_Length) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Option_Length) - and then Field_Condition (Ctx, (F_Option_Length, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Option_Length) >= Field_Size (Ctx, F_Option_Length), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Option_Length) - and Get_Option_Length (Ctx) = Val - and Invalid (Ctx, F_Option_Data) - and (if - (Types.U64 (To_Base (Get_Option_Class (Ctx))) = Types.U64 (To_Base (Debugging_And_Measurement)) - and Get_Option_Number (Ctx) = 4) - or (Types.U64 (To_Base (Get_Option_Class (Ctx))) = Types.U64 (To_Base (Control)) - and (Get_Option_Number (Ctx) = 9 - or Get_Option_Number (Ctx) = 3 - or Get_Option_Number (Ctx) = 7)) - or (Get_Option_Length (Ctx) = 11 - and Types.U64 (To_Base (Get_Option_Class (Ctx))) = Types.U64 (To_Base (Control)) - and Get_Option_Number (Ctx) = 2) - or (Get_Option_Length (Ctx) = 4 - and Types.U64 (To_Base (Get_Option_Class (Ctx))) = Types.U64 (To_Base (Control)) - and Get_Option_Number (Ctx) = 8) - then - Predecessor (Ctx, F_Option_Data) = F_Option_Length - and Valid_Next (Ctx, F_Option_Data)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Option_Length) = Predecessor (Ctx, F_Option_Length)'Old - and Valid_Next (Ctx, F_Option_Length) = Valid_Next (Ctx, F_Option_Length)'Old - and Get_Copied (Ctx) = Get_Copied (Ctx)'Old - and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old - and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old - and Context_Cursor (Ctx, F_Copied) = Context_Cursor (Ctx, F_Copied)'Old - and Context_Cursor (Ctx, F_Option_Class) = Context_Cursor (Ctx, F_Option_Class)'Old - and Context_Cursor (Ctx, F_Option_Number) = Context_Cursor (Ctx, F_Option_Number)'Old; - - procedure Set_Option_Data_Empty (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Option_Data) - and then Field_Condition (Ctx, (Fld => F_Option_Data)) - and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) - and then Field_First (Ctx, F_Option_Data) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Option_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Option_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Option_Data) = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Option_Data) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Option_Data)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Option_Data) = Predecessor (Ctx, F_Option_Data)'Old - and Valid_Next (Ctx, F_Option_Data) = Valid_Next (Ctx, F_Option_Data)'Old - and Get_Copied (Ctx) = Get_Copied (Ctx)'Old - and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old - and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old - and Get_Option_Length (Ctx) = Get_Option_Length (Ctx)'Old; - - procedure Initialize_Option_Data (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Option_Data) - and then Field_Condition (Ctx, (Fld => F_Option_Data)) - and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) - and then Field_First (Ctx, F_Option_Data) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Option_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Option_Data) mod Types.Byte'Size = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Option_Data) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Option_Data)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Option_Data) = Predecessor (Ctx, F_Option_Data)'Old - and Valid_Next (Ctx, F_Option_Data) = Valid_Next (Ctx, F_Option_Data)'Old - and Get_Copied (Ctx) = Get_Copied (Ctx)'Old - and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old - and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old - and Get_Option_Length (Ctx) = Get_Option_Length (Ctx)'Old; - - procedure Set_Option_Data (Ctx : in out Context; Value : Types.Bytes) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Option_Data) - and then Field_Condition (Ctx, (Fld => F_Option_Data)) - and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) - and then Field_First (Ctx, F_Option_Data) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Option_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Option_Data) mod Types.Byte'Size = 0 - and then Value'Length = Types.Byte_Index (Field_Last (Ctx, F_Option_Data)) - Types.Byte_Index (Field_First (Ctx, F_Option_Data)) + 1, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Option_Data) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Option_Data)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Option_Data) = Predecessor (Ctx, F_Option_Data)'Old - and Valid_Next (Ctx, F_Option_Data) = Valid_Next (Ctx, F_Option_Data)'Old - and Get_Copied (Ctx) = Get_Copied (Ctx)'Old - and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old - and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old - and Get_Option_Length (Ctx) = Get_Option_Length (Ctx)'Old; - - generic - with procedure Process_Option_Data (Option_Data : out Types.Bytes); - with function Valid_Length (Length : Types.Length) return Boolean; - procedure Generic_Set_Option_Data (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Option_Data) - and then Field_Condition (Ctx, (Fld => F_Option_Data)) - and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) - and then Field_First (Ctx, F_Option_Data) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Option_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Option_Data) mod Types.Byte'Size = 0 - and then Valid_Length (Types.Length (Field_Size (Ctx, F_Option_Data) / Types.Byte'Size)), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Option_Data) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Option_Data)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Option_Data) = Predecessor (Ctx, F_Option_Data)'Old - and Valid_Next (Ctx, F_Option_Data) = Valid_Next (Ctx, F_Option_Data)'Old - and Get_Copied (Ctx) = Get_Copied (Ctx)'Old - and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old - and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old - and Get_Option_Length (Ctx) = Get_Option_Length (Ctx)'Old; - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Copied => - Valid (Val.Copied_Value), - when F_Option_Class => - Valid (Val.Option_Class_Value), - when F_Option_Number => - Valid (Val.Option_Number_Value), - when F_Option_Length => - Valid (Val.Option_Length_Value), - when F_Option_Data => - True, - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then ((if - Structural_Valid (Cursors (F_Option_Class)) - then - (Valid (Cursors (F_Copied)) - and then Cursors (F_Option_Class).Predecessor = F_Copied)) - and then (if - Structural_Valid (Cursors (F_Option_Number)) - then - (Valid (Cursors (F_Option_Class)) - and then Cursors (F_Option_Number).Predecessor = F_Option_Class)) - and then (if - Structural_Valid (Cursors (F_Option_Length)) - then - (Valid (Cursors (F_Option_Number)) - and then Cursors (F_Option_Length).Predecessor = F_Option_Number - and then Cursors (F_Option_Number).Value.Option_Number_Value > 1)) - and then (if - Structural_Valid (Cursors (F_Option_Data)) - then - (Valid (Cursors (F_Option_Length)) - and then Cursors (F_Option_Data).Predecessor = F_Option_Length - and then ((Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Debugging_And_Measurement)) - and Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and (Cursors (F_Option_Number).Value.Option_Number_Value = 9 - or Cursors (F_Option_Number).Value.Option_Number_Value = 3 - or Cursors (F_Option_Number).Value.Option_Number_Value = 7)) - or (Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Cursors (F_Option_Number).Value.Option_Number_Value = 2) - or (Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Cursors (F_Option_Number).Value.Option_Number_Value = 8))))) - and then ((if - Invalid (Cursors (F_Copied)) - then - Invalid (Cursors (F_Option_Class))) - and then (if - Invalid (Cursors (F_Option_Class)) - then - Invalid (Cursors (F_Option_Number))) - and then (if - Invalid (Cursors (F_Option_Number)) - then - Invalid (Cursors (F_Option_Length))) - and then (if - Invalid (Cursors (F_Option_Length)) - then - Invalid (Cursors (F_Option_Data)))) - and then (if - Structural_Valid (Cursors (F_Copied)) - then - Cursors (F_Copied).Last - Cursors (F_Copied).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Cursors (F_Copied).Predecessor = F_Initial - and then Cursors (F_Copied).First = First - and then (if - Structural_Valid (Cursors (F_Option_Class)) - then - Cursors (F_Option_Class).Last - Cursors (F_Option_Class).First + 1 = RFLX.IPv4.Option_Class_Base'Size - and then Cursors (F_Option_Class).Predecessor = F_Copied - and then Cursors (F_Option_Class).First = Cursors (F_Copied).Last + 1 - and then (if - Structural_Valid (Cursors (F_Option_Number)) - then - Cursors (F_Option_Number).Last - Cursors (F_Option_Number).First + 1 = RFLX.IPv4.Option_Number'Size - and then Cursors (F_Option_Number).Predecessor = F_Option_Class - and then Cursors (F_Option_Number).First = Cursors (F_Option_Class).Last + 1 - and then (if - Structural_Valid (Cursors (F_Option_Length)) - and then Cursors (F_Option_Number).Value.Option_Number_Value > 1 - then - Cursors (F_Option_Length).Last - Cursors (F_Option_Length).First + 1 = RFLX.IPv4.Option_Length_Base'Size - and then Cursors (F_Option_Length).Predecessor = F_Option_Number - and then Cursors (F_Option_Length).First = Cursors (F_Option_Number).Last + 1 - and then (if - Structural_Valid (Cursors (F_Option_Data)) - and then ((Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Debugging_And_Measurement)) - and Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and (Cursors (F_Option_Number).Value.Option_Number_Value = 9 - or Cursors (F_Option_Number).Value.Option_Number_Value = 3 - or Cursors (F_Option_Number).Value.Option_Number_Value = 7)) - or (Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Cursors (F_Option_Number).Value.Option_Number_Value = 2) - or (Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Cursors (F_Option_Number).Value.Option_Number_Value = 8)) - then - Cursors (F_Option_Data).Last - Cursors (F_Option_Data).First + 1 = (Types.Bit_Length (Cursors (F_Option_Length).Value.Option_Length_Value) - 2) * 8 - and then Cursors (F_Option_Data).Predecessor = F_Option_Length - and then Cursors (F_Option_Data).First = Cursors (F_Option_Length).Last + 1)))))); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Copied) - and then Field_First (Ctx, F_Copied) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Copied) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Copied) - and then Invalid (Ctx, F_Option_Class) - and then Invalid (Ctx, F_Option_Number) - and then Invalid (Ctx, F_Option_Length) - and then Invalid (Ctx, F_Option_Data)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Copied => - True, - when others => - False), - when F_Copied => - (case Fld is - when F_Option_Class => - True, - when others => - False), - when F_Option_Class => - (case Fld is - when F_Option_Number => - True, - when others => - False), - when F_Option_Number => - (case Fld is - when F_Option_Length => - Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1, - when others => - False), - when F_Option_Length => - (case Fld is - when F_Option_Data => - (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Debugging_And_Measurement)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8), - when others => - False), - when F_Option_Data | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Initial | F_Copied | F_Option_Class => - True, - when F_Option_Number => - (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Types.U64 (Val.Option_Number_Value) = 1) - or Types.U64 (Val.Option_Number_Value) > 1, - when F_Option_Length => - (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Debugging_And_Measurement)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) - or (Types.U64 (Val.Option_Length_Value) = 11 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) - or (Types.U64 (Val.Option_Length_Value) = 4 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8), - when F_Option_Data => - True, - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Copied => - RFLX.RFLX_Builtin_Types.Boolean_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Copied => - (case Fld is - when F_Option_Class => - RFLX.IPv4.Option_Class_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Option_Class => - (case Fld is - when F_Option_Number => - RFLX.IPv4.Option_Number'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Option_Number => - (case Fld is - when F_Option_Length => - RFLX.IPv4.Option_Length_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Option_Length => - (case Fld is - when F_Option_Data => - (Types.Bit_Length (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value) - 2) * 8, - when others => - Types.Unreachable_Bit_Length), - when F_Option_Data | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Copied => - Ctx.First, - when F_Option_Class => - (if - Ctx.Cursors (Fld).Predecessor = F_Copied - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Option_Number => - (if - Ctx.Cursors (Fld).Predecessor = F_Option_Class - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Option_Length => - (if - Ctx.Cursors (Fld).Predecessor = F_Option_Number - and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Option_Data => - (if - Ctx.Cursors (Fld).Predecessor = F_Option_Length - and then ((Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Debugging_And_Measurement)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8)) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length))); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Copied => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_Option_Class => - (Valid (Ctx.Cursors (F_Copied)) - and Ctx.Cursors (Fld).Predecessor = F_Copied), - when F_Option_Number => - (Valid (Ctx.Cursors (F_Option_Class)) - and Ctx.Cursors (Fld).Predecessor = F_Option_Class), - when F_Option_Length => - (Valid (Ctx.Cursors (F_Option_Number)) - and Ctx.Cursors (Fld).Predecessor = F_Option_Number), - when F_Option_Data => - (Valid (Ctx.Cursors (F_Option_Length)) - and Ctx.Cursors (Fld).Predecessor = F_Option_Length), - when F_Final => - (Structural_Valid (Ctx.Cursors (F_Option_Data)) - and Ctx.Cursors (Fld).Predecessor = F_Option_Data) - or (Valid (Ctx.Cursors (F_Option_Number)) - and Ctx.Cursors (Fld).Predecessor = F_Option_Number))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Copied) - and then Valid (Ctx, F_Option_Class) - and then Valid (Ctx, F_Option_Number) - and then ((Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 1) - or (Valid (Ctx, F_Option_Length) - and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 - and then Structural_Valid (Ctx, F_Option_Data) - and then ((Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Debugging_And_Measurement)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8))))); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Copied) - and then Valid (Ctx, F_Option_Class) - and then Valid (Ctx, F_Option_Number) - and then ((Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 1) - or (Valid (Ctx, F_Option_Length) - and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 - and then Valid (Ctx, F_Option_Data) - and then ((Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Debugging_And_Measurement)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 - or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) - or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) - and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8))))); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Copied) - or Incomplete (Ctx, F_Option_Class) - or Incomplete (Ctx, F_Option_Number) - or Incomplete (Ctx, F_Option_Length) - or Incomplete (Ctx, F_Option_Data)); - - function Get_Copied (Ctx : Context) return Boolean is - (To_Actual (Ctx.Cursors (F_Copied).Value.Copied_Value)); - - function Get_Option_Class (Ctx : Context) return RFLX.IPv4.Option_Class is - (To_Actual (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value)); - - function Get_Option_Number (Ctx : Context) return RFLX.IPv4.Option_Number is - (To_Actual (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value)); - - function Get_Option_Length (Ctx : Context) return RFLX.IPv4.Option_Length is - (To_Actual (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.IPv4.Generic_Option; diff --git a/tests/spark/generated/rflx-ipv4-generic_packet.ads b/tests/spark/generated/rflx-ipv4-generic_packet.ads deleted file mode 100644 index e8ab1991c..000000000 --- a/tests/spark/generated/rflx-ipv4-generic_packet.ads +++ /dev/null @@ -1,2306 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Builtin_Types; -with RFLX.RFLX_Builtin_Types.Conversions; -use RFLX.RFLX_Builtin_Types.Conversions; -with RFLX.RFLX_Generic_Types; -with RFLX.RFLX_Message_Sequence; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); - with package Options_Sequence is new RFLX.RFLX_Message_Sequence (Types, others => <>); -package RFLX.IPv4.Generic_Packet with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes, Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Version, F_IHL, F_DSCP, F_ECN, F_Total_Length, F_Identification, F_Flag_R, F_Flag_DF, F_Flag_MF, F_Fragment_Offset, F_TTL, F_Protocol, F_Header_Checksum, F_Source, F_Destination, F_Options, F_Payload, F_Final); - - subtype Field is Virtual_Field range F_Version .. F_Payload; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Options | F_Payload | F_Final => - null; - when F_Version => - Version_Value : RFLX.IPv4.Version_Base; - when F_IHL => - IHL_Value : RFLX.IPv4.IHL_Base; - when F_DSCP => - DSCP_Value : RFLX.IPv4.DCSP; - when F_ECN => - ECN_Value : RFLX.IPv4.ECN; - when F_Total_Length => - Total_Length_Value : RFLX.IPv4.Total_Length; - when F_Identification => - Identification_Value : RFLX.IPv4.Identification; - when F_Flag_R => - Flag_R_Value : RFLX.RFLX_Builtin_Types.Boolean_Base; - when F_Flag_DF => - Flag_DF_Value : RFLX.RFLX_Builtin_Types.Boolean_Base; - when F_Flag_MF => - Flag_MF_Value : RFLX.RFLX_Builtin_Types.Boolean_Base; - when F_Fragment_Offset => - Fragment_Offset_Value : RFLX.IPv4.Fragment_Offset; - when F_TTL => - TTL_Value : RFLX.IPv4.TTL; - when F_Protocol => - Protocol_Value : RFLX.IPv4.Protocol_Base; - when F_Header_Checksum => - Header_Checksum_Value : RFLX.IPv4.Header_Checksum; - when F_Source => - Source_Value : RFLX.IPv4.Address; - when F_Destination => - Destination_Value : RFLX.IPv4.Address; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean with - Pre => - Has_Buffer (Ctx) - and Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - function Get_Version (Ctx : Context) return RFLX.IPv4.Version with - Pre => - Valid (Ctx, F_Version); - - function Get_IHL (Ctx : Context) return RFLX.IPv4.IHL with - Pre => - Valid (Ctx, F_IHL); - - function Get_DSCP (Ctx : Context) return RFLX.IPv4.DCSP with - Pre => - Valid (Ctx, F_DSCP); - - function Get_ECN (Ctx : Context) return RFLX.IPv4.ECN with - Pre => - Valid (Ctx, F_ECN); - - function Get_Total_Length (Ctx : Context) return RFLX.IPv4.Total_Length with - Pre => - Valid (Ctx, F_Total_Length); - - function Get_Identification (Ctx : Context) return RFLX.IPv4.Identification with - Pre => - Valid (Ctx, F_Identification); - - function Get_Flag_R (Ctx : Context) return Boolean with - Pre => - Valid (Ctx, F_Flag_R); - - function Get_Flag_DF (Ctx : Context) return Boolean with - Pre => - Valid (Ctx, F_Flag_DF); - - function Get_Flag_MF (Ctx : Context) return Boolean with - Pre => - Valid (Ctx, F_Flag_MF); - - function Get_Fragment_Offset (Ctx : Context) return RFLX.IPv4.Fragment_Offset with - Pre => - Valid (Ctx, F_Fragment_Offset); - - function Get_TTL (Ctx : Context) return RFLX.IPv4.TTL with - Pre => - Valid (Ctx, F_TTL); - - function Get_Protocol (Ctx : Context) return RFLX.IPv4.Protocol with - Pre => - Valid (Ctx, F_Protocol); - - function Get_Header_Checksum (Ctx : Context) return RFLX.IPv4.Header_Checksum with - Pre => - Valid (Ctx, F_Header_Checksum); - - function Get_Source (Ctx : Context) return RFLX.IPv4.Address with - Pre => - Valid (Ctx, F_Source); - - function Get_Destination (Ctx : Context) return RFLX.IPv4.Address with - Pre => - Valid (Ctx, F_Destination); - - pragma Warnings (On, "precondition is always False"); - - generic - with procedure Process_Options (Options : Types.Bytes); - procedure Get_Options (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Options); - - generic - with procedure Process_Payload (Payload : Types.Bytes); - procedure Get_Payload (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Payload); - - procedure Set_Version (Ctx : in out Context; Val : RFLX.IPv4.Version) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Version) - and then Field_Condition (Ctx, (F_Version, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Version) >= Field_Size (Ctx, F_Version), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Version) - and Get_Version (Ctx) = Val - and Invalid (Ctx, F_IHL) - and Invalid (Ctx, F_DSCP) - and Invalid (Ctx, F_ECN) - and Invalid (Ctx, F_Total_Length) - and Invalid (Ctx, F_Identification) - and Invalid (Ctx, F_Flag_R) - and Invalid (Ctx, F_Flag_DF) - and Invalid (Ctx, F_Flag_MF) - and Invalid (Ctx, F_Fragment_Offset) - and Invalid (Ctx, F_TTL) - and Invalid (Ctx, F_Protocol) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_IHL) = F_Version - and Valid_Next (Ctx, F_IHL)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Version) = Predecessor (Ctx, F_Version)'Old - and Valid_Next (Ctx, F_Version) = Valid_Next (Ctx, F_Version)'Old; - - procedure Set_IHL (Ctx : in out Context; Val : RFLX.IPv4.IHL) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_IHL) - and then Field_Condition (Ctx, (F_IHL, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_IHL) >= Field_Size (Ctx, F_IHL), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_IHL) - and Get_IHL (Ctx) = Val - and Invalid (Ctx, F_DSCP) - and Invalid (Ctx, F_ECN) - and Invalid (Ctx, F_Total_Length) - and Invalid (Ctx, F_Identification) - and Invalid (Ctx, F_Flag_R) - and Invalid (Ctx, F_Flag_DF) - and Invalid (Ctx, F_Flag_MF) - and Invalid (Ctx, F_Fragment_Offset) - and Invalid (Ctx, F_TTL) - and Invalid (Ctx, F_Protocol) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_DSCP) = F_IHL - and Valid_Next (Ctx, F_DSCP)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_IHL) = Predecessor (Ctx, F_IHL)'Old - and Valid_Next (Ctx, F_IHL) = Valid_Next (Ctx, F_IHL)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old; - - procedure Set_DSCP (Ctx : in out Context; Val : RFLX.IPv4.DCSP) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_DSCP) - and then Field_Condition (Ctx, (F_DSCP, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_DSCP) >= Field_Size (Ctx, F_DSCP), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_DSCP) - and Get_DSCP (Ctx) = Val - and Invalid (Ctx, F_ECN) - and Invalid (Ctx, F_Total_Length) - and Invalid (Ctx, F_Identification) - and Invalid (Ctx, F_Flag_R) - and Invalid (Ctx, F_Flag_DF) - and Invalid (Ctx, F_Flag_MF) - and Invalid (Ctx, F_Fragment_Offset) - and Invalid (Ctx, F_TTL) - and Invalid (Ctx, F_Protocol) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_ECN) = F_DSCP - and Valid_Next (Ctx, F_ECN)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_DSCP) = Predecessor (Ctx, F_DSCP)'Old - and Valid_Next (Ctx, F_DSCP) = Valid_Next (Ctx, F_DSCP)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old; - - procedure Set_ECN (Ctx : in out Context; Val : RFLX.IPv4.ECN) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_ECN) - and then Field_Condition (Ctx, (F_ECN, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_ECN) >= Field_Size (Ctx, F_ECN), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_ECN) - and Get_ECN (Ctx) = Val - and Invalid (Ctx, F_Total_Length) - and Invalid (Ctx, F_Identification) - and Invalid (Ctx, F_Flag_R) - and Invalid (Ctx, F_Flag_DF) - and Invalid (Ctx, F_Flag_MF) - and Invalid (Ctx, F_Fragment_Offset) - and Invalid (Ctx, F_TTL) - and Invalid (Ctx, F_Protocol) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Total_Length) = F_ECN - and Valid_Next (Ctx, F_Total_Length)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_ECN) = Predecessor (Ctx, F_ECN)'Old - and Valid_Next (Ctx, F_ECN) = Valid_Next (Ctx, F_ECN)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old; - - procedure Set_Total_Length (Ctx : in out Context; Val : RFLX.IPv4.Total_Length) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Total_Length) - and then Field_Condition (Ctx, (F_Total_Length, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Total_Length) >= Field_Size (Ctx, F_Total_Length), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Total_Length) - and Get_Total_Length (Ctx) = Val - and Invalid (Ctx, F_Identification) - and Invalid (Ctx, F_Flag_R) - and Invalid (Ctx, F_Flag_DF) - and Invalid (Ctx, F_Flag_MF) - and Invalid (Ctx, F_Fragment_Offset) - and Invalid (Ctx, F_TTL) - and Invalid (Ctx, F_Protocol) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (if - Types.U64 (Get_Total_Length (Ctx)) >= Types.U64 (Get_IHL (Ctx)) * 4 - then - Predecessor (Ctx, F_Identification) = F_Total_Length - and Valid_Next (Ctx, F_Identification)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Total_Length) = Predecessor (Ctx, F_Total_Length)'Old - and Valid_Next (Ctx, F_Total_Length) = Valid_Next (Ctx, F_Total_Length)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old; - - procedure Set_Identification (Ctx : in out Context; Val : RFLX.IPv4.Identification) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Identification) - and then Field_Condition (Ctx, (F_Identification, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Identification) >= Field_Size (Ctx, F_Identification), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Identification) - and Get_Identification (Ctx) = Val - and Invalid (Ctx, F_Flag_R) - and Invalid (Ctx, F_Flag_DF) - and Invalid (Ctx, F_Flag_MF) - and Invalid (Ctx, F_Fragment_Offset) - and Invalid (Ctx, F_TTL) - and Invalid (Ctx, F_Protocol) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Flag_R) = F_Identification - and Valid_Next (Ctx, F_Flag_R)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Identification) = Predecessor (Ctx, F_Identification)'Old - and Valid_Next (Ctx, F_Identification) = Valid_Next (Ctx, F_Identification)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old; - - procedure Set_Flag_R (Ctx : in out Context; Val : Boolean) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Flag_R) - and then Field_Condition (Ctx, (F_Flag_R, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Flag_R) >= Field_Size (Ctx, F_Flag_R), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Flag_R) - and Get_Flag_R (Ctx) = Val - and Invalid (Ctx, F_Flag_DF) - and Invalid (Ctx, F_Flag_MF) - and Invalid (Ctx, F_Fragment_Offset) - and Invalid (Ctx, F_TTL) - and Invalid (Ctx, F_Protocol) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (if - Types.U64 (To_Base (Get_Flag_R (Ctx))) = Types.U64 (To_Base (False)) - then - Predecessor (Ctx, F_Flag_DF) = F_Flag_R - and Valid_Next (Ctx, F_Flag_DF)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Flag_R) = Predecessor (Ctx, F_Flag_R)'Old - and Valid_Next (Ctx, F_Flag_R) = Valid_Next (Ctx, F_Flag_R)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old - and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old; - - procedure Set_Flag_DF (Ctx : in out Context; Val : Boolean) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Flag_DF) - and then Field_Condition (Ctx, (F_Flag_DF, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Flag_DF) >= Field_Size (Ctx, F_Flag_DF), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Flag_DF) - and Get_Flag_DF (Ctx) = Val - and Invalid (Ctx, F_Flag_MF) - and Invalid (Ctx, F_Fragment_Offset) - and Invalid (Ctx, F_TTL) - and Invalid (Ctx, F_Protocol) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Flag_MF) = F_Flag_DF - and Valid_Next (Ctx, F_Flag_MF)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Flag_DF) = Predecessor (Ctx, F_Flag_DF)'Old - and Valid_Next (Ctx, F_Flag_DF) = Valid_Next (Ctx, F_Flag_DF)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old - and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old - and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old; - - procedure Set_Flag_MF (Ctx : in out Context; Val : Boolean) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Flag_MF) - and then Field_Condition (Ctx, (F_Flag_MF, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Flag_MF) >= Field_Size (Ctx, F_Flag_MF), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Flag_MF) - and Get_Flag_MF (Ctx) = Val - and Invalid (Ctx, F_Fragment_Offset) - and Invalid (Ctx, F_TTL) - and Invalid (Ctx, F_Protocol) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Fragment_Offset) = F_Flag_MF - and Valid_Next (Ctx, F_Fragment_Offset)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Flag_MF) = Predecessor (Ctx, F_Flag_MF)'Old - and Valid_Next (Ctx, F_Flag_MF) = Valid_Next (Ctx, F_Flag_MF)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old - and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old - and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old - and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old; - - procedure Set_Fragment_Offset (Ctx : in out Context; Val : RFLX.IPv4.Fragment_Offset) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Fragment_Offset) - and then Field_Condition (Ctx, (F_Fragment_Offset, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Fragment_Offset) >= Field_Size (Ctx, F_Fragment_Offset), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Fragment_Offset) - and Get_Fragment_Offset (Ctx) = Val - and Invalid (Ctx, F_TTL) - and Invalid (Ctx, F_Protocol) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_TTL) = F_Fragment_Offset - and Valid_Next (Ctx, F_TTL)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Fragment_Offset) = Predecessor (Ctx, F_Fragment_Offset)'Old - and Valid_Next (Ctx, F_Fragment_Offset) = Valid_Next (Ctx, F_Fragment_Offset)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old - and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old - and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old - and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old - and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old; - - procedure Set_TTL (Ctx : in out Context; Val : RFLX.IPv4.TTL) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_TTL) - and then Field_Condition (Ctx, (F_TTL, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_TTL) >= Field_Size (Ctx, F_TTL), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_TTL) - and Get_TTL (Ctx) = Val - and Invalid (Ctx, F_Protocol) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Protocol) = F_TTL - and Valid_Next (Ctx, F_Protocol)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_TTL) = Predecessor (Ctx, F_TTL)'Old - and Valid_Next (Ctx, F_TTL) = Valid_Next (Ctx, F_TTL)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old - and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old - and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old - and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old - and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old - and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old; - - procedure Set_Protocol (Ctx : in out Context; Val : RFLX.IPv4.Protocol_Enum) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Protocol) - and then Field_Condition (Ctx, (F_Protocol, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Protocol) >= Field_Size (Ctx, F_Protocol), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Protocol) - and Get_Protocol (Ctx) = (True, Val) - and Invalid (Ctx, F_Header_Checksum) - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Header_Checksum) = F_Protocol - and Valid_Next (Ctx, F_Header_Checksum)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Protocol) = Predecessor (Ctx, F_Protocol)'Old - and Valid_Next (Ctx, F_Protocol) = Valid_Next (Ctx, F_Protocol)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old - and Get_TTL (Ctx) = Get_TTL (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old - and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old - and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old - and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old - and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old - and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old - and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old; - - procedure Set_Header_Checksum (Ctx : in out Context; Val : RFLX.IPv4.Header_Checksum) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Header_Checksum) - and then Field_Condition (Ctx, (F_Header_Checksum, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Header_Checksum) >= Field_Size (Ctx, F_Header_Checksum), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Header_Checksum) - and Get_Header_Checksum (Ctx) = Val - and Invalid (Ctx, F_Source) - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Source) = F_Header_Checksum - and Valid_Next (Ctx, F_Source)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Header_Checksum) = Predecessor (Ctx, F_Header_Checksum)'Old - and Valid_Next (Ctx, F_Header_Checksum) = Valid_Next (Ctx, F_Header_Checksum)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old - and Get_TTL (Ctx) = Get_TTL (Ctx)'Old - and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old - and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old - and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old - and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old - and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old - and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old - and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old - and Context_Cursor (Ctx, F_Protocol) = Context_Cursor (Ctx, F_Protocol)'Old; - - procedure Set_Source (Ctx : in out Context; Val : RFLX.IPv4.Address) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Source) - and then Field_Condition (Ctx, (F_Source, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Source) >= Field_Size (Ctx, F_Source), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Source) - and Get_Source (Ctx) = Val - and Invalid (Ctx, F_Destination) - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Destination) = F_Source - and Valid_Next (Ctx, F_Destination)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Source) = Predecessor (Ctx, F_Source)'Old - and Valid_Next (Ctx, F_Source) = Valid_Next (Ctx, F_Source)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old - and Get_TTL (Ctx) = Get_TTL (Ctx)'Old - and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old - and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old - and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old - and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old - and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old - and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old - and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old - and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old - and Context_Cursor (Ctx, F_Protocol) = Context_Cursor (Ctx, F_Protocol)'Old - and Context_Cursor (Ctx, F_Header_Checksum) = Context_Cursor (Ctx, F_Header_Checksum)'Old; - - procedure Set_Destination (Ctx : in out Context; Val : RFLX.IPv4.Address) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Destination) - and then Field_Condition (Ctx, (F_Destination, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Destination) >= Field_Size (Ctx, F_Destination), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Destination) - and Get_Destination (Ctx) = Val - and Invalid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Options) = F_Destination - and Valid_Next (Ctx, F_Options)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Destination) = Predecessor (Ctx, F_Destination)'Old - and Valid_Next (Ctx, F_Destination) = Valid_Next (Ctx, F_Destination)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old - and Get_TTL (Ctx) = Get_TTL (Ctx)'Old - and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old - and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old - and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old - and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old - and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old - and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old - and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old - and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old - and Context_Cursor (Ctx, F_Protocol) = Context_Cursor (Ctx, F_Protocol)'Old - and Context_Cursor (Ctx, F_Header_Checksum) = Context_Cursor (Ctx, F_Header_Checksum)'Old - and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old; - - procedure Set_Options_Empty (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Options) - and then Field_Condition (Ctx, (Fld => F_Options)) - and then Available_Space (Ctx, F_Options) >= Field_Size (Ctx, F_Options) - and then Field_First (Ctx, F_Options) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Options) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Options) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Options) = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Payload) = F_Options - and Valid_Next (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Options) = Predecessor (Ctx, F_Options)'Old - and Valid_Next (Ctx, F_Options) = Valid_Next (Ctx, F_Options)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old - and Get_TTL (Ctx) = Get_TTL (Ctx)'Old - and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old - and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old; - - procedure Set_Payload_Empty (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old - and Get_TTL (Ctx) = Get_TTL (Ctx)'Old - and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old - and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old; - - procedure Set_Options (Ctx : in out Context; Seq_Ctx : Options_Sequence.Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Options) - and then Field_Condition (Ctx, (Fld => F_Options)) - and then Available_Space (Ctx, F_Options) >= Field_Size (Ctx, F_Options) - and then Field_First (Ctx, F_Options) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Options) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Options) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Options) = Options_Sequence.Size (Seq_Ctx) - and then Options_Sequence.Has_Buffer (Seq_Ctx) - and then Options_Sequence.Valid (Seq_Ctx), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Options) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Payload) = F_Options - and Valid_Next (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Options) = Predecessor (Ctx, F_Options)'Old - and Valid_Next (Ctx, F_Options) = Valid_Next (Ctx, F_Options)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old - and Get_TTL (Ctx) = Get_TTL (Ctx)'Old - and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old - and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old - and (if - Field_Size (Ctx, F_Options) > 0 - then - Present (Ctx, F_Options)); - - procedure Initialize_Payload (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old - and Get_TTL (Ctx) = Get_TTL (Ctx)'Old - and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old - and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old; - - procedure Set_Payload (Ctx : in out Context; Value : Types.Bytes) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Value'Length = Types.Byte_Index (Field_Last (Ctx, F_Payload)) - Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old - and Get_TTL (Ctx) = Get_TTL (Ctx)'Old - and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old - and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old; - - generic - with procedure Process_Payload (Payload : out Types.Bytes); - with function Valid_Length (Length : Types.Length) return Boolean; - procedure Generic_Set_Payload (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Valid_Length (Types.Length (Field_Size (Ctx, F_Payload) / Types.Byte'Size)), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old - and Get_IHL (Ctx) = Get_IHL (Ctx)'Old - and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old - and Get_ECN (Ctx) = Get_ECN (Ctx)'Old - and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old - and Get_Identification (Ctx) = Get_Identification (Ctx)'Old - and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old - and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old - and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old - and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old - and Get_TTL (Ctx) = Get_TTL (Ctx)'Old - and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old - and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old - and Get_Source (Ctx) = Get_Source (Ctx)'Old - and Get_Destination (Ctx) = Get_Destination (Ctx)'Old; - - procedure Switch_To_Options (Ctx : in out Context; Seq_Ctx : out Options_Sequence.Context) with - Pre => - not Ctx'Constrained - and then not Seq_Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Options) - and then Field_Size (Ctx, F_Options) > 0 - and then Field_First (Ctx, F_Options) mod Types.Byte'Size = 1 - and then Field_Condition (Ctx, (Fld => F_Options)) - and then Available_Space (Ctx, F_Options) >= Field_Size (Ctx, F_Options), - Post => - not Has_Buffer (Ctx) - and Options_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Seq_Ctx.Buffer_First - and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and Seq_Ctx.First = Field_First (Ctx, F_Options) - and Seq_Ctx.Last = Field_Last (Ctx, F_Options) - and Options_Sequence.Valid (Seq_Ctx) - and Options_Sequence.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 - and Present (Ctx, F_Options) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Options) = Predecessor (Ctx, F_Options)'Old - and Path_Condition (Ctx, F_Options) = Path_Condition (Ctx, F_Options)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old - and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old - and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old - and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old - and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old - and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old - and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old - and Context_Cursor (Ctx, F_Protocol) = Context_Cursor (Ctx, F_Protocol)'Old - and Context_Cursor (Ctx, F_Header_Checksum) = Context_Cursor (Ctx, F_Header_Checksum)'Old - and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old - and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old, - Contract_Cases => - (Structural_Valid (Ctx, F_Options) => - Context_Cursor (Ctx, F_Payload) = Context_Cursor (Ctx, F_Payload)'Old, - others => - (Predecessor (Ctx, F_Payload) = F_Options - and Valid_Next (Ctx, F_Payload)) - and Invalid (Ctx, F_Payload)); - - function Complete_Options (Ctx : Context; Seq_Ctx : Options_Sequence.Context) return Boolean with - Pre => - Valid_Next (Ctx, F_Options); - - procedure Update_Options (Ctx : in out Context; Seq_Ctx : in out Options_Sequence.Context) with - Pre => - Present (Ctx, F_Options) - and then Complete_Options (Ctx, Seq_Ctx) - and then not Has_Buffer (Ctx) - and then Options_Sequence.Has_Buffer (Seq_Ctx) - and then Ctx.Buffer_First = Seq_Ctx.Buffer_First - and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and then Seq_Ctx.First = Field_First (Ctx, F_Options) - and then Seq_Ctx.Last = Field_Last (Ctx, F_Options), - Post => - Present (Ctx, F_Options) - and Has_Buffer (Ctx) - and not Options_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Seq_Ctx.First = Seq_Ctx.First'Old - and Seq_Ctx.Last = Seq_Ctx.Last'Old - and Field_First (Ctx, F_Options) = Field_First (Ctx, F_Options)'Old - and Field_Size (Ctx, F_Options) = Field_Size (Ctx, F_Options)'Old - and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old - and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old - and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old - and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old - and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old - and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old - and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old - and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old - and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old - and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old - and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old - and Context_Cursor (Ctx, F_Protocol) = Context_Cursor (Ctx, F_Protocol)'Old - and Context_Cursor (Ctx, F_Header_Checksum) = Context_Cursor (Ctx, F_Header_Checksum)'Old - and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old - and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old - and Context_Cursor (Ctx, F_Payload) = Context_Cursor (Ctx, F_Payload)'Old, - Depends => - (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Version => - Valid (Val.Version_Value), - when F_IHL => - Valid (Val.IHL_Value), - when F_DSCP => - Valid (Val.DSCP_Value), - when F_ECN => - Valid (Val.ECN_Value), - when F_Total_Length => - Valid (Val.Total_Length_Value), - when F_Identification => - Valid (Val.Identification_Value), - when F_Flag_R => - Valid (Val.Flag_R_Value), - when F_Flag_DF => - Valid (Val.Flag_DF_Value), - when F_Flag_MF => - Valid (Val.Flag_MF_Value), - when F_Fragment_Offset => - Valid (Val.Fragment_Offset_Value), - when F_TTL => - Valid (Val.TTL_Value), - when F_Protocol => - Valid (Val.Protocol_Value), - when F_Header_Checksum => - Valid (Val.Header_Checksum_Value), - when F_Source => - Valid (Val.Source_Value), - when F_Destination => - Valid (Val.Destination_Value), - when F_Options | F_Payload => - True, - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then ((if - Structural_Valid (Cursors (F_IHL)) - then - (Valid (Cursors (F_Version)) - and then Cursors (F_IHL).Predecessor = F_Version)) - and then (if - Structural_Valid (Cursors (F_DSCP)) - then - (Valid (Cursors (F_IHL)) - and then Cursors (F_DSCP).Predecessor = F_IHL)) - and then (if - Structural_Valid (Cursors (F_ECN)) - then - (Valid (Cursors (F_DSCP)) - and then Cursors (F_ECN).Predecessor = F_DSCP)) - and then (if - Structural_Valid (Cursors (F_Total_Length)) - then - (Valid (Cursors (F_ECN)) - and then Cursors (F_Total_Length).Predecessor = F_ECN)) - and then (if - Structural_Valid (Cursors (F_Identification)) - then - (Valid (Cursors (F_Total_Length)) - and then Cursors (F_Identification).Predecessor = F_Total_Length - and then Types.U64 (Cursors (F_Total_Length).Value.Total_Length_Value) >= Types.U64 (Cursors (F_IHL).Value.IHL_Value) * 4)) - and then (if - Structural_Valid (Cursors (F_Flag_R)) - then - (Valid (Cursors (F_Identification)) - and then Cursors (F_Flag_R).Predecessor = F_Identification)) - and then (if - Structural_Valid (Cursors (F_Flag_DF)) - then - (Valid (Cursors (F_Flag_R)) - and then Cursors (F_Flag_DF).Predecessor = F_Flag_R - and then Types.U64 (Cursors (F_Flag_R).Value.Flag_R_Value) = Types.U64 (To_Base (False)))) - and then (if - Structural_Valid (Cursors (F_Flag_MF)) - then - (Valid (Cursors (F_Flag_DF)) - and then Cursors (F_Flag_MF).Predecessor = F_Flag_DF)) - and then (if - Structural_Valid (Cursors (F_Fragment_Offset)) - then - (Valid (Cursors (F_Flag_MF)) - and then Cursors (F_Fragment_Offset).Predecessor = F_Flag_MF)) - and then (if - Structural_Valid (Cursors (F_TTL)) - then - (Valid (Cursors (F_Fragment_Offset)) - and then Cursors (F_TTL).Predecessor = F_Fragment_Offset)) - and then (if - Structural_Valid (Cursors (F_Protocol)) - then - (Valid (Cursors (F_TTL)) - and then Cursors (F_Protocol).Predecessor = F_TTL)) - and then (if - Structural_Valid (Cursors (F_Header_Checksum)) - then - (Valid (Cursors (F_Protocol)) - and then Cursors (F_Header_Checksum).Predecessor = F_Protocol)) - and then (if - Structural_Valid (Cursors (F_Source)) - then - (Valid (Cursors (F_Header_Checksum)) - and then Cursors (F_Source).Predecessor = F_Header_Checksum)) - and then (if - Structural_Valid (Cursors (F_Destination)) - then - (Valid (Cursors (F_Source)) - and then Cursors (F_Destination).Predecessor = F_Source)) - and then (if - Structural_Valid (Cursors (F_Options)) - then - (Valid (Cursors (F_Destination)) - and then Cursors (F_Options).Predecessor = F_Destination)) - and then (if - Structural_Valid (Cursors (F_Payload)) - then - (Structural_Valid (Cursors (F_Options)) - and then Cursors (F_Payload).Predecessor = F_Options))) - and then ((if - Invalid (Cursors (F_Version)) - then - Invalid (Cursors (F_IHL))) - and then (if - Invalid (Cursors (F_IHL)) - then - Invalid (Cursors (F_DSCP))) - and then (if - Invalid (Cursors (F_DSCP)) - then - Invalid (Cursors (F_ECN))) - and then (if - Invalid (Cursors (F_ECN)) - then - Invalid (Cursors (F_Total_Length))) - and then (if - Invalid (Cursors (F_Total_Length)) - then - Invalid (Cursors (F_Identification))) - and then (if - Invalid (Cursors (F_Identification)) - then - Invalid (Cursors (F_Flag_R))) - and then (if - Invalid (Cursors (F_Flag_R)) - then - Invalid (Cursors (F_Flag_DF))) - and then (if - Invalid (Cursors (F_Flag_DF)) - then - Invalid (Cursors (F_Flag_MF))) - and then (if - Invalid (Cursors (F_Flag_MF)) - then - Invalid (Cursors (F_Fragment_Offset))) - and then (if - Invalid (Cursors (F_Fragment_Offset)) - then - Invalid (Cursors (F_TTL))) - and then (if - Invalid (Cursors (F_TTL)) - then - Invalid (Cursors (F_Protocol))) - and then (if - Invalid (Cursors (F_Protocol)) - then - Invalid (Cursors (F_Header_Checksum))) - and then (if - Invalid (Cursors (F_Header_Checksum)) - then - Invalid (Cursors (F_Source))) - and then (if - Invalid (Cursors (F_Source)) - then - Invalid (Cursors (F_Destination))) - and then (if - Invalid (Cursors (F_Destination)) - then - Invalid (Cursors (F_Options))) - and then (if - Invalid (Cursors (F_Options)) - then - Invalid (Cursors (F_Payload)))) - and then (if - Structural_Valid (Cursors (F_Version)) - then - Cursors (F_Version).Last - Cursors (F_Version).First + 1 = RFLX.IPv4.Version_Base'Size - and then Cursors (F_Version).Predecessor = F_Initial - and then Cursors (F_Version).First = First - and then (if - Structural_Valid (Cursors (F_IHL)) - then - Cursors (F_IHL).Last - Cursors (F_IHL).First + 1 = RFLX.IPv4.IHL_Base'Size - and then Cursors (F_IHL).Predecessor = F_Version - and then Cursors (F_IHL).First = Cursors (F_Version).Last + 1 - and then (if - Structural_Valid (Cursors (F_DSCP)) - then - Cursors (F_DSCP).Last - Cursors (F_DSCP).First + 1 = RFLX.IPv4.DCSP'Size - and then Cursors (F_DSCP).Predecessor = F_IHL - and then Cursors (F_DSCP).First = Cursors (F_IHL).Last + 1 - and then (if - Structural_Valid (Cursors (F_ECN)) - then - Cursors (F_ECN).Last - Cursors (F_ECN).First + 1 = RFLX.IPv4.ECN'Size - and then Cursors (F_ECN).Predecessor = F_DSCP - and then Cursors (F_ECN).First = Cursors (F_DSCP).Last + 1 - and then (if - Structural_Valid (Cursors (F_Total_Length)) - then - Cursors (F_Total_Length).Last - Cursors (F_Total_Length).First + 1 = RFLX.IPv4.Total_Length'Size - and then Cursors (F_Total_Length).Predecessor = F_ECN - and then Cursors (F_Total_Length).First = Cursors (F_ECN).Last + 1 - and then (if - Structural_Valid (Cursors (F_Identification)) - and then Types.U64 (Cursors (F_Total_Length).Value.Total_Length_Value) >= Types.U64 (Cursors (F_IHL).Value.IHL_Value) * 4 - then - Cursors (F_Identification).Last - Cursors (F_Identification).First + 1 = RFLX.IPv4.Identification'Size - and then Cursors (F_Identification).Predecessor = F_Total_Length - and then Cursors (F_Identification).First = Cursors (F_Total_Length).Last + 1 - and then (if - Structural_Valid (Cursors (F_Flag_R)) - then - Cursors (F_Flag_R).Last - Cursors (F_Flag_R).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Cursors (F_Flag_R).Predecessor = F_Identification - and then Cursors (F_Flag_R).First = Cursors (F_Identification).Last + 1 - and then (if - Structural_Valid (Cursors (F_Flag_DF)) - and then Types.U64 (Cursors (F_Flag_R).Value.Flag_R_Value) = Types.U64 (To_Base (False)) - then - Cursors (F_Flag_DF).Last - Cursors (F_Flag_DF).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Cursors (F_Flag_DF).Predecessor = F_Flag_R - and then Cursors (F_Flag_DF).First = Cursors (F_Flag_R).Last + 1 - and then (if - Structural_Valid (Cursors (F_Flag_MF)) - then - Cursors (F_Flag_MF).Last - Cursors (F_Flag_MF).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size - and then Cursors (F_Flag_MF).Predecessor = F_Flag_DF - and then Cursors (F_Flag_MF).First = Cursors (F_Flag_DF).Last + 1 - and then (if - Structural_Valid (Cursors (F_Fragment_Offset)) - then - Cursors (F_Fragment_Offset).Last - Cursors (F_Fragment_Offset).First + 1 = RFLX.IPv4.Fragment_Offset'Size - and then Cursors (F_Fragment_Offset).Predecessor = F_Flag_MF - and then Cursors (F_Fragment_Offset).First = Cursors (F_Flag_MF).Last + 1 - and then (if - Structural_Valid (Cursors (F_TTL)) - then - Cursors (F_TTL).Last - Cursors (F_TTL).First + 1 = RFLX.IPv4.TTL'Size - and then Cursors (F_TTL).Predecessor = F_Fragment_Offset - and then Cursors (F_TTL).First = Cursors (F_Fragment_Offset).Last + 1 - and then (if - Structural_Valid (Cursors (F_Protocol)) - then - Cursors (F_Protocol).Last - Cursors (F_Protocol).First + 1 = RFLX.IPv4.Protocol_Base'Size - and then Cursors (F_Protocol).Predecessor = F_TTL - and then Cursors (F_Protocol).First = Cursors (F_TTL).Last + 1 - and then (if - Structural_Valid (Cursors (F_Header_Checksum)) - then - Cursors (F_Header_Checksum).Last - Cursors (F_Header_Checksum).First + 1 = RFLX.IPv4.Header_Checksum'Size - and then Cursors (F_Header_Checksum).Predecessor = F_Protocol - and then Cursors (F_Header_Checksum).First = Cursors (F_Protocol).Last + 1 - and then (if - Structural_Valid (Cursors (F_Source)) - then - Cursors (F_Source).Last - Cursors (F_Source).First + 1 = RFLX.IPv4.Address'Size - and then Cursors (F_Source).Predecessor = F_Header_Checksum - and then Cursors (F_Source).First = Cursors (F_Header_Checksum).Last + 1 - and then (if - Structural_Valid (Cursors (F_Destination)) - then - Cursors (F_Destination).Last - Cursors (F_Destination).First + 1 = RFLX.IPv4.Address'Size - and then Cursors (F_Destination).Predecessor = F_Source - and then Cursors (F_Destination).First = Cursors (F_Source).Last + 1 - and then (if - Structural_Valid (Cursors (F_Options)) - then - Cursors (F_Options).Last - Cursors (F_Options).First + 1 = (Types.Bit_Length (Cursors (F_IHL).Value.IHL_Value) - 5) * 32 - and then Cursors (F_Options).Predecessor = F_Destination - and then Cursors (F_Options).First = Cursors (F_Destination).Last + 1 - and then (if - Structural_Valid (Cursors (F_Payload)) - then - Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = Types.Bit_Length (Cursors (F_Total_Length).Value.Total_Length_Value) * 8 + Types.Bit_Length (Cursors (F_IHL).Value.IHL_Value) * (-32) - and then Cursors (F_Payload).Predecessor = F_Options - and then Cursors (F_Payload).First = Cursors (F_Options).Last + 1)))))))))))))))))); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Version) - and then Field_First (Ctx, F_Version) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Version) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Version) - and then Invalid (Ctx, F_IHL) - and then Invalid (Ctx, F_DSCP) - and then Invalid (Ctx, F_ECN) - and then Invalid (Ctx, F_Total_Length) - and then Invalid (Ctx, F_Identification) - and then Invalid (Ctx, F_Flag_R) - and then Invalid (Ctx, F_Flag_DF) - and then Invalid (Ctx, F_Flag_MF) - and then Invalid (Ctx, F_Fragment_Offset) - and then Invalid (Ctx, F_TTL) - and then Invalid (Ctx, F_Protocol) - and then Invalid (Ctx, F_Header_Checksum) - and then Invalid (Ctx, F_Source) - and then Invalid (Ctx, F_Destination) - and then Invalid (Ctx, F_Options) - and then Invalid (Ctx, F_Payload)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Version => - True, - when others => - False), - when F_Version => - (case Fld is - when F_IHL => - True, - when others => - False), - when F_IHL => - (case Fld is - when F_DSCP => - True, - when others => - False), - when F_DSCP => - (case Fld is - when F_ECN => - True, - when others => - False), - when F_ECN => - (case Fld is - when F_Total_Length => - True, - when others => - False), - when F_Total_Length => - (case Fld is - when F_Identification => - Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4, - when others => - False), - when F_Identification => - (case Fld is - when F_Flag_R => - True, - when others => - False), - when F_Flag_R => - (case Fld is - when F_Flag_DF => - Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = Types.U64 (To_Base (False)), - when others => - False), - when F_Flag_DF => - (case Fld is - when F_Flag_MF => - True, - when others => - False), - when F_Flag_MF => - (case Fld is - when F_Fragment_Offset => - True, - when others => - False), - when F_Fragment_Offset => - (case Fld is - when F_TTL => - True, - when others => - False), - when F_TTL => - (case Fld is - when F_Protocol => - True, - when others => - False), - when F_Protocol => - (case Fld is - when F_Header_Checksum => - True, - when others => - False), - when F_Header_Checksum => - (case Fld is - when F_Source => - True, - when others => - False), - when F_Source => - (case Fld is - when F_Destination => - True, - when others => - False), - when F_Destination => - (case Fld is - when F_Options => - True, - when others => - False), - when F_Options => - (case Fld is - when F_Payload => - True, - when others => - False), - when F_Payload | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Initial | F_Version | F_IHL | F_DSCP | F_ECN => - True, - when F_Total_Length => - Types.U64 (Val.Total_Length_Value) >= Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4, - when F_Identification => - True, - when F_Flag_R => - Types.U64 (Val.Flag_R_Value) = Types.U64 (To_Base (False)), - when F_Flag_DF | F_Flag_MF | F_Fragment_Offset | F_TTL | F_Protocol | F_Header_Checksum | F_Source | F_Destination | F_Options | F_Payload => - True, - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Version => - RFLX.IPv4.Version_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Version => - (case Fld is - when F_IHL => - RFLX.IPv4.IHL_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_IHL => - (case Fld is - when F_DSCP => - RFLX.IPv4.DCSP'Size, - when others => - Types.Unreachable_Bit_Length), - when F_DSCP => - (case Fld is - when F_ECN => - RFLX.IPv4.ECN'Size, - when others => - Types.Unreachable_Bit_Length), - when F_ECN => - (case Fld is - when F_Total_Length => - RFLX.IPv4.Total_Length'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Total_Length => - (case Fld is - when F_Identification => - RFLX.IPv4.Identification'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Identification => - (case Fld is - when F_Flag_R => - RFLX.RFLX_Builtin_Types.Boolean_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Flag_R => - (case Fld is - when F_Flag_DF => - RFLX.RFLX_Builtin_Types.Boolean_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Flag_DF => - (case Fld is - when F_Flag_MF => - RFLX.RFLX_Builtin_Types.Boolean_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Flag_MF => - (case Fld is - when F_Fragment_Offset => - RFLX.IPv4.Fragment_Offset'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Fragment_Offset => - (case Fld is - when F_TTL => - RFLX.IPv4.TTL'Size, - when others => - Types.Unreachable_Bit_Length), - when F_TTL => - (case Fld is - when F_Protocol => - RFLX.IPv4.Protocol_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Protocol => - (case Fld is - when F_Header_Checksum => - RFLX.IPv4.Header_Checksum'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Header_Checksum => - (case Fld is - when F_Source => - RFLX.IPv4.Address'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Source => - (case Fld is - when F_Destination => - RFLX.IPv4.Address'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Destination => - (case Fld is - when F_Options => - (Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) - 5) * 32, - when others => - Types.Unreachable_Bit_Length), - when F_Options => - (case Fld is - when F_Payload => - Types.Bit_Length (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) * 8 + Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) * (-32), - when others => - Types.Unreachable_Bit_Length), - when F_Payload | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Version => - Ctx.First, - when F_IHL => - (if - Ctx.Cursors (Fld).Predecessor = F_Version - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_DSCP => - (if - Ctx.Cursors (Fld).Predecessor = F_IHL - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_ECN => - (if - Ctx.Cursors (Fld).Predecessor = F_DSCP - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Total_Length => - (if - Ctx.Cursors (Fld).Predecessor = F_ECN - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Identification => - (if - Ctx.Cursors (Fld).Predecessor = F_Total_Length - and then Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4 - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Flag_R => - (if - Ctx.Cursors (Fld).Predecessor = F_Identification - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Flag_DF => - (if - Ctx.Cursors (Fld).Predecessor = F_Flag_R - and then Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = Types.U64 (To_Base (False)) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Flag_MF => - (if - Ctx.Cursors (Fld).Predecessor = F_Flag_DF - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Fragment_Offset => - (if - Ctx.Cursors (Fld).Predecessor = F_Flag_MF - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_TTL => - (if - Ctx.Cursors (Fld).Predecessor = F_Fragment_Offset - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Protocol => - (if - Ctx.Cursors (Fld).Predecessor = F_TTL - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Header_Checksum => - (if - Ctx.Cursors (Fld).Predecessor = F_Protocol - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Source => - (if - Ctx.Cursors (Fld).Predecessor = F_Header_Checksum - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Destination => - (if - Ctx.Cursors (Fld).Predecessor = F_Source - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Options => - (if - Ctx.Cursors (Fld).Predecessor = F_Destination - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Payload => - (if - Ctx.Cursors (Fld).Predecessor = F_Options - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length))); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Version => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_IHL => - (Valid (Ctx.Cursors (F_Version)) - and Ctx.Cursors (Fld).Predecessor = F_Version), - when F_DSCP => - (Valid (Ctx.Cursors (F_IHL)) - and Ctx.Cursors (Fld).Predecessor = F_IHL), - when F_ECN => - (Valid (Ctx.Cursors (F_DSCP)) - and Ctx.Cursors (Fld).Predecessor = F_DSCP), - when F_Total_Length => - (Valid (Ctx.Cursors (F_ECN)) - and Ctx.Cursors (Fld).Predecessor = F_ECN), - when F_Identification => - (Valid (Ctx.Cursors (F_Total_Length)) - and Ctx.Cursors (Fld).Predecessor = F_Total_Length), - when F_Flag_R => - (Valid (Ctx.Cursors (F_Identification)) - and Ctx.Cursors (Fld).Predecessor = F_Identification), - when F_Flag_DF => - (Valid (Ctx.Cursors (F_Flag_R)) - and Ctx.Cursors (Fld).Predecessor = F_Flag_R), - when F_Flag_MF => - (Valid (Ctx.Cursors (F_Flag_DF)) - and Ctx.Cursors (Fld).Predecessor = F_Flag_DF), - when F_Fragment_Offset => - (Valid (Ctx.Cursors (F_Flag_MF)) - and Ctx.Cursors (Fld).Predecessor = F_Flag_MF), - when F_TTL => - (Valid (Ctx.Cursors (F_Fragment_Offset)) - and Ctx.Cursors (Fld).Predecessor = F_Fragment_Offset), - when F_Protocol => - (Valid (Ctx.Cursors (F_TTL)) - and Ctx.Cursors (Fld).Predecessor = F_TTL), - when F_Header_Checksum => - (Valid (Ctx.Cursors (F_Protocol)) - and Ctx.Cursors (Fld).Predecessor = F_Protocol), - when F_Source => - (Valid (Ctx.Cursors (F_Header_Checksum)) - and Ctx.Cursors (Fld).Predecessor = F_Header_Checksum), - when F_Destination => - (Valid (Ctx.Cursors (F_Source)) - and Ctx.Cursors (Fld).Predecessor = F_Source), - when F_Options => - (Valid (Ctx.Cursors (F_Destination)) - and Ctx.Cursors (Fld).Predecessor = F_Destination), - when F_Payload => - (Structural_Valid (Ctx.Cursors (F_Options)) - and Ctx.Cursors (Fld).Predecessor = F_Options), - when F_Final => - (Structural_Valid (Ctx.Cursors (F_Payload)) - and Ctx.Cursors (Fld).Predecessor = F_Payload))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Version) - and then Valid (Ctx, F_IHL) - and then Valid (Ctx, F_DSCP) - and then Valid (Ctx, F_ECN) - and then Valid (Ctx, F_Total_Length) - and then Valid (Ctx, F_Identification) - and then Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4 - and then Valid (Ctx, F_Flag_R) - and then Valid (Ctx, F_Flag_DF) - and then Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = Types.U64 (To_Base (False)) - and then Valid (Ctx, F_Flag_MF) - and then Valid (Ctx, F_Fragment_Offset) - and then Valid (Ctx, F_TTL) - and then Valid (Ctx, F_Protocol) - and then Valid (Ctx, F_Header_Checksum) - and then Valid (Ctx, F_Source) - and then Valid (Ctx, F_Destination) - and then Structural_Valid (Ctx, F_Options) - and then Structural_Valid (Ctx, F_Payload)); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Version) - and then Valid (Ctx, F_IHL) - and then Valid (Ctx, F_DSCP) - and then Valid (Ctx, F_ECN) - and then Valid (Ctx, F_Total_Length) - and then Valid (Ctx, F_Identification) - and then Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4 - and then Valid (Ctx, F_Flag_R) - and then Valid (Ctx, F_Flag_DF) - and then Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = Types.U64 (To_Base (False)) - and then Valid (Ctx, F_Flag_MF) - and then Valid (Ctx, F_Fragment_Offset) - and then Valid (Ctx, F_TTL) - and then Valid (Ctx, F_Protocol) - and then Valid (Ctx, F_Header_Checksum) - and then Valid (Ctx, F_Source) - and then Valid (Ctx, F_Destination) - and then Valid (Ctx, F_Options) - and then Valid (Ctx, F_Payload)); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Version) - or Incomplete (Ctx, F_IHL) - or Incomplete (Ctx, F_DSCP) - or Incomplete (Ctx, F_ECN) - or Incomplete (Ctx, F_Total_Length) - or Incomplete (Ctx, F_Identification) - or Incomplete (Ctx, F_Flag_R) - or Incomplete (Ctx, F_Flag_DF) - or Incomplete (Ctx, F_Flag_MF) - or Incomplete (Ctx, F_Fragment_Offset) - or Incomplete (Ctx, F_TTL) - or Incomplete (Ctx, F_Protocol) - or Incomplete (Ctx, F_Header_Checksum) - or Incomplete (Ctx, F_Source) - or Incomplete (Ctx, F_Destination) - or Incomplete (Ctx, F_Options) - or Incomplete (Ctx, F_Payload)); - - function Get_Version (Ctx : Context) return RFLX.IPv4.Version is - (To_Actual (Ctx.Cursors (F_Version).Value.Version_Value)); - - function Get_IHL (Ctx : Context) return RFLX.IPv4.IHL is - (To_Actual (Ctx.Cursors (F_IHL).Value.IHL_Value)); - - function Get_DSCP (Ctx : Context) return RFLX.IPv4.DCSP is - (To_Actual (Ctx.Cursors (F_DSCP).Value.DSCP_Value)); - - function Get_ECN (Ctx : Context) return RFLX.IPv4.ECN is - (To_Actual (Ctx.Cursors (F_ECN).Value.ECN_Value)); - - function Get_Total_Length (Ctx : Context) return RFLX.IPv4.Total_Length is - (To_Actual (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value)); - - function Get_Identification (Ctx : Context) return RFLX.IPv4.Identification is - (To_Actual (Ctx.Cursors (F_Identification).Value.Identification_Value)); - - function Get_Flag_R (Ctx : Context) return Boolean is - (To_Actual (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value)); - - function Get_Flag_DF (Ctx : Context) return Boolean is - (To_Actual (Ctx.Cursors (F_Flag_DF).Value.Flag_DF_Value)); - - function Get_Flag_MF (Ctx : Context) return Boolean is - (To_Actual (Ctx.Cursors (F_Flag_MF).Value.Flag_MF_Value)); - - function Get_Fragment_Offset (Ctx : Context) return RFLX.IPv4.Fragment_Offset is - (To_Actual (Ctx.Cursors (F_Fragment_Offset).Value.Fragment_Offset_Value)); - - function Get_TTL (Ctx : Context) return RFLX.IPv4.TTL is - (To_Actual (Ctx.Cursors (F_TTL).Value.TTL_Value)); - - function Get_Protocol (Ctx : Context) return RFLX.IPv4.Protocol is - (To_Actual (Ctx.Cursors (F_Protocol).Value.Protocol_Value)); - - function Get_Header_Checksum (Ctx : Context) return RFLX.IPv4.Header_Checksum is - (To_Actual (Ctx.Cursors (F_Header_Checksum).Value.Header_Checksum_Value)); - - function Get_Source (Ctx : Context) return RFLX.IPv4.Address is - (To_Actual (Ctx.Cursors (F_Source).Value.Source_Value)); - - function Get_Destination (Ctx : Context) return RFLX.IPv4.Address is - (To_Actual (Ctx.Cursors (F_Destination).Value.Destination_Value)); - - function Complete_Options (Ctx : Context; Seq_Ctx : Options_Sequence.Context) return Boolean is - (Options_Sequence.Valid (Seq_Ctx) - and Options_Sequence.Size (Seq_Ctx) = Field_Size (Ctx, F_Options)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.IPv4.Generic_Packet; diff --git a/tests/spark/generated/rflx-ipv4-generic_option.adb b/tests/spark/generated/rflx-ipv4-option.adb similarity index 76% rename from tests/spark/generated/rflx-ipv4-generic_option.adb rename to tests/spark/generated/rflx-ipv4-option.adb index d8195104a..1843ed16a 100644 --- a/tests/spark/generated/rflx-ipv4-generic_option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.IPv4.Generic_Option with +package body RFLX.IPv4.Option with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Copied => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -68,7 +68,7 @@ is F_Option_Number, when F_Option_Number => (if - Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) + RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 1 then F_Final @@ -80,17 +80,17 @@ is F_Initial), when F_Option_Length => (if - (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Debugging_And_Measurement)) + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8) then F_Option_Data @@ -121,8 +121,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -130,11 +129,11 @@ is Has_Buffer (Ctx) and Valid_Next (Ctx, Fld); - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean is + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Option_Data => - Ctx.Buffer.all (Types.Byte_Index (Field_First (Ctx, Fld)) .. Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -185,9 +184,9 @@ is and Ctx.Cursors (F_Option_Length) = Ctx.Cursors (F_Option_Length)'Old and Invalid (Ctx, F_Option_Data)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -241,18 +240,18 @@ is Post => Get_Field_Value'Result.Fld = Fld is - First : constant Types.Bit_Index := Field_First (Ctx, Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - function Extract is new Types.Extract (RFLX.RFLX_Builtin_Types.Boolean_Base); - function Extract is new Types.Extract (RFLX.IPv4.Option_Class_Base); - function Extract is new Types.Extract (RFLX.IPv4.Option_Number); - function Extract is new Types.Extract (RFLX.IPv4.Option_Length_Base); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.RFLX_Builtin_Types.Boolean_Base); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.Option_Class_Base); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.Option_Number); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.Option_Length_Base); begin return ((case Fld is when F_Copied => @@ -286,7 +285,7 @@ is Fld = F_Option_Data or Fld = F_Option_Number then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); @@ -323,13 +322,13 @@ is end Verify_Message; procedure Get_Option_Data (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Option_Data).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Option_Data).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Option_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Option_Data).Last); begin Process_Option_Data (Ctx.Buffer.all (First .. Last)); end Get_Option_Data; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out Types.Bit_Index) with + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -359,18 +358,18 @@ is and Ctx.Last = Ctx.Last'Old and Ctx.Cursors = Ctx.Cursors'Old is - First : constant Types.Bit_Index := Field_First (Ctx, Val.Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Val.Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - procedure Insert is new Types.Insert (RFLX.RFLX_Builtin_Types.Boolean_Base); - procedure Insert is new Types.Insert (RFLX.IPv4.Option_Class_Base); - procedure Insert is new Types.Insert (RFLX.IPv4.Option_Number); - procedure Insert is new Types.Insert (RFLX.IPv4.Option_Length_Base); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.RFLX_Builtin_Types.Boolean_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.Option_Class_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.Option_Number); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.Option_Length_Base); begin Fst := First; Lst := Last; @@ -392,7 +391,7 @@ is procedure Set_Copied (Ctx : in out Context; Val : Boolean) is Field_Value : constant Field_Dependent_Value := (F_Copied, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Copied); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -403,7 +402,7 @@ is procedure Set_Option_Class (Ctx : in out Context; Val : RFLX.IPv4.Option_Class) is Field_Value : constant Field_Dependent_Value := (F_Option_Class, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Option_Class); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -414,7 +413,7 @@ is procedure Set_Option_Number (Ctx : in out Context; Val : RFLX.IPv4.Option_Number) is Field_Value : constant Field_Dependent_Value := (F_Option_Number, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Option_Number); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -425,7 +424,7 @@ is procedure Set_Option_Length (Ctx : in out Context; Val : RFLX.IPv4.Option_Length) is Field_Value : constant Field_Dependent_Value := (F_Option_Length, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Option_Length); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -435,8 +434,8 @@ is end Set_Option_Length; procedure Set_Option_Data_Empty (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Option_Data); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Option_Data); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Option_Data); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Option_Data); begin Reset_Dependent_Fields (Ctx, F_Option_Data); Ctx.Message_Last := Last; @@ -451,9 +450,9 @@ is and then Valid_Next (Ctx, F_Option_Data) and then Field_Condition (Ctx, (Fld => F_Option_Data)) and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) - and then Field_First (Ctx, F_Option_Data) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Option_Data) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Option_Data) mod Types.Byte'Size = 0, + and then Field_First (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0, Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Option_Data) @@ -469,8 +468,8 @@ is and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old and Get_Option_Length (Ctx) = Get_Option_Length (Ctx)'Old is - First : constant Types.Bit_Index := Field_First (Ctx, F_Option_Data); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Option_Data); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Option_Data); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Option_Data); begin Reset_Dependent_Fields (Ctx, F_Option_Data); Ctx.Message_Last := Last; @@ -483,28 +482,28 @@ is Initialize_Option_Data_Private (Ctx); end Initialize_Option_Data; - procedure Set_Option_Data (Ctx : in out Context; Value : Types.Bytes) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Option_Data); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Option_Data); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Option_Data (Ctx : in out Context; Value : RFLX_Types.Bytes) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Option_Data); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Option_Data); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Option_Data_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; end Set_Option_Data; procedure Generic_Set_Option_Data (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Option_Data); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Option_Data); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Option_Data); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Option_Data); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Option_Data_Private (Ctx); Process_Option_Data (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Generic_Set_Option_Data; -end RFLX.IPv4.Generic_Option; +end RFLX.IPv4.Option; diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index 22cef9f06..83b7c7591 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -1,7 +1,1008 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.IPv4.Generic_Option; +with RFLX.RFLX_Builtin_Types; +with RFLX.RFLX_Builtin_Types.Conversions; +use RFLX.RFLX_Builtin_Types.Conversions; -package RFLX.IPv4.Option is new RFLX.IPv4.Generic_Option (RFLX.RFLX_Types); +package RFLX.IPv4.Option with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Copied, F_Option_Class, F_Option_Number, F_Option_Length, F_Option_Data, F_Final); + + subtype Field is Virtual_Field range F_Copied .. F_Option_Data; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Option_Data | F_Final => + null; + when F_Copied => + Copied_Value : RFLX.RFLX_Builtin_Types.Boolean_Base; + when F_Option_Class => + Option_Class_Value : RFLX.IPv4.Option_Class_Base; + when F_Option_Number => + Option_Number_Value : RFLX.IPv4.Option_Number; + when F_Option_Length => + Option_Length_Value : RFLX.IPv4.Option_Length_Base; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Copied (Ctx : Context) return Boolean with + Pre => + Valid (Ctx, F_Copied); + + function Get_Option_Class (Ctx : Context) return RFLX.IPv4.Option_Class with + Pre => + Valid (Ctx, F_Option_Class); + + function Get_Option_Number (Ctx : Context) return RFLX.IPv4.Option_Number with + Pre => + Valid (Ctx, F_Option_Number); + + function Get_Option_Length (Ctx : Context) return RFLX.IPv4.Option_Length with + Pre => + Valid (Ctx, F_Option_Length); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Option_Data (Option_Data : RFLX_Types.Bytes); + procedure Get_Option_Data (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Option_Data); + + procedure Set_Copied (Ctx : in out Context; Val : Boolean) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Copied) + and then Field_Condition (Ctx, (F_Copied, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Copied) >= Field_Size (Ctx, F_Copied), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Copied) + and Get_Copied (Ctx) = Val + and Invalid (Ctx, F_Option_Class) + and Invalid (Ctx, F_Option_Number) + and Invalid (Ctx, F_Option_Length) + and Invalid (Ctx, F_Option_Data) + and (Predecessor (Ctx, F_Option_Class) = F_Copied + and Valid_Next (Ctx, F_Option_Class)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Copied) = Predecessor (Ctx, F_Copied)'Old + and Valid_Next (Ctx, F_Copied) = Valid_Next (Ctx, F_Copied)'Old; + + procedure Set_Option_Class (Ctx : in out Context; Val : RFLX.IPv4.Option_Class) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Option_Class) + and then Field_Condition (Ctx, (F_Option_Class, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Option_Class) >= Field_Size (Ctx, F_Option_Class), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Option_Class) + and Get_Option_Class (Ctx) = Val + and Invalid (Ctx, F_Option_Number) + and Invalid (Ctx, F_Option_Length) + and Invalid (Ctx, F_Option_Data) + and (Predecessor (Ctx, F_Option_Number) = F_Option_Class + and Valid_Next (Ctx, F_Option_Number)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Option_Class) = Predecessor (Ctx, F_Option_Class)'Old + and Valid_Next (Ctx, F_Option_Class) = Valid_Next (Ctx, F_Option_Class)'Old + and Get_Copied (Ctx) = Get_Copied (Ctx)'Old + and Context_Cursor (Ctx, F_Copied) = Context_Cursor (Ctx, F_Copied)'Old; + + procedure Set_Option_Number (Ctx : in out Context; Val : RFLX.IPv4.Option_Number) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Option_Number) + and then Field_Condition (Ctx, (F_Option_Number, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Option_Number) >= Field_Size (Ctx, F_Option_Number), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Option_Number) + and Get_Option_Number (Ctx) = Val + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Option_Number)) + and Invalid (Ctx, F_Option_Length) + and Invalid (Ctx, F_Option_Data) + and (if + Get_Option_Number (Ctx) > 1 + then + Predecessor (Ctx, F_Option_Length) = F_Option_Number + and Valid_Next (Ctx, F_Option_Length)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Option_Number) = Predecessor (Ctx, F_Option_Number)'Old + and Valid_Next (Ctx, F_Option_Number) = Valid_Next (Ctx, F_Option_Number)'Old + and Get_Copied (Ctx) = Get_Copied (Ctx)'Old + and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old + and Context_Cursor (Ctx, F_Copied) = Context_Cursor (Ctx, F_Copied)'Old + and Context_Cursor (Ctx, F_Option_Class) = Context_Cursor (Ctx, F_Option_Class)'Old; + + procedure Set_Option_Length (Ctx : in out Context; Val : RFLX.IPv4.Option_Length) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Option_Length) + and then Field_Condition (Ctx, (F_Option_Length, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Option_Length) >= Field_Size (Ctx, F_Option_Length), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Option_Length) + and Get_Option_Length (Ctx) = Val + and Invalid (Ctx, F_Option_Data) + and (if + (RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and Get_Option_Number (Ctx) = 4) + or (RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (Control)) + and (Get_Option_Number (Ctx) = 9 + or Get_Option_Number (Ctx) = 3 + or Get_Option_Number (Ctx) = 7)) + or (Get_Option_Length (Ctx) = 11 + and RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (Control)) + and Get_Option_Number (Ctx) = 2) + or (Get_Option_Length (Ctx) = 4 + and RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (Control)) + and Get_Option_Number (Ctx) = 8) + then + Predecessor (Ctx, F_Option_Data) = F_Option_Length + and Valid_Next (Ctx, F_Option_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Option_Length) = Predecessor (Ctx, F_Option_Length)'Old + and Valid_Next (Ctx, F_Option_Length) = Valid_Next (Ctx, F_Option_Length)'Old + and Get_Copied (Ctx) = Get_Copied (Ctx)'Old + and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old + and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old + and Context_Cursor (Ctx, F_Copied) = Context_Cursor (Ctx, F_Copied)'Old + and Context_Cursor (Ctx, F_Option_Class) = Context_Cursor (Ctx, F_Option_Class)'Old + and Context_Cursor (Ctx, F_Option_Number) = Context_Cursor (Ctx, F_Option_Number)'Old; + + procedure Set_Option_Data_Empty (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Option_Data) + and then Field_Condition (Ctx, (Fld => F_Option_Data)) + and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) + and then Field_First (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Option_Data) = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Option_Data) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Option_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Option_Data) = Predecessor (Ctx, F_Option_Data)'Old + and Valid_Next (Ctx, F_Option_Data) = Valid_Next (Ctx, F_Option_Data)'Old + and Get_Copied (Ctx) = Get_Copied (Ctx)'Old + and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old + and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old + and Get_Option_Length (Ctx) = Get_Option_Length (Ctx)'Old; + + procedure Initialize_Option_Data (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Option_Data) + and then Field_Condition (Ctx, (Fld => F_Option_Data)) + and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) + and then Field_First (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Option_Data) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Option_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Option_Data) = Predecessor (Ctx, F_Option_Data)'Old + and Valid_Next (Ctx, F_Option_Data) = Valid_Next (Ctx, F_Option_Data)'Old + and Get_Copied (Ctx) = Get_Copied (Ctx)'Old + and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old + and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old + and Get_Option_Length (Ctx) = Get_Option_Length (Ctx)'Old; + + procedure Set_Option_Data (Ctx : in out Context; Value : RFLX_Types.Bytes) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Option_Data) + and then Field_Condition (Ctx, (Fld => F_Option_Data)) + and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) + and then Field_First (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 + and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Option_Data)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Option_Data)) + 1, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Option_Data) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Option_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Option_Data) = Predecessor (Ctx, F_Option_Data)'Old + and Valid_Next (Ctx, F_Option_Data) = Valid_Next (Ctx, F_Option_Data)'Old + and Get_Copied (Ctx) = Get_Copied (Ctx)'Old + and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old + and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old + and Get_Option_Length (Ctx) = Get_Option_Length (Ctx)'Old; + + generic + with procedure Process_Option_Data (Option_Data : out RFLX_Types.Bytes); + with function Valid_Length (Length : RFLX_Types.Length) return Boolean; + procedure Generic_Set_Option_Data (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Option_Data) + and then Field_Condition (Ctx, (Fld => F_Option_Data)) + and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) + and then Field_First (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 + and then Valid_Length (RFLX_Types.Length (Field_Size (Ctx, F_Option_Data) / RFLX_Types.Byte'Size)), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Option_Data) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Option_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Option_Data) = Predecessor (Ctx, F_Option_Data)'Old + and Valid_Next (Ctx, F_Option_Data) = Valid_Next (Ctx, F_Option_Data)'Old + and Get_Copied (Ctx) = Get_Copied (Ctx)'Old + and Get_Option_Class (Ctx) = Get_Option_Class (Ctx)'Old + and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old + and Get_Option_Length (Ctx) = Get_Option_Length (Ctx)'Old; + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Copied => + Valid (Val.Copied_Value), + when F_Option_Class => + Valid (Val.Option_Class_Value), + when F_Option_Number => + Valid (Val.Option_Number_Value), + when F_Option_Length => + Valid (Val.Option_Length_Value), + when F_Option_Data => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_Option_Class)) + then + (Valid (Cursors (F_Copied)) + and then Cursors (F_Option_Class).Predecessor = F_Copied)) + and then (if + Structural_Valid (Cursors (F_Option_Number)) + then + (Valid (Cursors (F_Option_Class)) + and then Cursors (F_Option_Number).Predecessor = F_Option_Class)) + and then (if + Structural_Valid (Cursors (F_Option_Length)) + then + (Valid (Cursors (F_Option_Number)) + and then Cursors (F_Option_Length).Predecessor = F_Option_Number + and then Cursors (F_Option_Number).Value.Option_Number_Value > 1)) + and then (if + Structural_Valid (Cursors (F_Option_Data)) + then + (Valid (Cursors (F_Option_Length)) + and then Cursors (F_Option_Data).Predecessor = F_Option_Length + and then ((RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and Cursors (F_Option_Number).Value.Option_Number_Value = 4) + or (RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and (Cursors (F_Option_Number).Value.Option_Number_Value = 9 + or Cursors (F_Option_Number).Value.Option_Number_Value = 3 + or Cursors (F_Option_Number).Value.Option_Number_Value = 7)) + or (Cursors (F_Option_Length).Value.Option_Length_Value = 11 + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Cursors (F_Option_Number).Value.Option_Number_Value = 2) + or (Cursors (F_Option_Length).Value.Option_Length_Value = 4 + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Cursors (F_Option_Number).Value.Option_Number_Value = 8))))) + and then ((if + Invalid (Cursors (F_Copied)) + then + Invalid (Cursors (F_Option_Class))) + and then (if + Invalid (Cursors (F_Option_Class)) + then + Invalid (Cursors (F_Option_Number))) + and then (if + Invalid (Cursors (F_Option_Number)) + then + Invalid (Cursors (F_Option_Length))) + and then (if + Invalid (Cursors (F_Option_Length)) + then + Invalid (Cursors (F_Option_Data)))) + and then (if + Structural_Valid (Cursors (F_Copied)) + then + Cursors (F_Copied).Last - Cursors (F_Copied).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size + and then Cursors (F_Copied).Predecessor = F_Initial + and then Cursors (F_Copied).First = First + and then (if + Structural_Valid (Cursors (F_Option_Class)) + then + Cursors (F_Option_Class).Last - Cursors (F_Option_Class).First + 1 = RFLX.IPv4.Option_Class_Base'Size + and then Cursors (F_Option_Class).Predecessor = F_Copied + and then Cursors (F_Option_Class).First = Cursors (F_Copied).Last + 1 + and then (if + Structural_Valid (Cursors (F_Option_Number)) + then + Cursors (F_Option_Number).Last - Cursors (F_Option_Number).First + 1 = RFLX.IPv4.Option_Number'Size + and then Cursors (F_Option_Number).Predecessor = F_Option_Class + and then Cursors (F_Option_Number).First = Cursors (F_Option_Class).Last + 1 + and then (if + Structural_Valid (Cursors (F_Option_Length)) + and then Cursors (F_Option_Number).Value.Option_Number_Value > 1 + then + Cursors (F_Option_Length).Last - Cursors (F_Option_Length).First + 1 = RFLX.IPv4.Option_Length_Base'Size + and then Cursors (F_Option_Length).Predecessor = F_Option_Number + and then Cursors (F_Option_Length).First = Cursors (F_Option_Number).Last + 1 + and then (if + Structural_Valid (Cursors (F_Option_Data)) + and then ((RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and Cursors (F_Option_Number).Value.Option_Number_Value = 4) + or (RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and (Cursors (F_Option_Number).Value.Option_Number_Value = 9 + or Cursors (F_Option_Number).Value.Option_Number_Value = 3 + or Cursors (F_Option_Number).Value.Option_Number_Value = 7)) + or (Cursors (F_Option_Length).Value.Option_Length_Value = 11 + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Cursors (F_Option_Number).Value.Option_Number_Value = 2) + or (Cursors (F_Option_Length).Value.Option_Length_Value = 4 + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Cursors (F_Option_Number).Value.Option_Number_Value = 8)) + then + Cursors (F_Option_Data).Last - Cursors (F_Option_Data).First + 1 = (RFLX_Types.Bit_Length (Cursors (F_Option_Length).Value.Option_Length_Value) - 2) * 8 + and then Cursors (F_Option_Data).Predecessor = F_Option_Length + and then Cursors (F_Option_Data).First = Cursors (F_Option_Length).Last + 1)))))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Copied) + and then Field_First (Ctx, F_Copied) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Copied) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Copied) + and then Invalid (Ctx, F_Option_Class) + and then Invalid (Ctx, F_Option_Number) + and then Invalid (Ctx, F_Option_Length) + and then Invalid (Ctx, F_Option_Data)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Copied => + True, + when others => + False), + when F_Copied => + (case Fld is + when F_Option_Class => + True, + when others => + False), + when F_Option_Class => + (case Fld is + when F_Option_Number => + True, + when others => + False), + when F_Option_Number => + (case Fld is + when F_Option_Length => + Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1, + when others => + False), + when F_Option_Length => + (case Fld is + when F_Option_Data => + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 + or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 + or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) + or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) + or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8), + when others => + False), + when F_Option_Data | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial | F_Copied | F_Option_Class => + True, + when F_Option_Number => + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Val.Option_Number_Value) = 1) + or RFLX_Types.U64 (Val.Option_Number_Value) > 1, + when F_Option_Length => + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 + or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 + or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) + or (RFLX_Types.U64 (Val.Option_Length_Value) = 11 + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) + or (RFLX_Types.U64 (Val.Option_Length_Value) = 4 + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8), + when F_Option_Data => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Copied => + RFLX.RFLX_Builtin_Types.Boolean_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Copied => + (case Fld is + when F_Option_Class => + RFLX.IPv4.Option_Class_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Option_Class => + (case Fld is + when F_Option_Number => + RFLX.IPv4.Option_Number'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Option_Number => + (case Fld is + when F_Option_Length => + RFLX.IPv4.Option_Length_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Option_Length => + (case Fld is + when F_Option_Data => + (RFLX_Types.Bit_Length (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value) - 2) * 8, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Option_Data | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Copied => + Ctx.First, + when F_Option_Class => + (if + Ctx.Cursors (Fld).Predecessor = F_Copied + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Option_Number => + (if + Ctx.Cursors (Fld).Predecessor = F_Option_Class + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Option_Length => + (if + Ctx.Cursors (Fld).Predecessor = F_Option_Number + and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Option_Data => + (if + Ctx.Cursors (Fld).Predecessor = F_Option_Length + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 + or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 + or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) + or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) + or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8)) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Copied => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Option_Class => + (Valid (Ctx.Cursors (F_Copied)) + and Ctx.Cursors (Fld).Predecessor = F_Copied), + when F_Option_Number => + (Valid (Ctx.Cursors (F_Option_Class)) + and Ctx.Cursors (Fld).Predecessor = F_Option_Class), + when F_Option_Length => + (Valid (Ctx.Cursors (F_Option_Number)) + and Ctx.Cursors (Fld).Predecessor = F_Option_Number), + when F_Option_Data => + (Valid (Ctx.Cursors (F_Option_Length)) + and Ctx.Cursors (Fld).Predecessor = F_Option_Length), + when F_Final => + (Structural_Valid (Ctx.Cursors (F_Option_Data)) + and Ctx.Cursors (Fld).Predecessor = F_Option_Data) + or (Valid (Ctx.Cursors (F_Option_Number)) + and Ctx.Cursors (Fld).Predecessor = F_Option_Number))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Copied) + and then Valid (Ctx, F_Option_Class) + and then Valid (Ctx, F_Option_Number) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 1) + or (Valid (Ctx, F_Option_Length) + and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 + and then Structural_Valid (Ctx, F_Option_Data) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 + or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 + or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) + or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) + or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8))))); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Copied) + and then Valid (Ctx, F_Option_Class) + and then Valid (Ctx, F_Option_Number) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 1) + or (Valid (Ctx, F_Option_Length) + and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 + and then Valid (Ctx, F_Option_Data) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 + or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 + or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) + or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) + or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8))))); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Copied) + or Incomplete (Ctx, F_Option_Class) + or Incomplete (Ctx, F_Option_Number) + or Incomplete (Ctx, F_Option_Length) + or Incomplete (Ctx, F_Option_Data)); + + function Get_Copied (Ctx : Context) return Boolean is + (To_Actual (Ctx.Cursors (F_Copied).Value.Copied_Value)); + + function Get_Option_Class (Ctx : Context) return RFLX.IPv4.Option_Class is + (To_Actual (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value)); + + function Get_Option_Number (Ctx : Context) return RFLX.IPv4.Option_Number is + (To_Actual (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value)); + + function Get_Option_Length (Ctx : Context) return RFLX.IPv4.Option_Length is + (To_Actual (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.IPv4.Option; diff --git a/tests/spark/generated/rflx-ipv4-options.ads b/tests/spark/generated/rflx-ipv4-options.ads index 68ae53ed4..22ee85878 100644 --- a/tests/spark/generated/rflx-ipv4-options.ads +++ b/tests/spark/generated/rflx-ipv4-options.ads @@ -1,8 +1,10 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); pragma SPARK_Mode; -with RFLX.RFLX_Types; with RFLX.RFLX_Message_Sequence; with RFLX.IPv4.Option; +pragma Warnings (Off, "unit ""*RFLX_Types"" is not referenced"); +with RFLX.RFLX_Types; +pragma Warnings (On, "unit ""*RFLX_Types"" is not referenced"); -package RFLX.IPv4.Options is new RFLX.RFLX_Message_Sequence (RFLX.RFLX_Types, RFLX.IPv4.Option.Context, RFLX.IPv4.Option.Initialize, RFLX.IPv4.Option.Take_Buffer, RFLX.IPv4.Option.Has_Buffer, RFLX.IPv4.Option.Message_Last, RFLX.IPv4.Option.Initialized, RFLX.IPv4.Option.Structural_Valid_Message); +package RFLX.IPv4.Options is new RFLX.RFLX_Message_Sequence (RFLX.IPv4.Option.Context, RFLX.IPv4.Option.Initialize, RFLX.IPv4.Option.Take_Buffer, RFLX.IPv4.Option.Has_Buffer, RFLX.IPv4.Option.Message_Last, RFLX.IPv4.Option.Initialized, RFLX.IPv4.Option.Structural_Valid_Message); diff --git a/tests/spark/generated/rflx-ipv4-generic_packet.adb b/tests/spark/generated/rflx-ipv4-packet.adb similarity index 88% rename from tests/spark/generated/rflx-ipv4-generic_packet.adb rename to tests/spark/generated/rflx-ipv4-packet.adb index f9a68b3e6..858761fb8 100644 --- a/tests/spark/generated/rflx-ipv4-generic_packet.adb +++ b/tests/spark/generated/rflx-ipv4-packet.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.IPv4.Generic_Packet with +package body RFLX.IPv4.Packet with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Version => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -72,7 +72,7 @@ is F_Total_Length, when F_Total_Length => (if - Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4 + RFLX_Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= RFLX_Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4 then F_Identification else @@ -81,7 +81,7 @@ is F_Flag_R, when F_Flag_R => (if - Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = Types.U64 (To_Base (False)) + RFLX_Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = RFLX_Types.U64 (To_Base (False)) then F_Flag_DF else @@ -153,8 +153,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -162,11 +161,11 @@ is Has_Buffer (Ctx) and Valid_Next (Ctx, Fld); - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean is + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Options | F_Payload => - Ctx.Buffer.all (Types.Byte_Index (Field_First (Ctx, Fld)) .. Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -493,9 +492,9 @@ is and Ctx.Cursors (F_Options) = Ctx.Cursors (F_Options)'Old and Invalid (Ctx, F_Payload)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -723,26 +722,26 @@ is Post => Get_Field_Value'Result.Fld = Fld is - First : constant Types.Bit_Index := Field_First (Ctx, Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - function Extract is new Types.Extract (RFLX.IPv4.Version_Base); - function Extract is new Types.Extract (RFLX.IPv4.IHL_Base); - function Extract is new Types.Extract (RFLX.IPv4.DCSP); - function Extract is new Types.Extract (RFLX.IPv4.ECN); - function Extract is new Types.Extract (RFLX.IPv4.Total_Length); - function Extract is new Types.Extract (RFLX.IPv4.Identification); - function Extract is new Types.Extract (RFLX.RFLX_Builtin_Types.Boolean_Base); - function Extract is new Types.Extract (RFLX.IPv4.Fragment_Offset); - function Extract is new Types.Extract (RFLX.IPv4.TTL); - function Extract is new Types.Extract (RFLX.IPv4.Protocol_Base); - function Extract is new Types.Extract (RFLX.IPv4.Header_Checksum); - function Extract is new Types.Extract (RFLX.IPv4.Address); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.Version_Base); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.IHL_Base); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.DCSP); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.ECN); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.Total_Length); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.Identification); + function Extract is new RFLX_Types.Extract (RFLX.RFLX_Builtin_Types.Boolean_Base); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.Fragment_Offset); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.TTL); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.Protocol_Base); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.Header_Checksum); + function Extract is new RFLX_Types.Extract (RFLX.IPv4.Address); begin return ((case Fld is when F_Version => @@ -799,7 +798,7 @@ is pragma Assert ((if Fld = F_Payload then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); @@ -872,20 +871,20 @@ is end Verify_Message; procedure Get_Options (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Options).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Options).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Options).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Options).Last); begin Process_Options (Ctx.Buffer.all (First .. Last)); end Get_Options; procedure Get_Payload (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); begin Process_Payload (Ctx.Buffer.all (First .. Last)); end Get_Payload; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out Types.Bit_Index) with + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -915,26 +914,26 @@ is and Ctx.Last = Ctx.Last'Old and Ctx.Cursors = Ctx.Cursors'Old is - First : constant Types.Bit_Index := Field_First (Ctx, Val.Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Val.Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - procedure Insert is new Types.Insert (RFLX.IPv4.Version_Base); - procedure Insert is new Types.Insert (RFLX.IPv4.IHL_Base); - procedure Insert is new Types.Insert (RFLX.IPv4.DCSP); - procedure Insert is new Types.Insert (RFLX.IPv4.ECN); - procedure Insert is new Types.Insert (RFLX.IPv4.Total_Length); - procedure Insert is new Types.Insert (RFLX.IPv4.Identification); - procedure Insert is new Types.Insert (RFLX.RFLX_Builtin_Types.Boolean_Base); - procedure Insert is new Types.Insert (RFLX.IPv4.Fragment_Offset); - procedure Insert is new Types.Insert (RFLX.IPv4.TTL); - procedure Insert is new Types.Insert (RFLX.IPv4.Protocol_Base); - procedure Insert is new Types.Insert (RFLX.IPv4.Header_Checksum); - procedure Insert is new Types.Insert (RFLX.IPv4.Address); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.Version_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.IHL_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.DCSP); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.ECN); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.Total_Length); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.Identification); + procedure Insert is new RFLX_Types.Insert (RFLX.RFLX_Builtin_Types.Boolean_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.Fragment_Offset); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.TTL); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.Protocol_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.Header_Checksum); + procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.Address); begin Fst := First; Lst := Last; @@ -978,7 +977,7 @@ is procedure Set_Version (Ctx : in out Context; Val : RFLX.IPv4.Version) is Field_Value : constant Field_Dependent_Value := (F_Version, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Version); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -989,7 +988,7 @@ is procedure Set_IHL (Ctx : in out Context; Val : RFLX.IPv4.IHL) is Field_Value : constant Field_Dependent_Value := (F_IHL, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_IHL); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1000,7 +999,7 @@ is procedure Set_DSCP (Ctx : in out Context; Val : RFLX.IPv4.DCSP) is Field_Value : constant Field_Dependent_Value := (F_DSCP, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_DSCP); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1011,7 +1010,7 @@ is procedure Set_ECN (Ctx : in out Context; Val : RFLX.IPv4.ECN) is Field_Value : constant Field_Dependent_Value := (F_ECN, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_ECN); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1022,7 +1021,7 @@ is procedure Set_Total_Length (Ctx : in out Context; Val : RFLX.IPv4.Total_Length) is Field_Value : constant Field_Dependent_Value := (F_Total_Length, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Total_Length); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1033,7 +1032,7 @@ is procedure Set_Identification (Ctx : in out Context; Val : RFLX.IPv4.Identification) is Field_Value : constant Field_Dependent_Value := (F_Identification, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Identification); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1044,7 +1043,7 @@ is procedure Set_Flag_R (Ctx : in out Context; Val : Boolean) is Field_Value : constant Field_Dependent_Value := (F_Flag_R, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Flag_R); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1055,7 +1054,7 @@ is procedure Set_Flag_DF (Ctx : in out Context; Val : Boolean) is Field_Value : constant Field_Dependent_Value := (F_Flag_DF, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Flag_DF); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1066,7 +1065,7 @@ is procedure Set_Flag_MF (Ctx : in out Context; Val : Boolean) is Field_Value : constant Field_Dependent_Value := (F_Flag_MF, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Flag_MF); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1077,7 +1076,7 @@ is procedure Set_Fragment_Offset (Ctx : in out Context; Val : RFLX.IPv4.Fragment_Offset) is Field_Value : constant Field_Dependent_Value := (F_Fragment_Offset, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Fragment_Offset); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1088,7 +1087,7 @@ is procedure Set_TTL (Ctx : in out Context; Val : RFLX.IPv4.TTL) is Field_Value : constant Field_Dependent_Value := (F_TTL, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_TTL); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1099,7 +1098,7 @@ is procedure Set_Protocol (Ctx : in out Context; Val : RFLX.IPv4.Protocol_Enum) is Field_Value : constant Field_Dependent_Value := (F_Protocol, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Protocol); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1110,7 +1109,7 @@ is procedure Set_Header_Checksum (Ctx : in out Context; Val : RFLX.IPv4.Header_Checksum) is Field_Value : constant Field_Dependent_Value := (F_Header_Checksum, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Header_Checksum); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1121,7 +1120,7 @@ is procedure Set_Source (Ctx : in out Context; Val : RFLX.IPv4.Address) is Field_Value : constant Field_Dependent_Value := (F_Source, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Source); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1132,7 +1131,7 @@ is procedure Set_Destination (Ctx : in out Context; Val : RFLX.IPv4.Address) is Field_Value : constant Field_Dependent_Value := (F_Destination, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Destination); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -1142,8 +1141,8 @@ is end Set_Destination; procedure Set_Options_Empty (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Options); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Options); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Options); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Options); begin Reset_Dependent_Fields (Ctx, F_Options); Ctx.Message_Last := ((Last + 7) / 8) * 8; @@ -1152,8 +1151,8 @@ is end Set_Options_Empty; procedure Set_Payload_Empty (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; @@ -1161,19 +1160,19 @@ is Ctx.Cursors (Successor (Ctx, F_Payload)) := (State => S_Invalid, Predecessor => F_Payload); end Set_Payload_Empty; - procedure Set_Options (Ctx : in out Context; Seq_Ctx : Options_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Options); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Options); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Options (Ctx : in out Context; Seq_Ctx : IPv4.Options.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Options); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Options); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Options); Ctx.Message_Last := ((Last + 7) / 8) * 8; Ctx.Cursors (F_Options) := (State => S_Valid, First => First, Last => Last, Value => (Fld => F_Options), Predecessor => Ctx.Cursors (F_Options).Predecessor); Ctx.Cursors (Successor (Ctx, F_Options)) := (State => S_Invalid, Predecessor => F_Options); - Options_Sequence.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); + IPv4.Options.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Set_Options; procedure Initialize_Payload_Private (Ctx : in out Context) with @@ -1183,9 +1182,9 @@ is and then Valid_Next (Ctx, F_Payload) and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0, + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0, Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -1196,7 +1195,6 @@ is and Ctx.Last = Ctx.Last'Old and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Version (Ctx) = Get_Version (Ctx)'Old and Get_IHL (Ctx) = Get_IHL (Ctx)'Old and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old and Get_ECN (Ctx) = Get_ECN (Ctx)'Old @@ -1212,8 +1210,8 @@ is and Get_Source (Ctx) = Get_Source (Ctx)'Old and Get_Destination (Ctx) = Get_Destination (Ctx)'Old is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; @@ -1226,34 +1224,34 @@ is Initialize_Payload_Private (Ctx); end Initialize_Payload; - procedure Set_Payload (Ctx : in out Context; Value : Types.Bytes) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; end Set_Payload; procedure Generic_Set_Payload (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Generic_Set_Payload; - procedure Switch_To_Options (Ctx : in out Context; Seq_Ctx : out Options_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Options); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Options); - Buffer : Types.Bytes_Ptr; + procedure Switch_To_Options (Ctx : in out Context; Seq_Ctx : out IPv4.Options.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Options); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Options); + Buffer : RFLX_Types.Bytes_Ptr; begin if Invalid (Ctx, F_Options) then Reset_Dependent_Fields (Ctx, F_Options); @@ -1263,19 +1261,19 @@ is end if; Take_Buffer (Ctx, Buffer); pragma Warnings (Off, "unused assignment to ""Buffer"""); - Options_Sequence.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); + IPv4.Options.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); pragma Warnings (On, "unused assignment to ""Buffer"""); end Switch_To_Options; - procedure Update_Options (Ctx : in out Context; Seq_Ctx : in out Options_Sequence.Context) is - Valid_Sequence : constant Boolean := Options_Sequence.Valid (Seq_Ctx); - Buffer : Types.Bytes_Ptr; + procedure Update_Options (Ctx : in out Context; Seq_Ctx : in out IPv4.Options.Context) is + Valid_Sequence : constant Boolean := IPv4.Options.Valid (Seq_Ctx); + Buffer : RFLX_Types.Bytes_Ptr; begin - Options_Sequence.Take_Buffer (Seq_Ctx, Buffer); + IPv4.Options.Take_Buffer (Seq_Ctx, Buffer); Ctx.Buffer := Buffer; if Valid_Sequence then Ctx.Cursors (F_Options) := (State => S_Valid, First => Ctx.Cursors (F_Options).First, Last => Ctx.Cursors (F_Options).Last, Value => Ctx.Cursors (F_Options).Value, Predecessor => Ctx.Cursors (F_Options).Predecessor); end if; end Update_Options; -end RFLX.IPv4.Generic_Packet; +end RFLX.IPv4.Packet; diff --git a/tests/spark/generated/rflx-ipv4-packet.ads b/tests/spark/generated/rflx-ipv4-packet.ads index daf49fa80..cdb447e7d 100644 --- a/tests/spark/generated/rflx-ipv4-packet.ads +++ b/tests/spark/generated/rflx-ipv4-packet.ads @@ -1,8 +1,2290 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.IPv4.Generic_Packet; +with RFLX.RFLX_Builtin_Types; +with RFLX.RFLX_Builtin_Types.Conversions; +use RFLX.RFLX_Builtin_Types.Conversions; with RFLX.IPv4.Options; -package RFLX.IPv4.Packet is new RFLX.IPv4.Generic_Packet (RFLX.RFLX_Types, RFLX.IPv4.Options); +package RFLX.IPv4.Packet with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Version, F_IHL, F_DSCP, F_ECN, F_Total_Length, F_Identification, F_Flag_R, F_Flag_DF, F_Flag_MF, F_Fragment_Offset, F_TTL, F_Protocol, F_Header_Checksum, F_Source, F_Destination, F_Options, F_Payload, F_Final); + + subtype Field is Virtual_Field range F_Version .. F_Payload; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Options | F_Payload | F_Final => + null; + when F_Version => + Version_Value : RFLX.IPv4.Version_Base; + when F_IHL => + IHL_Value : RFLX.IPv4.IHL_Base; + when F_DSCP => + DSCP_Value : RFLX.IPv4.DCSP; + when F_ECN => + ECN_Value : RFLX.IPv4.ECN; + when F_Total_Length => + Total_Length_Value : RFLX.IPv4.Total_Length; + when F_Identification => + Identification_Value : RFLX.IPv4.Identification; + when F_Flag_R => + Flag_R_Value : RFLX.RFLX_Builtin_Types.Boolean_Base; + when F_Flag_DF => + Flag_DF_Value : RFLX.RFLX_Builtin_Types.Boolean_Base; + when F_Flag_MF => + Flag_MF_Value : RFLX.RFLX_Builtin_Types.Boolean_Base; + when F_Fragment_Offset => + Fragment_Offset_Value : RFLX.IPv4.Fragment_Offset; + when F_TTL => + TTL_Value : RFLX.IPv4.TTL; + when F_Protocol => + Protocol_Value : RFLX.IPv4.Protocol_Base; + when F_Header_Checksum => + Header_Checksum_Value : RFLX.IPv4.Header_Checksum; + when F_Source => + Source_Value : RFLX.IPv4.Address; + when F_Destination => + Destination_Value : RFLX.IPv4.Address; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Version (Ctx : Context) return RFLX.IPv4.Version with + Pre => + Valid (Ctx, F_Version); + + function Get_IHL (Ctx : Context) return RFLX.IPv4.IHL with + Pre => + Valid (Ctx, F_IHL); + + function Get_DSCP (Ctx : Context) return RFLX.IPv4.DCSP with + Pre => + Valid (Ctx, F_DSCP); + + function Get_ECN (Ctx : Context) return RFLX.IPv4.ECN with + Pre => + Valid (Ctx, F_ECN); + + function Get_Total_Length (Ctx : Context) return RFLX.IPv4.Total_Length with + Pre => + Valid (Ctx, F_Total_Length); + + function Get_Identification (Ctx : Context) return RFLX.IPv4.Identification with + Pre => + Valid (Ctx, F_Identification); + + function Get_Flag_R (Ctx : Context) return Boolean with + Pre => + Valid (Ctx, F_Flag_R); + + function Get_Flag_DF (Ctx : Context) return Boolean with + Pre => + Valid (Ctx, F_Flag_DF); + + function Get_Flag_MF (Ctx : Context) return Boolean with + Pre => + Valid (Ctx, F_Flag_MF); + + function Get_Fragment_Offset (Ctx : Context) return RFLX.IPv4.Fragment_Offset with + Pre => + Valid (Ctx, F_Fragment_Offset); + + function Get_TTL (Ctx : Context) return RFLX.IPv4.TTL with + Pre => + Valid (Ctx, F_TTL); + + function Get_Protocol (Ctx : Context) return RFLX.IPv4.Protocol with + Pre => + Valid (Ctx, F_Protocol); + + function Get_Header_Checksum (Ctx : Context) return RFLX.IPv4.Header_Checksum with + Pre => + Valid (Ctx, F_Header_Checksum); + + function Get_Source (Ctx : Context) return RFLX.IPv4.Address with + Pre => + Valid (Ctx, F_Source); + + function Get_Destination (Ctx : Context) return RFLX.IPv4.Address with + Pre => + Valid (Ctx, F_Destination); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Options (Options : RFLX_Types.Bytes); + procedure Get_Options (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Options); + + generic + with procedure Process_Payload (Payload : RFLX_Types.Bytes); + procedure Get_Payload (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Payload); + + procedure Set_Version (Ctx : in out Context; Val : RFLX.IPv4.Version) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Version) + and then Field_Condition (Ctx, (F_Version, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Version) >= Field_Size (Ctx, F_Version), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Version) + and Invalid (Ctx, F_IHL) + and Invalid (Ctx, F_DSCP) + and Invalid (Ctx, F_ECN) + and Invalid (Ctx, F_Total_Length) + and Invalid (Ctx, F_Identification) + and Invalid (Ctx, F_Flag_R) + and Invalid (Ctx, F_Flag_DF) + and Invalid (Ctx, F_Flag_MF) + and Invalid (Ctx, F_Fragment_Offset) + and Invalid (Ctx, F_TTL) + and Invalid (Ctx, F_Protocol) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_IHL) = F_Version + and Valid_Next (Ctx, F_IHL)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Version) = Predecessor (Ctx, F_Version)'Old + and Valid_Next (Ctx, F_Version) = Valid_Next (Ctx, F_Version)'Old; + + procedure Set_IHL (Ctx : in out Context; Val : RFLX.IPv4.IHL) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_IHL) + and then Field_Condition (Ctx, (F_IHL, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_IHL) >= Field_Size (Ctx, F_IHL), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_IHL) + and Get_IHL (Ctx) = Val + and Invalid (Ctx, F_DSCP) + and Invalid (Ctx, F_ECN) + and Invalid (Ctx, F_Total_Length) + and Invalid (Ctx, F_Identification) + and Invalid (Ctx, F_Flag_R) + and Invalid (Ctx, F_Flag_DF) + and Invalid (Ctx, F_Flag_MF) + and Invalid (Ctx, F_Fragment_Offset) + and Invalid (Ctx, F_TTL) + and Invalid (Ctx, F_Protocol) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_DSCP) = F_IHL + and Valid_Next (Ctx, F_DSCP)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_IHL) = Predecessor (Ctx, F_IHL)'Old + and Valid_Next (Ctx, F_IHL) = Valid_Next (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old; + + procedure Set_DSCP (Ctx : in out Context; Val : RFLX.IPv4.DCSP) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_DSCP) + and then Field_Condition (Ctx, (F_DSCP, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_DSCP) >= Field_Size (Ctx, F_DSCP), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_DSCP) + and Get_DSCP (Ctx) = Val + and Invalid (Ctx, F_ECN) + and Invalid (Ctx, F_Total_Length) + and Invalid (Ctx, F_Identification) + and Invalid (Ctx, F_Flag_R) + and Invalid (Ctx, F_Flag_DF) + and Invalid (Ctx, F_Flag_MF) + and Invalid (Ctx, F_Fragment_Offset) + and Invalid (Ctx, F_TTL) + and Invalid (Ctx, F_Protocol) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_ECN) = F_DSCP + and Valid_Next (Ctx, F_ECN)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_DSCP) = Predecessor (Ctx, F_DSCP)'Old + and Valid_Next (Ctx, F_DSCP) = Valid_Next (Ctx, F_DSCP)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old; + + procedure Set_ECN (Ctx : in out Context; Val : RFLX.IPv4.ECN) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_ECN) + and then Field_Condition (Ctx, (F_ECN, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_ECN) >= Field_Size (Ctx, F_ECN), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_ECN) + and Get_ECN (Ctx) = Val + and Invalid (Ctx, F_Total_Length) + and Invalid (Ctx, F_Identification) + and Invalid (Ctx, F_Flag_R) + and Invalid (Ctx, F_Flag_DF) + and Invalid (Ctx, F_Flag_MF) + and Invalid (Ctx, F_Fragment_Offset) + and Invalid (Ctx, F_TTL) + and Invalid (Ctx, F_Protocol) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Total_Length) = F_ECN + and Valid_Next (Ctx, F_Total_Length)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_ECN) = Predecessor (Ctx, F_ECN)'Old + and Valid_Next (Ctx, F_ECN) = Valid_Next (Ctx, F_ECN)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old; + + procedure Set_Total_Length (Ctx : in out Context; Val : RFLX.IPv4.Total_Length) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Total_Length) + and then Field_Condition (Ctx, (F_Total_Length, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Total_Length) >= Field_Size (Ctx, F_Total_Length), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Total_Length) + and Get_Total_Length (Ctx) = Val + and Invalid (Ctx, F_Identification) + and Invalid (Ctx, F_Flag_R) + and Invalid (Ctx, F_Flag_DF) + and Invalid (Ctx, F_Flag_MF) + and Invalid (Ctx, F_Fragment_Offset) + and Invalid (Ctx, F_TTL) + and Invalid (Ctx, F_Protocol) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (if + RFLX_Types.U64 (Get_Total_Length (Ctx)) >= RFLX_Types.U64 (Get_IHL (Ctx)) * 4 + then + Predecessor (Ctx, F_Identification) = F_Total_Length + and Valid_Next (Ctx, F_Identification)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Total_Length) = Predecessor (Ctx, F_Total_Length)'Old + and Valid_Next (Ctx, F_Total_Length) = Valid_Next (Ctx, F_Total_Length)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old; + + procedure Set_Identification (Ctx : in out Context; Val : RFLX.IPv4.Identification) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Identification) + and then Field_Condition (Ctx, (F_Identification, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Identification) >= Field_Size (Ctx, F_Identification), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Identification) + and Get_Identification (Ctx) = Val + and Invalid (Ctx, F_Flag_R) + and Invalid (Ctx, F_Flag_DF) + and Invalid (Ctx, F_Flag_MF) + and Invalid (Ctx, F_Fragment_Offset) + and Invalid (Ctx, F_TTL) + and Invalid (Ctx, F_Protocol) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Flag_R) = F_Identification + and Valid_Next (Ctx, F_Flag_R)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Identification) = Predecessor (Ctx, F_Identification)'Old + and Valid_Next (Ctx, F_Identification) = Valid_Next (Ctx, F_Identification)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old; + + procedure Set_Flag_R (Ctx : in out Context; Val : Boolean) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Flag_R) + and then Field_Condition (Ctx, (F_Flag_R, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Flag_R) >= Field_Size (Ctx, F_Flag_R), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Flag_R) + and Get_Flag_R (Ctx) = Val + and Invalid (Ctx, F_Flag_DF) + and Invalid (Ctx, F_Flag_MF) + and Invalid (Ctx, F_Fragment_Offset) + and Invalid (Ctx, F_TTL) + and Invalid (Ctx, F_Protocol) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (if + RFLX_Types.U64 (To_Base (Get_Flag_R (Ctx))) = RFLX_Types.U64 (To_Base (False)) + then + Predecessor (Ctx, F_Flag_DF) = F_Flag_R + and Valid_Next (Ctx, F_Flag_DF)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Flag_R) = Predecessor (Ctx, F_Flag_R)'Old + and Valid_Next (Ctx, F_Flag_R) = Valid_Next (Ctx, F_Flag_R)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old + and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old; + + procedure Set_Flag_DF (Ctx : in out Context; Val : Boolean) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Flag_DF) + and then Field_Condition (Ctx, (F_Flag_DF, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Flag_DF) >= Field_Size (Ctx, F_Flag_DF), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Flag_DF) + and Get_Flag_DF (Ctx) = Val + and Invalid (Ctx, F_Flag_MF) + and Invalid (Ctx, F_Fragment_Offset) + and Invalid (Ctx, F_TTL) + and Invalid (Ctx, F_Protocol) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Flag_MF) = F_Flag_DF + and Valid_Next (Ctx, F_Flag_MF)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Flag_DF) = Predecessor (Ctx, F_Flag_DF)'Old + and Valid_Next (Ctx, F_Flag_DF) = Valid_Next (Ctx, F_Flag_DF)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old + and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old + and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old; + + procedure Set_Flag_MF (Ctx : in out Context; Val : Boolean) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Flag_MF) + and then Field_Condition (Ctx, (F_Flag_MF, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Flag_MF) >= Field_Size (Ctx, F_Flag_MF), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Flag_MF) + and Get_Flag_MF (Ctx) = Val + and Invalid (Ctx, F_Fragment_Offset) + and Invalid (Ctx, F_TTL) + and Invalid (Ctx, F_Protocol) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Fragment_Offset) = F_Flag_MF + and Valid_Next (Ctx, F_Fragment_Offset)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Flag_MF) = Predecessor (Ctx, F_Flag_MF)'Old + and Valid_Next (Ctx, F_Flag_MF) = Valid_Next (Ctx, F_Flag_MF)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old + and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old + and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old + and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old; + + procedure Set_Fragment_Offset (Ctx : in out Context; Val : RFLX.IPv4.Fragment_Offset) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Fragment_Offset) + and then Field_Condition (Ctx, (F_Fragment_Offset, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Fragment_Offset) >= Field_Size (Ctx, F_Fragment_Offset), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Fragment_Offset) + and Get_Fragment_Offset (Ctx) = Val + and Invalid (Ctx, F_TTL) + and Invalid (Ctx, F_Protocol) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_TTL) = F_Fragment_Offset + and Valid_Next (Ctx, F_TTL)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Fragment_Offset) = Predecessor (Ctx, F_Fragment_Offset)'Old + and Valid_Next (Ctx, F_Fragment_Offset) = Valid_Next (Ctx, F_Fragment_Offset)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old + and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old + and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old + and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old + and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old; + + procedure Set_TTL (Ctx : in out Context; Val : RFLX.IPv4.TTL) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_TTL) + and then Field_Condition (Ctx, (F_TTL, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_TTL) >= Field_Size (Ctx, F_TTL), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_TTL) + and Get_TTL (Ctx) = Val + and Invalid (Ctx, F_Protocol) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Protocol) = F_TTL + and Valid_Next (Ctx, F_Protocol)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_TTL) = Predecessor (Ctx, F_TTL)'Old + and Valid_Next (Ctx, F_TTL) = Valid_Next (Ctx, F_TTL)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old + and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old + and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old + and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old + and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old + and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old; + + procedure Set_Protocol (Ctx : in out Context; Val : RFLX.IPv4.Protocol_Enum) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Protocol) + and then Field_Condition (Ctx, (F_Protocol, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Protocol) >= Field_Size (Ctx, F_Protocol), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Protocol) + and Get_Protocol (Ctx) = (True, Val) + and Invalid (Ctx, F_Header_Checksum) + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Header_Checksum) = F_Protocol + and Valid_Next (Ctx, F_Header_Checksum)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Protocol) = Predecessor (Ctx, F_Protocol)'Old + and Valid_Next (Ctx, F_Protocol) = Valid_Next (Ctx, F_Protocol)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old + and Get_TTL (Ctx) = Get_TTL (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old + and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old + and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old + and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old + and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old + and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old + and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old; + + procedure Set_Header_Checksum (Ctx : in out Context; Val : RFLX.IPv4.Header_Checksum) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Header_Checksum) + and then Field_Condition (Ctx, (F_Header_Checksum, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Header_Checksum) >= Field_Size (Ctx, F_Header_Checksum), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Header_Checksum) + and Get_Header_Checksum (Ctx) = Val + and Invalid (Ctx, F_Source) + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Source) = F_Header_Checksum + and Valid_Next (Ctx, F_Source)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Header_Checksum) = Predecessor (Ctx, F_Header_Checksum)'Old + and Valid_Next (Ctx, F_Header_Checksum) = Valid_Next (Ctx, F_Header_Checksum)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old + and Get_TTL (Ctx) = Get_TTL (Ctx)'Old + and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old + and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old + and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old + and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old + and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old + and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old + and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old + and Context_Cursor (Ctx, F_Protocol) = Context_Cursor (Ctx, F_Protocol)'Old; + + procedure Set_Source (Ctx : in out Context; Val : RFLX.IPv4.Address) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Source) + and then Field_Condition (Ctx, (F_Source, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Source) >= Field_Size (Ctx, F_Source), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Source) + and Get_Source (Ctx) = Val + and Invalid (Ctx, F_Destination) + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Destination) = F_Source + and Valid_Next (Ctx, F_Destination)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Source) = Predecessor (Ctx, F_Source)'Old + and Valid_Next (Ctx, F_Source) = Valid_Next (Ctx, F_Source)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old + and Get_TTL (Ctx) = Get_TTL (Ctx)'Old + and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old + and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old + and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old + and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old + and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old + and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old + and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old + and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old + and Context_Cursor (Ctx, F_Protocol) = Context_Cursor (Ctx, F_Protocol)'Old + and Context_Cursor (Ctx, F_Header_Checksum) = Context_Cursor (Ctx, F_Header_Checksum)'Old; + + procedure Set_Destination (Ctx : in out Context; Val : RFLX.IPv4.Address) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Destination) + and then Field_Condition (Ctx, (F_Destination, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Destination) >= Field_Size (Ctx, F_Destination), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Destination) + and Get_Destination (Ctx) = Val + and Invalid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Options) = F_Destination + and Valid_Next (Ctx, F_Options)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Destination) = Predecessor (Ctx, F_Destination)'Old + and Valid_Next (Ctx, F_Destination) = Valid_Next (Ctx, F_Destination)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old + and Get_TTL (Ctx) = Get_TTL (Ctx)'Old + and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old + and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old + and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old + and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old + and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old + and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old + and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old + and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old + and Context_Cursor (Ctx, F_Protocol) = Context_Cursor (Ctx, F_Protocol)'Old + and Context_Cursor (Ctx, F_Header_Checksum) = Context_Cursor (Ctx, F_Header_Checksum)'Old + and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old; + + procedure Set_Options_Empty (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Options) + and then Field_Condition (Ctx, (Fld => F_Options)) + and then Available_Space (Ctx, F_Options) >= Field_Size (Ctx, F_Options) + and then Field_First (Ctx, F_Options) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Options) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Options) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Options) = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Payload) = F_Options + and Valid_Next (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Options) = Predecessor (Ctx, F_Options)'Old + and Valid_Next (Ctx, F_Options) = Valid_Next (Ctx, F_Options)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old + and Get_TTL (Ctx) = Get_TTL (Ctx)'Old + and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old + and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old; + + procedure Set_Payload_Empty (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old + and Get_TTL (Ctx) = Get_TTL (Ctx)'Old + and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old + and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old; + + procedure Set_Options (Ctx : in out Context; Seq_Ctx : IPv4.Options.Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Options) + and then Field_Condition (Ctx, (Fld => F_Options)) + and then Available_Space (Ctx, F_Options) >= Field_Size (Ctx, F_Options) + and then Field_First (Ctx, F_Options) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Options) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Options) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Options) = IPv4.Options.Size (Seq_Ctx) + and then IPv4.Options.Has_Buffer (Seq_Ctx) + and then IPv4.Options.Valid (Seq_Ctx), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Options) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Payload) = F_Options + and Valid_Next (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Options) = Predecessor (Ctx, F_Options)'Old + and Valid_Next (Ctx, F_Options) = Valid_Next (Ctx, F_Options)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old + and Get_TTL (Ctx) = Get_TTL (Ctx)'Old + and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old + and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old + and (if + Field_Size (Ctx, F_Options) > 0 + then + Present (Ctx, F_Options)); + + procedure Initialize_Payload (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old + and Get_TTL (Ctx) = Get_TTL (Ctx)'Old + and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old + and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old; + + procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Payload)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old + and Get_TTL (Ctx) = Get_TTL (Ctx)'Old + and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old + and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old; + + generic + with procedure Process_Payload (Payload : out RFLX_Types.Bytes); + with function Valid_Length (Length : RFLX_Types.Length) return Boolean; + procedure Generic_Set_Payload (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Valid_Length (RFLX_Types.Length (Field_Size (Ctx, F_Payload) / RFLX_Types.Byte'Size)), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_IHL (Ctx) = Get_IHL (Ctx)'Old + and Get_DSCP (Ctx) = Get_DSCP (Ctx)'Old + and Get_ECN (Ctx) = Get_ECN (Ctx)'Old + and Get_Total_Length (Ctx) = Get_Total_Length (Ctx)'Old + and Get_Identification (Ctx) = Get_Identification (Ctx)'Old + and Get_Flag_R (Ctx) = Get_Flag_R (Ctx)'Old + and Get_Flag_DF (Ctx) = Get_Flag_DF (Ctx)'Old + and Get_Flag_MF (Ctx) = Get_Flag_MF (Ctx)'Old + and Get_Fragment_Offset (Ctx) = Get_Fragment_Offset (Ctx)'Old + and Get_TTL (Ctx) = Get_TTL (Ctx)'Old + and Get_Protocol (Ctx) = Get_Protocol (Ctx)'Old + and Get_Header_Checksum (Ctx) = Get_Header_Checksum (Ctx)'Old + and Get_Source (Ctx) = Get_Source (Ctx)'Old + and Get_Destination (Ctx) = Get_Destination (Ctx)'Old; + + procedure Switch_To_Options (Ctx : in out Context; Seq_Ctx : out IPv4.Options.Context) with + Pre => + not Ctx'Constrained + and then not Seq_Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Options) + and then Field_Size (Ctx, F_Options) > 0 + and then Field_First (Ctx, F_Options) mod RFLX_Types.Byte'Size = 1 + and then Field_Condition (Ctx, (Fld => F_Options)) + and then Available_Space (Ctx, F_Options) >= Field_Size (Ctx, F_Options), + Post => + not Has_Buffer (Ctx) + and IPv4.Options.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Seq_Ctx.Buffer_First + and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and Seq_Ctx.First = Field_First (Ctx, F_Options) + and Seq_Ctx.Last = Field_Last (Ctx, F_Options) + and IPv4.Options.Valid (Seq_Ctx) + and IPv4.Options.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 + and Present (Ctx, F_Options) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Options) = Predecessor (Ctx, F_Options)'Old + and Path_Condition (Ctx, F_Options) = Path_Condition (Ctx, F_Options)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old + and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old + and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old + and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old + and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old + and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old + and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old + and Context_Cursor (Ctx, F_Protocol) = Context_Cursor (Ctx, F_Protocol)'Old + and Context_Cursor (Ctx, F_Header_Checksum) = Context_Cursor (Ctx, F_Header_Checksum)'Old + and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old + and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old, + Contract_Cases => + (Structural_Valid (Ctx, F_Options) => + Context_Cursor (Ctx, F_Payload) = Context_Cursor (Ctx, F_Payload)'Old, + others => + (Predecessor (Ctx, F_Payload) = F_Options + and Valid_Next (Ctx, F_Payload)) + and Invalid (Ctx, F_Payload)); + + function Complete_Options (Ctx : Context; Seq_Ctx : IPv4.Options.Context) return Boolean with + Pre => + Valid_Next (Ctx, F_Options); + + procedure Update_Options (Ctx : in out Context; Seq_Ctx : in out IPv4.Options.Context) with + Pre => + Present (Ctx, F_Options) + and then Complete_Options (Ctx, Seq_Ctx) + and then not Has_Buffer (Ctx) + and then IPv4.Options.Has_Buffer (Seq_Ctx) + and then Ctx.Buffer_First = Seq_Ctx.Buffer_First + and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and then Seq_Ctx.First = Field_First (Ctx, F_Options) + and then Seq_Ctx.Last = Field_Last (Ctx, F_Options), + Post => + Present (Ctx, F_Options) + and Has_Buffer (Ctx) + and not IPv4.Options.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Seq_Ctx.First = Seq_Ctx.First'Old + and Seq_Ctx.Last = Seq_Ctx.Last'Old + and Field_First (Ctx, F_Options) = Field_First (Ctx, F_Options)'Old + and Field_Size (Ctx, F_Options) = Field_Size (Ctx, F_Options)'Old + and Context_Cursor (Ctx, F_Version) = Context_Cursor (Ctx, F_Version)'Old + and Context_Cursor (Ctx, F_IHL) = Context_Cursor (Ctx, F_IHL)'Old + and Context_Cursor (Ctx, F_DSCP) = Context_Cursor (Ctx, F_DSCP)'Old + and Context_Cursor (Ctx, F_ECN) = Context_Cursor (Ctx, F_ECN)'Old + and Context_Cursor (Ctx, F_Total_Length) = Context_Cursor (Ctx, F_Total_Length)'Old + and Context_Cursor (Ctx, F_Identification) = Context_Cursor (Ctx, F_Identification)'Old + and Context_Cursor (Ctx, F_Flag_R) = Context_Cursor (Ctx, F_Flag_R)'Old + and Context_Cursor (Ctx, F_Flag_DF) = Context_Cursor (Ctx, F_Flag_DF)'Old + and Context_Cursor (Ctx, F_Flag_MF) = Context_Cursor (Ctx, F_Flag_MF)'Old + and Context_Cursor (Ctx, F_Fragment_Offset) = Context_Cursor (Ctx, F_Fragment_Offset)'Old + and Context_Cursor (Ctx, F_TTL) = Context_Cursor (Ctx, F_TTL)'Old + and Context_Cursor (Ctx, F_Protocol) = Context_Cursor (Ctx, F_Protocol)'Old + and Context_Cursor (Ctx, F_Header_Checksum) = Context_Cursor (Ctx, F_Header_Checksum)'Old + and Context_Cursor (Ctx, F_Source) = Context_Cursor (Ctx, F_Source)'Old + and Context_Cursor (Ctx, F_Destination) = Context_Cursor (Ctx, F_Destination)'Old + and Context_Cursor (Ctx, F_Payload) = Context_Cursor (Ctx, F_Payload)'Old, + Depends => + (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Version => + Valid (Val.Version_Value), + when F_IHL => + Valid (Val.IHL_Value), + when F_DSCP => + Valid (Val.DSCP_Value), + when F_ECN => + Valid (Val.ECN_Value), + when F_Total_Length => + Valid (Val.Total_Length_Value), + when F_Identification => + Valid (Val.Identification_Value), + when F_Flag_R => + Valid (Val.Flag_R_Value), + when F_Flag_DF => + Valid (Val.Flag_DF_Value), + when F_Flag_MF => + Valid (Val.Flag_MF_Value), + when F_Fragment_Offset => + Valid (Val.Fragment_Offset_Value), + when F_TTL => + Valid (Val.TTL_Value), + when F_Protocol => + Valid (Val.Protocol_Value), + when F_Header_Checksum => + Valid (Val.Header_Checksum_Value), + when F_Source => + Valid (Val.Source_Value), + when F_Destination => + Valid (Val.Destination_Value), + when F_Options | F_Payload => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_IHL)) + then + (Valid (Cursors (F_Version)) + and then Cursors (F_IHL).Predecessor = F_Version)) + and then (if + Structural_Valid (Cursors (F_DSCP)) + then + (Valid (Cursors (F_IHL)) + and then Cursors (F_DSCP).Predecessor = F_IHL)) + and then (if + Structural_Valid (Cursors (F_ECN)) + then + (Valid (Cursors (F_DSCP)) + and then Cursors (F_ECN).Predecessor = F_DSCP)) + and then (if + Structural_Valid (Cursors (F_Total_Length)) + then + (Valid (Cursors (F_ECN)) + and then Cursors (F_Total_Length).Predecessor = F_ECN)) + and then (if + Structural_Valid (Cursors (F_Identification)) + then + (Valid (Cursors (F_Total_Length)) + and then Cursors (F_Identification).Predecessor = F_Total_Length + and then RFLX_Types.U64 (Cursors (F_Total_Length).Value.Total_Length_Value) >= RFLX_Types.U64 (Cursors (F_IHL).Value.IHL_Value) * 4)) + and then (if + Structural_Valid (Cursors (F_Flag_R)) + then + (Valid (Cursors (F_Identification)) + and then Cursors (F_Flag_R).Predecessor = F_Identification)) + and then (if + Structural_Valid (Cursors (F_Flag_DF)) + then + (Valid (Cursors (F_Flag_R)) + and then Cursors (F_Flag_DF).Predecessor = F_Flag_R + and then RFLX_Types.U64 (Cursors (F_Flag_R).Value.Flag_R_Value) = RFLX_Types.U64 (To_Base (False)))) + and then (if + Structural_Valid (Cursors (F_Flag_MF)) + then + (Valid (Cursors (F_Flag_DF)) + and then Cursors (F_Flag_MF).Predecessor = F_Flag_DF)) + and then (if + Structural_Valid (Cursors (F_Fragment_Offset)) + then + (Valid (Cursors (F_Flag_MF)) + and then Cursors (F_Fragment_Offset).Predecessor = F_Flag_MF)) + and then (if + Structural_Valid (Cursors (F_TTL)) + then + (Valid (Cursors (F_Fragment_Offset)) + and then Cursors (F_TTL).Predecessor = F_Fragment_Offset)) + and then (if + Structural_Valid (Cursors (F_Protocol)) + then + (Valid (Cursors (F_TTL)) + and then Cursors (F_Protocol).Predecessor = F_TTL)) + and then (if + Structural_Valid (Cursors (F_Header_Checksum)) + then + (Valid (Cursors (F_Protocol)) + and then Cursors (F_Header_Checksum).Predecessor = F_Protocol)) + and then (if + Structural_Valid (Cursors (F_Source)) + then + (Valid (Cursors (F_Header_Checksum)) + and then Cursors (F_Source).Predecessor = F_Header_Checksum)) + and then (if + Structural_Valid (Cursors (F_Destination)) + then + (Valid (Cursors (F_Source)) + and then Cursors (F_Destination).Predecessor = F_Source)) + and then (if + Structural_Valid (Cursors (F_Options)) + then + (Valid (Cursors (F_Destination)) + and then Cursors (F_Options).Predecessor = F_Destination)) + and then (if + Structural_Valid (Cursors (F_Payload)) + then + (Structural_Valid (Cursors (F_Options)) + and then Cursors (F_Payload).Predecessor = F_Options))) + and then ((if + Invalid (Cursors (F_Version)) + then + Invalid (Cursors (F_IHL))) + and then (if + Invalid (Cursors (F_IHL)) + then + Invalid (Cursors (F_DSCP))) + and then (if + Invalid (Cursors (F_DSCP)) + then + Invalid (Cursors (F_ECN))) + and then (if + Invalid (Cursors (F_ECN)) + then + Invalid (Cursors (F_Total_Length))) + and then (if + Invalid (Cursors (F_Total_Length)) + then + Invalid (Cursors (F_Identification))) + and then (if + Invalid (Cursors (F_Identification)) + then + Invalid (Cursors (F_Flag_R))) + and then (if + Invalid (Cursors (F_Flag_R)) + then + Invalid (Cursors (F_Flag_DF))) + and then (if + Invalid (Cursors (F_Flag_DF)) + then + Invalid (Cursors (F_Flag_MF))) + and then (if + Invalid (Cursors (F_Flag_MF)) + then + Invalid (Cursors (F_Fragment_Offset))) + and then (if + Invalid (Cursors (F_Fragment_Offset)) + then + Invalid (Cursors (F_TTL))) + and then (if + Invalid (Cursors (F_TTL)) + then + Invalid (Cursors (F_Protocol))) + and then (if + Invalid (Cursors (F_Protocol)) + then + Invalid (Cursors (F_Header_Checksum))) + and then (if + Invalid (Cursors (F_Header_Checksum)) + then + Invalid (Cursors (F_Source))) + and then (if + Invalid (Cursors (F_Source)) + then + Invalid (Cursors (F_Destination))) + and then (if + Invalid (Cursors (F_Destination)) + then + Invalid (Cursors (F_Options))) + and then (if + Invalid (Cursors (F_Options)) + then + Invalid (Cursors (F_Payload)))) + and then (if + Structural_Valid (Cursors (F_Version)) + then + Cursors (F_Version).Last - Cursors (F_Version).First + 1 = RFLX.IPv4.Version_Base'Size + and then Cursors (F_Version).Predecessor = F_Initial + and then Cursors (F_Version).First = First + and then (if + Structural_Valid (Cursors (F_IHL)) + then + Cursors (F_IHL).Last - Cursors (F_IHL).First + 1 = RFLX.IPv4.IHL_Base'Size + and then Cursors (F_IHL).Predecessor = F_Version + and then Cursors (F_IHL).First = Cursors (F_Version).Last + 1 + and then (if + Structural_Valid (Cursors (F_DSCP)) + then + Cursors (F_DSCP).Last - Cursors (F_DSCP).First + 1 = RFLX.IPv4.DCSP'Size + and then Cursors (F_DSCP).Predecessor = F_IHL + and then Cursors (F_DSCP).First = Cursors (F_IHL).Last + 1 + and then (if + Structural_Valid (Cursors (F_ECN)) + then + Cursors (F_ECN).Last - Cursors (F_ECN).First + 1 = RFLX.IPv4.ECN'Size + and then Cursors (F_ECN).Predecessor = F_DSCP + and then Cursors (F_ECN).First = Cursors (F_DSCP).Last + 1 + and then (if + Structural_Valid (Cursors (F_Total_Length)) + then + Cursors (F_Total_Length).Last - Cursors (F_Total_Length).First + 1 = RFLX.IPv4.Total_Length'Size + and then Cursors (F_Total_Length).Predecessor = F_ECN + and then Cursors (F_Total_Length).First = Cursors (F_ECN).Last + 1 + and then (if + Structural_Valid (Cursors (F_Identification)) + and then RFLX_Types.U64 (Cursors (F_Total_Length).Value.Total_Length_Value) >= RFLX_Types.U64 (Cursors (F_IHL).Value.IHL_Value) * 4 + then + Cursors (F_Identification).Last - Cursors (F_Identification).First + 1 = RFLX.IPv4.Identification'Size + and then Cursors (F_Identification).Predecessor = F_Total_Length + and then Cursors (F_Identification).First = Cursors (F_Total_Length).Last + 1 + and then (if + Structural_Valid (Cursors (F_Flag_R)) + then + Cursors (F_Flag_R).Last - Cursors (F_Flag_R).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size + and then Cursors (F_Flag_R).Predecessor = F_Identification + and then Cursors (F_Flag_R).First = Cursors (F_Identification).Last + 1 + and then (if + Structural_Valid (Cursors (F_Flag_DF)) + and then RFLX_Types.U64 (Cursors (F_Flag_R).Value.Flag_R_Value) = RFLX_Types.U64 (To_Base (False)) + then + Cursors (F_Flag_DF).Last - Cursors (F_Flag_DF).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size + and then Cursors (F_Flag_DF).Predecessor = F_Flag_R + and then Cursors (F_Flag_DF).First = Cursors (F_Flag_R).Last + 1 + and then (if + Structural_Valid (Cursors (F_Flag_MF)) + then + Cursors (F_Flag_MF).Last - Cursors (F_Flag_MF).First + 1 = RFLX.RFLX_Builtin_Types.Boolean_Base'Size + and then Cursors (F_Flag_MF).Predecessor = F_Flag_DF + and then Cursors (F_Flag_MF).First = Cursors (F_Flag_DF).Last + 1 + and then (if + Structural_Valid (Cursors (F_Fragment_Offset)) + then + Cursors (F_Fragment_Offset).Last - Cursors (F_Fragment_Offset).First + 1 = RFLX.IPv4.Fragment_Offset'Size + and then Cursors (F_Fragment_Offset).Predecessor = F_Flag_MF + and then Cursors (F_Fragment_Offset).First = Cursors (F_Flag_MF).Last + 1 + and then (if + Structural_Valid (Cursors (F_TTL)) + then + Cursors (F_TTL).Last - Cursors (F_TTL).First + 1 = RFLX.IPv4.TTL'Size + and then Cursors (F_TTL).Predecessor = F_Fragment_Offset + and then Cursors (F_TTL).First = Cursors (F_Fragment_Offset).Last + 1 + and then (if + Structural_Valid (Cursors (F_Protocol)) + then + Cursors (F_Protocol).Last - Cursors (F_Protocol).First + 1 = RFLX.IPv4.Protocol_Base'Size + and then Cursors (F_Protocol).Predecessor = F_TTL + and then Cursors (F_Protocol).First = Cursors (F_TTL).Last + 1 + and then (if + Structural_Valid (Cursors (F_Header_Checksum)) + then + Cursors (F_Header_Checksum).Last - Cursors (F_Header_Checksum).First + 1 = RFLX.IPv4.Header_Checksum'Size + and then Cursors (F_Header_Checksum).Predecessor = F_Protocol + and then Cursors (F_Header_Checksum).First = Cursors (F_Protocol).Last + 1 + and then (if + Structural_Valid (Cursors (F_Source)) + then + Cursors (F_Source).Last - Cursors (F_Source).First + 1 = RFLX.IPv4.Address'Size + and then Cursors (F_Source).Predecessor = F_Header_Checksum + and then Cursors (F_Source).First = Cursors (F_Header_Checksum).Last + 1 + and then (if + Structural_Valid (Cursors (F_Destination)) + then + Cursors (F_Destination).Last - Cursors (F_Destination).First + 1 = RFLX.IPv4.Address'Size + and then Cursors (F_Destination).Predecessor = F_Source + and then Cursors (F_Destination).First = Cursors (F_Source).Last + 1 + and then (if + Structural_Valid (Cursors (F_Options)) + then + Cursors (F_Options).Last - Cursors (F_Options).First + 1 = (RFLX_Types.Bit_Length (Cursors (F_IHL).Value.IHL_Value) - 5) * 32 + and then Cursors (F_Options).Predecessor = F_Destination + and then Cursors (F_Options).First = Cursors (F_Destination).Last + 1 + and then (if + Structural_Valid (Cursors (F_Payload)) + then + Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = RFLX_Types.Bit_Length (Cursors (F_Total_Length).Value.Total_Length_Value) * 8 + RFLX_Types.Bit_Length (Cursors (F_IHL).Value.IHL_Value) * (-32) + and then Cursors (F_Payload).Predecessor = F_Options + and then Cursors (F_Payload).First = Cursors (F_Options).Last + 1)))))))))))))))))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Version) + and then Field_First (Ctx, F_Version) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Version) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Version) + and then Invalid (Ctx, F_IHL) + and then Invalid (Ctx, F_DSCP) + and then Invalid (Ctx, F_ECN) + and then Invalid (Ctx, F_Total_Length) + and then Invalid (Ctx, F_Identification) + and then Invalid (Ctx, F_Flag_R) + and then Invalid (Ctx, F_Flag_DF) + and then Invalid (Ctx, F_Flag_MF) + and then Invalid (Ctx, F_Fragment_Offset) + and then Invalid (Ctx, F_TTL) + and then Invalid (Ctx, F_Protocol) + and then Invalid (Ctx, F_Header_Checksum) + and then Invalid (Ctx, F_Source) + and then Invalid (Ctx, F_Destination) + and then Invalid (Ctx, F_Options) + and then Invalid (Ctx, F_Payload)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Version => + True, + when others => + False), + when F_Version => + (case Fld is + when F_IHL => + True, + when others => + False), + when F_IHL => + (case Fld is + when F_DSCP => + True, + when others => + False), + when F_DSCP => + (case Fld is + when F_ECN => + True, + when others => + False), + when F_ECN => + (case Fld is + when F_Total_Length => + True, + when others => + False), + when F_Total_Length => + (case Fld is + when F_Identification => + RFLX_Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= RFLX_Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4, + when others => + False), + when F_Identification => + (case Fld is + when F_Flag_R => + True, + when others => + False), + when F_Flag_R => + (case Fld is + when F_Flag_DF => + RFLX_Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = RFLX_Types.U64 (To_Base (False)), + when others => + False), + when F_Flag_DF => + (case Fld is + when F_Flag_MF => + True, + when others => + False), + when F_Flag_MF => + (case Fld is + when F_Fragment_Offset => + True, + when others => + False), + when F_Fragment_Offset => + (case Fld is + when F_TTL => + True, + when others => + False), + when F_TTL => + (case Fld is + when F_Protocol => + True, + when others => + False), + when F_Protocol => + (case Fld is + when F_Header_Checksum => + True, + when others => + False), + when F_Header_Checksum => + (case Fld is + when F_Source => + True, + when others => + False), + when F_Source => + (case Fld is + when F_Destination => + True, + when others => + False), + when F_Destination => + (case Fld is + when F_Options => + True, + when others => + False), + when F_Options => + (case Fld is + when F_Payload => + True, + when others => + False), + when F_Payload | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial | F_Version | F_IHL | F_DSCP | F_ECN => + True, + when F_Total_Length => + RFLX_Types.U64 (Val.Total_Length_Value) >= RFLX_Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4, + when F_Identification => + True, + when F_Flag_R => + RFLX_Types.U64 (Val.Flag_R_Value) = RFLX_Types.U64 (To_Base (False)), + when F_Flag_DF | F_Flag_MF | F_Fragment_Offset | F_TTL | F_Protocol | F_Header_Checksum | F_Source | F_Destination | F_Options | F_Payload => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Version => + RFLX.IPv4.Version_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Version => + (case Fld is + when F_IHL => + RFLX.IPv4.IHL_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_IHL => + (case Fld is + when F_DSCP => + RFLX.IPv4.DCSP'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_DSCP => + (case Fld is + when F_ECN => + RFLX.IPv4.ECN'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_ECN => + (case Fld is + when F_Total_Length => + RFLX.IPv4.Total_Length'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Total_Length => + (case Fld is + when F_Identification => + RFLX.IPv4.Identification'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Identification => + (case Fld is + when F_Flag_R => + RFLX.RFLX_Builtin_Types.Boolean_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Flag_R => + (case Fld is + when F_Flag_DF => + RFLX.RFLX_Builtin_Types.Boolean_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Flag_DF => + (case Fld is + when F_Flag_MF => + RFLX.RFLX_Builtin_Types.Boolean_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Flag_MF => + (case Fld is + when F_Fragment_Offset => + RFLX.IPv4.Fragment_Offset'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Fragment_Offset => + (case Fld is + when F_TTL => + RFLX.IPv4.TTL'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_TTL => + (case Fld is + when F_Protocol => + RFLX.IPv4.Protocol_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Protocol => + (case Fld is + when F_Header_Checksum => + RFLX.IPv4.Header_Checksum'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Header_Checksum => + (case Fld is + when F_Source => + RFLX.IPv4.Address'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Source => + (case Fld is + when F_Destination => + RFLX.IPv4.Address'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Destination => + (case Fld is + when F_Options => + (RFLX_Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) - 5) * 32, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Options => + (case Fld is + when F_Payload => + RFLX_Types.Bit_Length (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) * 8 + RFLX_Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) * (-32), + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Payload | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Version => + Ctx.First, + when F_IHL => + (if + Ctx.Cursors (Fld).Predecessor = F_Version + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_DSCP => + (if + Ctx.Cursors (Fld).Predecessor = F_IHL + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_ECN => + (if + Ctx.Cursors (Fld).Predecessor = F_DSCP + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Total_Length => + (if + Ctx.Cursors (Fld).Predecessor = F_ECN + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Identification => + (if + Ctx.Cursors (Fld).Predecessor = F_Total_Length + and then RFLX_Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= RFLX_Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4 + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Flag_R => + (if + Ctx.Cursors (Fld).Predecessor = F_Identification + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Flag_DF => + (if + Ctx.Cursors (Fld).Predecessor = F_Flag_R + and then RFLX_Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = RFLX_Types.U64 (To_Base (False)) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Flag_MF => + (if + Ctx.Cursors (Fld).Predecessor = F_Flag_DF + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Fragment_Offset => + (if + Ctx.Cursors (Fld).Predecessor = F_Flag_MF + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_TTL => + (if + Ctx.Cursors (Fld).Predecessor = F_Fragment_Offset + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Protocol => + (if + Ctx.Cursors (Fld).Predecessor = F_TTL + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Header_Checksum => + (if + Ctx.Cursors (Fld).Predecessor = F_Protocol + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Source => + (if + Ctx.Cursors (Fld).Predecessor = F_Header_Checksum + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Destination => + (if + Ctx.Cursors (Fld).Predecessor = F_Source + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Options => + (if + Ctx.Cursors (Fld).Predecessor = F_Destination + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Payload => + (if + Ctx.Cursors (Fld).Predecessor = F_Options + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Version => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_IHL => + (Valid (Ctx.Cursors (F_Version)) + and Ctx.Cursors (Fld).Predecessor = F_Version), + when F_DSCP => + (Valid (Ctx.Cursors (F_IHL)) + and Ctx.Cursors (Fld).Predecessor = F_IHL), + when F_ECN => + (Valid (Ctx.Cursors (F_DSCP)) + and Ctx.Cursors (Fld).Predecessor = F_DSCP), + when F_Total_Length => + (Valid (Ctx.Cursors (F_ECN)) + and Ctx.Cursors (Fld).Predecessor = F_ECN), + when F_Identification => + (Valid (Ctx.Cursors (F_Total_Length)) + and Ctx.Cursors (Fld).Predecessor = F_Total_Length), + when F_Flag_R => + (Valid (Ctx.Cursors (F_Identification)) + and Ctx.Cursors (Fld).Predecessor = F_Identification), + when F_Flag_DF => + (Valid (Ctx.Cursors (F_Flag_R)) + and Ctx.Cursors (Fld).Predecessor = F_Flag_R), + when F_Flag_MF => + (Valid (Ctx.Cursors (F_Flag_DF)) + and Ctx.Cursors (Fld).Predecessor = F_Flag_DF), + when F_Fragment_Offset => + (Valid (Ctx.Cursors (F_Flag_MF)) + and Ctx.Cursors (Fld).Predecessor = F_Flag_MF), + when F_TTL => + (Valid (Ctx.Cursors (F_Fragment_Offset)) + and Ctx.Cursors (Fld).Predecessor = F_Fragment_Offset), + when F_Protocol => + (Valid (Ctx.Cursors (F_TTL)) + and Ctx.Cursors (Fld).Predecessor = F_TTL), + when F_Header_Checksum => + (Valid (Ctx.Cursors (F_Protocol)) + and Ctx.Cursors (Fld).Predecessor = F_Protocol), + when F_Source => + (Valid (Ctx.Cursors (F_Header_Checksum)) + and Ctx.Cursors (Fld).Predecessor = F_Header_Checksum), + when F_Destination => + (Valid (Ctx.Cursors (F_Source)) + and Ctx.Cursors (Fld).Predecessor = F_Source), + when F_Options => + (Valid (Ctx.Cursors (F_Destination)) + and Ctx.Cursors (Fld).Predecessor = F_Destination), + when F_Payload => + (Structural_Valid (Ctx.Cursors (F_Options)) + and Ctx.Cursors (Fld).Predecessor = F_Options), + when F_Final => + (Structural_Valid (Ctx.Cursors (F_Payload)) + and Ctx.Cursors (Fld).Predecessor = F_Payload))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Version) + and then Valid (Ctx, F_IHL) + and then Valid (Ctx, F_DSCP) + and then Valid (Ctx, F_ECN) + and then Valid (Ctx, F_Total_Length) + and then Valid (Ctx, F_Identification) + and then RFLX_Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= RFLX_Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4 + and then Valid (Ctx, F_Flag_R) + and then Valid (Ctx, F_Flag_DF) + and then RFLX_Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = RFLX_Types.U64 (To_Base (False)) + and then Valid (Ctx, F_Flag_MF) + and then Valid (Ctx, F_Fragment_Offset) + and then Valid (Ctx, F_TTL) + and then Valid (Ctx, F_Protocol) + and then Valid (Ctx, F_Header_Checksum) + and then Valid (Ctx, F_Source) + and then Valid (Ctx, F_Destination) + and then Structural_Valid (Ctx, F_Options) + and then Structural_Valid (Ctx, F_Payload)); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Version) + and then Valid (Ctx, F_IHL) + and then Valid (Ctx, F_DSCP) + and then Valid (Ctx, F_ECN) + and then Valid (Ctx, F_Total_Length) + and then Valid (Ctx, F_Identification) + and then RFLX_Types.U64 (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) >= RFLX_Types.U64 (Ctx.Cursors (F_IHL).Value.IHL_Value) * 4 + and then Valid (Ctx, F_Flag_R) + and then Valid (Ctx, F_Flag_DF) + and then RFLX_Types.U64 (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value) = RFLX_Types.U64 (To_Base (False)) + and then Valid (Ctx, F_Flag_MF) + and then Valid (Ctx, F_Fragment_Offset) + and then Valid (Ctx, F_TTL) + and then Valid (Ctx, F_Protocol) + and then Valid (Ctx, F_Header_Checksum) + and then Valid (Ctx, F_Source) + and then Valid (Ctx, F_Destination) + and then Valid (Ctx, F_Options) + and then Valid (Ctx, F_Payload)); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Version) + or Incomplete (Ctx, F_IHL) + or Incomplete (Ctx, F_DSCP) + or Incomplete (Ctx, F_ECN) + or Incomplete (Ctx, F_Total_Length) + or Incomplete (Ctx, F_Identification) + or Incomplete (Ctx, F_Flag_R) + or Incomplete (Ctx, F_Flag_DF) + or Incomplete (Ctx, F_Flag_MF) + or Incomplete (Ctx, F_Fragment_Offset) + or Incomplete (Ctx, F_TTL) + or Incomplete (Ctx, F_Protocol) + or Incomplete (Ctx, F_Header_Checksum) + or Incomplete (Ctx, F_Source) + or Incomplete (Ctx, F_Destination) + or Incomplete (Ctx, F_Options) + or Incomplete (Ctx, F_Payload)); + + function Get_Version (Ctx : Context) return RFLX.IPv4.Version is + (To_Actual (Ctx.Cursors (F_Version).Value.Version_Value)); + + function Get_IHL (Ctx : Context) return RFLX.IPv4.IHL is + (To_Actual (Ctx.Cursors (F_IHL).Value.IHL_Value)); + + function Get_DSCP (Ctx : Context) return RFLX.IPv4.DCSP is + (To_Actual (Ctx.Cursors (F_DSCP).Value.DSCP_Value)); + + function Get_ECN (Ctx : Context) return RFLX.IPv4.ECN is + (To_Actual (Ctx.Cursors (F_ECN).Value.ECN_Value)); + + function Get_Total_Length (Ctx : Context) return RFLX.IPv4.Total_Length is + (To_Actual (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value)); + + function Get_Identification (Ctx : Context) return RFLX.IPv4.Identification is + (To_Actual (Ctx.Cursors (F_Identification).Value.Identification_Value)); + + function Get_Flag_R (Ctx : Context) return Boolean is + (To_Actual (Ctx.Cursors (F_Flag_R).Value.Flag_R_Value)); + + function Get_Flag_DF (Ctx : Context) return Boolean is + (To_Actual (Ctx.Cursors (F_Flag_DF).Value.Flag_DF_Value)); + + function Get_Flag_MF (Ctx : Context) return Boolean is + (To_Actual (Ctx.Cursors (F_Flag_MF).Value.Flag_MF_Value)); + + function Get_Fragment_Offset (Ctx : Context) return RFLX.IPv4.Fragment_Offset is + (To_Actual (Ctx.Cursors (F_Fragment_Offset).Value.Fragment_Offset_Value)); + + function Get_TTL (Ctx : Context) return RFLX.IPv4.TTL is + (To_Actual (Ctx.Cursors (F_TTL).Value.TTL_Value)); + + function Get_Protocol (Ctx : Context) return RFLX.IPv4.Protocol is + (To_Actual (Ctx.Cursors (F_Protocol).Value.Protocol_Value)); + + function Get_Header_Checksum (Ctx : Context) return RFLX.IPv4.Header_Checksum is + (To_Actual (Ctx.Cursors (F_Header_Checksum).Value.Header_Checksum_Value)); + + function Get_Source (Ctx : Context) return RFLX.IPv4.Address is + (To_Actual (Ctx.Cursors (F_Source).Value.Source_Value)); + + function Get_Destination (Ctx : Context) return RFLX.IPv4.Address is + (To_Actual (Ctx.Cursors (F_Destination).Value.Destination_Value)); + + function Complete_Options (Ctx : Context; Seq_Ctx : IPv4.Options.Context) return Boolean is + (IPv4.Options.Valid (Seq_Ctx) + and IPv4.Options.Size (Seq_Ctx) = Field_Size (Ctx, F_Options)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.IPv4.Packet; diff --git a/tests/spark/generated/rflx-rflx_generic_types.ads b/tests/spark/generated/rflx-rflx_generic_types.ads index 70de6436d..dc5624a21 100644 --- a/tests/spark/generated/rflx-rflx_generic_types.ads +++ b/tests/spark/generated/rflx-rflx_generic_types.ads @@ -2,19 +2,29 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); with RFLX.RFLX_Arithmetic; -pragma Warnings (Off, "type ""Bytes_Ptr"" is not referenced"); - generic - type Index is range <>; - type Byte is (<>); - type Bytes is array (Index range <>) of Byte; - type Bytes_Ptr is access Bytes; - type Length is range <>; - type Bit_Length is range <>; + type Custom_Index is range <>; + type Custom_Byte is (<>); + type Custom_Bytes is array (Custom_Index range <>) of Custom_Byte; + type Custom_Bytes_Ptr is access Custom_Bytes; + type Custom_Length is range <>; + type Custom_Bit_Length is range <>; package RFLX.RFLX_Generic_Types with SPARK_Mode is + subtype Index is Custom_Index; + + subtype Byte is Custom_Byte; + + subtype Bytes is Custom_Bytes; + + subtype Bytes_Ptr is Custom_Bytes_Ptr; + + subtype Length is Custom_Length; + + subtype Bit_Length is Custom_Bit_Length; + pragma Compile_Time_Error (Index'First /= 1, "Index'First must be 1"); pragma Compile_Time_Error (Byte'Size /= 8, "Byte must be of size 8"); diff --git a/tests/spark/generated/rflx-rflx_message_sequence.adb b/tests/spark/generated/rflx-rflx_message_sequence.adb index 3b8926c24..30147ecfb 100644 --- a/tests/spark/generated/rflx-rflx_message_sequence.adb +++ b/tests/spark/generated/rflx-rflx_message_sequence.adb @@ -4,12 +4,12 @@ package body RFLX.RFLX_Message_Sequence with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is begin Ctx := (Buffer_First => Buffer_First, Buffer_Last => Buffer_Last, First => First, Last => Last, Buffer => Buffer, Sequence_Last => First - 1, State => S_Valid); Buffer := null; @@ -21,23 +21,23 @@ is Ctx.State := S_Valid; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Sequence_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Sequence_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Switch (Ctx : in out Context; Element_Ctx : out Element_Context) is - Buffer : Types.Bytes_Ptr := Ctx.Buffer; + Buffer : RFLX_Types.Bytes_Ptr := Ctx.Buffer; begin Ctx.Buffer := null; pragma Warnings (Off, "unused assignment to ""Buffer"""); @@ -46,9 +46,9 @@ is end Switch; procedure Update (Ctx : in out Context; Element_Ctx : in out Element_Context) is - Buffer : Types.Bytes_Ptr; + Buffer : RFLX_Types.Bytes_Ptr; Valid_Message : constant Boolean := Element_Valid_Message (Element_Ctx); - Last : Types.Bit_Length := Types.Bit_Length'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; begin if Valid_Message then Last := Element_Last (Element_Ctx); diff --git a/tests/spark/generated/rflx-rflx_message_sequence.ads b/tests/spark/generated/rflx-rflx_message_sequence.ads index 2b6a59f3f..5471ad244 100644 --- a/tests/spark/generated/rflx-rflx_message_sequence.ads +++ b/tests/spark/generated/rflx-rflx_message_sequence.ads @@ -1,13 +1,12 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -with RFLX.RFLX_Generic_Types; +with RFLX.RFLX_Types; generic - with package Types is new RFLX.RFLX_Generic_Types (<>); - type Element_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index) is private; - with procedure Element_Initialize (Ctx : out Element_Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index); - with procedure Element_Take_Buffer (Ctx : in out Element_Context; Buffer : out Types.Bytes_Ptr); + type Element_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is private; + with procedure Element_Initialize (Ctx : out Element_Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index); + with procedure Element_Take_Buffer (Ctx : in out Element_Context; Buffer : out RFLX_Types.Bytes_Ptr); with function Element_Has_Buffer (Ctx : Element_Context) return Boolean; - with function Element_Last (Ctx : Element_Context) return Types.Bit_Index; + with function Element_Last (Ctx : Element_Context) return RFLX_Types.Bit_Index; with function Element_Initialized (Ctx : Element_Context) return Boolean; with function Element_Valid_Message (Ctx : Element_Context) return Boolean; package RFLX.RFLX_Message_Sequence with @@ -18,47 +17,51 @@ is pragma Unevaluated_Use_Of_Old (Allow); - use type Types.Bytes_Ptr, Types.Index, Types.Length, Types.Bit_Index; + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with + use type RFLX_Types.Bytes_Ptr, RFLX_Types.Index, RFLX_Types.Length, RFLX_Types.Bit_Index; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last and First <= Last - and Last <= Types.Bit_Index'Last - 1 - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; + and Last <= RFLX_Types.Bit_Index'Last - 1 + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with Pre => (not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last), + and then Buffer'Last < RFLX_Types.Index'Last), Post => (Has_Buffer (Ctx) and Valid (Ctx) and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) and Sequence_Last (Ctx) = Ctx.First - 1), Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) with Pre => (not Ctx'Constrained and then Buffer /= null and then Buffer'First = Buffer_First and then Buffer'Last = Buffer_Last - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last and then First <= Last - and then Last <= Types.Bit_Index'Last - 1 - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0), + and then Last <= RFLX_Types.Bit_Index'Last - 1 + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0), Post => (Buffer = null and Has_Buffer (Ctx) @@ -83,7 +86,7 @@ is and Ctx.Last = Ctx.Last'Old and Sequence_Last (Ctx) = Ctx.First - 1); - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), Post => @@ -100,7 +103,7 @@ is Depends => (Ctx => Ctx, Buffer => Ctx); - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with Pre => (Has_Buffer (Ctx) and Valid (Ctx) @@ -151,7 +154,7 @@ is (Has_Buffer (Ctx) and not Element_Has_Buffer (Element_Ctx) and (if Element_Valid_Message (Element_Ctx)'Old then Valid (Ctx)) - and Sequence_Last (Ctx) = Types.Bit_Length'(if Element_Valid_Message (Element_Ctx) then Element_Last (Element_Ctx) else Sequence_Last (Ctx))'Old + and Sequence_Last (Ctx) = RFLX_Types.Bit_Length'(if Element_Valid_Message (Element_Ctx) then Element_Last (Element_Ctx) else Sequence_Last (Ctx))'Old and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old @@ -168,37 +171,37 @@ is function Has_Buffer (Ctx : Context) return Boolean; - function Available_Space (Ctx : Context) return Types.Bit_Length; + function Available_Space (Ctx : Context) return RFLX_Types.Bit_Length; - function Sequence_Last (Ctx : Context) return Types.Bit_Length; + function Sequence_Last (Ctx : Context) return RFLX_Types.Bit_Length; - function Size (Ctx : Context) return Types.Bit_Length; + function Size (Ctx : Context) return RFLX_Types.Bit_Length; - function Byte_Size (Ctx : Context) return Types.Length; + function Byte_Size (Ctx : Context) return RFLX_Types.Length; private type Context_State is (S_Valid, S_Invalid); - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is record - Sequence_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; + Sequence_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; State : Context_State := S_Valid; end record with Dynamic_Predicate => ((if Buffer /= null then (Buffer'First = Buffer_First and Buffer'Last = Buffer_Last)) - and Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last + and RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last and First <= Last - and Last <= Types.Bit_Index'Last - 1 + and Last <= RFLX_Types.Bit_Index'Last - 1 and First - 1 <= Sequence_Last and Sequence_Last <= Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0 - and Sequence_Last mod Types.Byte'Size = 0); + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0 + and Sequence_Last mod RFLX_Types.Byte'Size = 0); function Has_Element (Ctx : Context) return Boolean is (Ctx.State = S_Valid and Ctx.Sequence_Last < Ctx.Last); @@ -209,21 +212,21 @@ private function Has_Buffer (Ctx : Context) return Boolean is (Ctx.Buffer /= null); - function Available_Space (Ctx : Context) return Types.Bit_Length is + function Available_Space (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Last - Ctx.Sequence_Last); - function Sequence_Last (Ctx : Context) return Types.Bit_Length is + function Sequence_Last (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Sequence_Last); - function Size (Ctx : Context) return Types.Bit_Length is + function Size (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Sequence_Last - Ctx.First + 1); - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is (if Ctx.Sequence_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Sequence_Last) - Types.Byte_Index (Ctx.First)) + 1); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Sequence_Last) - RFLX_Types.Byte_Index (Ctx.First)) + 1); end RFLX.RFLX_Message_Sequence; diff --git a/tests/spark/generated/rflx-rflx_scalar_sequence.adb b/tests/spark/generated/rflx-rflx_scalar_sequence.adb index b2d327e44..01234906e 100644 --- a/tests/spark/generated/rflx-rflx_scalar_sequence.adb +++ b/tests/spark/generated/rflx-rflx_scalar_sequence.adb @@ -4,12 +4,12 @@ package body RFLX.RFLX_Scalar_Sequence with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is begin Ctx := (Buffer_First => Buffer_First, Buffer_Last => Buffer_Last, First => First, Last => Last, Buffer => Buffer, Sequence_Last => First - 1, State => S_Valid, First_Element => Element_Base_Type'First, Next_Element => Element_Base_Type'First); Buffer := null; @@ -21,27 +21,27 @@ is Ctx.State := S_Valid; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Sequence_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Sequence_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Next (Ctx : in out Context) is - Last_Bit : constant Types.Bit_Index := Ctx.Sequence_Last + Element_Base_Type'Size; - Buffer_First : constant Types.Index := Types.Byte_Index (Ctx.Sequence_Last + 1); - Buffer_Last : constant Types.Index := Types.Byte_Index (Last_Bit); - Offset : constant Types.Offset := Types.Offset ((8 - (Last_Bit mod 8)) mod 8); - function Extract is new Types.Extract (Element_Base_Type); + Last_Bit : constant RFLX_Types.Bit_Index := Ctx.Sequence_Last + Element_Base_Type'Size; + Buffer_First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Sequence_Last + 1); + Buffer_Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Last_Bit); + Offset : constant RFLX_Types.Offset := RFLX_Types.Offset ((8 - (Last_Bit mod 8)) mod 8); + function Extract is new RFLX_Types.Extract (Element_Base_Type); begin if Buffer_First >= Ctx.Buffer'First and Buffer_Last <= Ctx.Buffer'Last and Buffer_First <= Buffer_Last then Ctx.Next_Element := Extract (Ctx.Buffer.all (Buffer_First .. Buffer_Last), Offset); @@ -63,16 +63,16 @@ is (To_Actual (Ctx.First_Element)); procedure Append_Element (Ctx : in out Context; Value : Element_Type) is - Last_Bit : Types.Bit_Index; - First : Types.Index; - Last : Types.Index; - Offset : Types.Offset; - procedure Insert is new Types.Insert (Element_Base_Type); + Last_Bit : RFLX_Types.Bit_Index; + First : RFLX_Types.Index; + Last : RFLX_Types.Index; + Offset : RFLX_Types.Offset; + procedure Insert is new RFLX_Types.Insert (Element_Base_Type); begin Last_Bit := Ctx.Sequence_Last + Element_Base_Type'Size; - First := Types.Byte_Index (Ctx.Sequence_Last + 1); - Last := Types.Byte_Index (Last_Bit); - Offset := Types.Offset ((8 - (Last_Bit mod 8)) mod 8); + First := RFLX_Types.Byte_Index (Ctx.Sequence_Last + 1); + Last := RFLX_Types.Byte_Index (Last_Bit); + Offset := RFLX_Types.Offset ((8 - (Last_Bit mod 8)) mod 8); if First >= Ctx.Buffer'First and Last <= Ctx.Buffer'Last and First <= Last then Insert (To_Base (Value), Ctx.Buffer.all (First .. Last), Offset); end if; diff --git a/tests/spark/generated/rflx-rflx_scalar_sequence.ads b/tests/spark/generated/rflx-rflx_scalar_sequence.ads index dda8f7d59..a4774b1c5 100644 --- a/tests/spark/generated/rflx-rflx_scalar_sequence.ads +++ b/tests/spark/generated/rflx-rflx_scalar_sequence.ads @@ -1,8 +1,7 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -with RFLX.RFLX_Generic_Types; +with RFLX.RFLX_Types; generic - with package Types is new RFLX.RFLX_Generic_Types (<>); type Element_Type is private; type Element_Base_Type is mod <>; with function Valid (Element : Element_Base_Type) return Boolean; @@ -14,45 +13,49 @@ is pragma Annotate (GNATprove, Terminating, RFLX_Scalar_Sequence); - use type Types.Bytes_Ptr, Types.Index, Types.Length, Types.Bit_Index; + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First, Last : Types.Bit_Index := Types.Bit_Index'First) is private with + use type RFLX_Types.Bytes_Ptr, RFLX_Types.Index, RFLX_Types.Length, RFLX_Types.Bit_Index; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First, Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First) is private with Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First mod Types.Byte'Size = 1 + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First mod RFLX_Types.Byte'Size = 1 and First <= Last - and Last <= Types.Bit_Index'Last - 1; + and Last <= RFLX_Types.Bit_Index'Last - 1; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with Pre => (not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last), + and then Buffer'Last < RFLX_Types.Index'Last), Post => (Has_Buffer (Ctx) and Valid (Ctx) and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) and Sequence_Last (Ctx) = Ctx.First - 1), Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) with Pre => (not Ctx'Constrained and then Buffer /= null and then Buffer'First = Buffer_First and then Buffer'Last = Buffer_Last - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First mod Types.Byte'Size = 1 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First mod RFLX_Types.Byte'Size = 1 and then First <= Last - and then Last <= Types.Bit_Index'Last - 1), + and then Last <= RFLX_Types.Bit_Index'Last - 1), Post => (Buffer = null and Has_Buffer (Ctx) @@ -77,7 +80,7 @@ is and Ctx.Last = Ctx.Last'Old and Sequence_Last (Ctx) = Ctx.First - 1); - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), Post => @@ -94,7 +97,7 @@ is Depends => (Ctx => Ctx, Buffer => Ctx); - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with Pre => (Has_Buffer (Ctx) and Valid (Ctx) @@ -149,22 +152,22 @@ is function Has_Buffer (Ctx : Context) return Boolean; - function Available_Space (Ctx : Context) return Types.Bit_Length; + function Available_Space (Ctx : Context) return RFLX_Types.Bit_Length; - function Sequence_Last (Ctx : Context) return Types.Bit_Length; + function Sequence_Last (Ctx : Context) return RFLX_Types.Bit_Length; - function Size (Ctx : Context) return Types.Bit_Length; + function Size (Ctx : Context) return RFLX_Types.Bit_Length; - function Byte_Size (Ctx : Context) return Types.Length; + function Byte_Size (Ctx : Context) return RFLX_Types.Length; private type Context_State is (S_Valid, S_Invalid); - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First, Last : Types.Bit_Index := Types.Bit_Index'First) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First, Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First) is record - Sequence_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; + Sequence_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; State : Context_State := S_Valid; First_Element : Element_Base_Type := Element_Base_Type'First; Next_Element : Element_Base_Type := Element_Base_Type'First; @@ -173,11 +176,11 @@ private ((if Buffer /= null then (Buffer'First = Buffer_First and Buffer'Last = Buffer_Last)) - and Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First mod Types.Byte'Size = 1 + and RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First mod RFLX_Types.Byte'Size = 1 and First <= Last - and Last <= Types.Bit_Index'Last - 1 + and Last <= RFLX_Types.Bit_Index'Last - 1 and Sequence_Last >= First - 1 and Sequence_Last <= Last and (if Sequence_Last > First - 1 and State = S_Valid then Valid (First_Element))); @@ -194,21 +197,21 @@ private function Has_Buffer (Ctx : Context) return Boolean is (Ctx.Buffer /= null); - function Available_Space (Ctx : Context) return Types.Bit_Length is + function Available_Space (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Last - Ctx.Sequence_Last); - function Sequence_Last (Ctx : Context) return Types.Bit_Length is + function Sequence_Last (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Sequence_Last); - function Size (Ctx : Context) return Types.Bit_Length is + function Size (Ctx : Context) return RFLX_Types.Bit_Length is (Ctx.Sequence_Last - Ctx.First + 1); - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is (if Ctx.Sequence_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Sequence_Last) - Types.Byte_Index (Ctx.First)) + 1); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Sequence_Last) - RFLX_Types.Byte_Index (Ctx.First)) + 1); end RFLX.RFLX_Scalar_Sequence; diff --git a/tests/spark/generated/rflx-sequence-av_enumeration_vector.ads b/tests/spark/generated/rflx-sequence-av_enumeration_vector.ads index bb23e28ee..6e184a153 100644 --- a/tests/spark/generated/rflx-sequence-av_enumeration_vector.ads +++ b/tests/spark/generated/rflx-sequence-av_enumeration_vector.ads @@ -1,8 +1,10 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); pragma SPARK_Mode; -with RFLX.RFLX_Types; with RFLX.RFLX_Scalar_Sequence; with RFLX.Sequence; +pragma Warnings (Off, "unit ""*RFLX_Types"" is not referenced"); +with RFLX.RFLX_Types; +pragma Warnings (On, "unit ""*RFLX_Types"" is not referenced"); -package RFLX.Sequence.AV_Enumeration_Vector is new RFLX.RFLX_Scalar_Sequence (RFLX.RFLX_Types, RFLX.Sequence.AV_Enumeration, RFLX.Sequence.AV_Enumeration_Base, RFLX.Sequence.Valid, RFLX.Sequence.To_Actual, RFLX.Sequence.To_Base); +package RFLX.Sequence.AV_Enumeration_Vector is new RFLX.RFLX_Scalar_Sequence (RFLX.Sequence.AV_Enumeration, RFLX.Sequence.AV_Enumeration_Base, RFLX.Sequence.Valid, RFLX.Sequence.To_Actual, RFLX.Sequence.To_Base); diff --git a/tests/spark/generated/rflx-sequence-enumeration_vector.ads b/tests/spark/generated/rflx-sequence-enumeration_vector.ads index 6bfd32c11..95c7e14ae 100644 --- a/tests/spark/generated/rflx-sequence-enumeration_vector.ads +++ b/tests/spark/generated/rflx-sequence-enumeration_vector.ads @@ -1,8 +1,10 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); pragma SPARK_Mode; -with RFLX.RFLX_Types; with RFLX.RFLX_Scalar_Sequence; with RFLX.Sequence; +pragma Warnings (Off, "unit ""*RFLX_Types"" is not referenced"); +with RFLX.RFLX_Types; +pragma Warnings (On, "unit ""*RFLX_Types"" is not referenced"); -package RFLX.Sequence.Enumeration_Vector is new RFLX.RFLX_Scalar_Sequence (RFLX.RFLX_Types, RFLX.Sequence.Enumeration, RFLX.Sequence.Enumeration_Base, RFLX.Sequence.Valid, RFLX.Sequence.To_Actual, RFLX.Sequence.To_Base); +package RFLX.Sequence.Enumeration_Vector is new RFLX.RFLX_Scalar_Sequence (RFLX.Sequence.Enumeration, RFLX.Sequence.Enumeration_Base, RFLX.Sequence.Valid, RFLX.Sequence.To_Actual, RFLX.Sequence.To_Base); diff --git a/tests/spark/generated/rflx-sequence-generic_inner_message.ads b/tests/spark/generated/rflx-sequence-generic_inner_message.ads deleted file mode 100644 index 354230bc7..000000000 --- a/tests/spark/generated/rflx-sequence-generic_inner_message.ads +++ /dev/null @@ -1,625 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); -package RFLX.Sequence.Generic_Inner_Message with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes, Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Length, F_Payload, F_Final); - - subtype Field is Virtual_Field range F_Length .. F_Payload; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Payload | F_Final => - null; - when F_Length => - Length_Value : RFLX.Sequence.Length; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean with - Pre => - Has_Buffer (Ctx) - and Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - function Get_Length (Ctx : Context) return RFLX.Sequence.Length with - Pre => - Valid (Ctx, F_Length); - - pragma Warnings (On, "precondition is always False"); - - generic - with procedure Process_Payload (Payload : Types.Bytes); - procedure Get_Payload (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Payload); - - procedure Set_Length (Ctx : in out Context; Val : RFLX.Sequence.Length) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Length) - and then Field_Condition (Ctx, (F_Length, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Length) >= Field_Size (Ctx, F_Length), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Length) - and Get_Length (Ctx) = Val - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Payload) = F_Length - and Valid_Next (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Length) = Predecessor (Ctx, F_Length)'Old - and Valid_Next (Ctx, F_Length) = Valid_Next (Ctx, F_Length)'Old; - - procedure Set_Payload_Empty (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old; - - procedure Initialize_Payload (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old; - - procedure Set_Payload (Ctx : in out Context; Value : Types.Bytes) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Value'Length = Types.Byte_Index (Field_Last (Ctx, F_Payload)) - Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old; - - generic - with procedure Process_Payload (Payload : out Types.Bytes); - with function Valid_Length (Length : Types.Length) return Boolean; - procedure Generic_Set_Payload (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Valid_Length (Types.Length (Field_Size (Ctx, F_Payload) / Types.Byte'Size)), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old; - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Length => - Valid (Val.Length_Value), - when F_Payload => - True, - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then ((if - Structural_Valid (Cursors (F_Payload)) - then - (Valid (Cursors (F_Length)) - and then Cursors (F_Payload).Predecessor = F_Length))) - and then ((if - Invalid (Cursors (F_Length)) - then - Invalid (Cursors (F_Payload)))) - and then (if - Structural_Valid (Cursors (F_Length)) - then - Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Cursors (F_Length).Predecessor = F_Initial - and then Cursors (F_Length).First = First - and then (if - Structural_Valid (Cursors (F_Payload)) - then - Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = Types.Bit_Length (Cursors (F_Length).Value.Length_Value) * 8 - and then Cursors (F_Payload).Predecessor = F_Length - and then Cursors (F_Payload).First = Cursors (F_Length).Last + 1))); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Length) - and then Field_First (Ctx, F_Length) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Length) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Length) - and then Invalid (Ctx, F_Payload)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Length => - True, - when others => - False), - when F_Length => - (case Fld is - when F_Payload => - True, - when others => - False), - when F_Payload | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Initial | F_Length | F_Payload => - True, - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Length => - RFLX.Sequence.Length'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Length => - (case Fld is - when F_Payload => - Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, - when others => - Types.Unreachable_Bit_Length), - when F_Payload | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Length => - Ctx.First, - when F_Payload => - (if - Ctx.Cursors (Fld).Predecessor = F_Length - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length))); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Length => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_Payload => - (Valid (Ctx.Cursors (F_Length)) - and Ctx.Cursors (Fld).Predecessor = F_Length), - when F_Final => - (Structural_Valid (Ctx.Cursors (F_Payload)) - and Ctx.Cursors (Fld).Predecessor = F_Payload))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Length) - and then Structural_Valid (Ctx, F_Payload)); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Length) - and then Valid (Ctx, F_Payload)); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Length) - or Incomplete (Ctx, F_Payload)); - - function Get_Length (Ctx : Context) return RFLX.Sequence.Length is - (To_Actual (Ctx.Cursors (F_Length).Value.Length_Value)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.Sequence.Generic_Inner_Message; diff --git a/tests/spark/generated/rflx-sequence-generic_message.ads b/tests/spark/generated/rflx-sequence-generic_message.ads deleted file mode 100644 index 54f9e7c55..000000000 --- a/tests/spark/generated/rflx-sequence-generic_message.ads +++ /dev/null @@ -1,1124 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; -with RFLX.RFLX_Scalar_Sequence; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); - with package Modular_Vector_Sequence is new RFLX.RFLX_Scalar_Sequence (Types, others => <>); - with package Range_Vector_Sequence is new RFLX.RFLX_Scalar_Sequence (Types, others => <>); - with package Enumeration_Vector_Sequence is new RFLX.RFLX_Scalar_Sequence (Types, others => <>); - with package AV_Enumeration_Vector_Sequence is new RFLX.RFLX_Scalar_Sequence (Types, others => <>); -package RFLX.Sequence.Generic_Message with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes, Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Length, F_Modular_Vector, F_Range_Vector, F_Enumeration_Vector, F_AV_Enumeration_Vector, F_Final); - - subtype Field is Virtual_Field range F_Length .. F_AV_Enumeration_Vector; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Modular_Vector | F_Range_Vector | F_Enumeration_Vector | F_AV_Enumeration_Vector | F_Final => - null; - when F_Length => - Length_Value : RFLX.Sequence.Length; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean with - Pre => - Has_Buffer (Ctx) - and Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - function Get_Length (Ctx : Context) return RFLX.Sequence.Length with - Pre => - Valid (Ctx, F_Length); - - pragma Warnings (On, "precondition is always False"); - - generic - with procedure Process_Modular_Vector (Modular_Vector : Types.Bytes); - procedure Get_Modular_Vector (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Modular_Vector); - - generic - with procedure Process_Range_Vector (Range_Vector : Types.Bytes); - procedure Get_Range_Vector (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Range_Vector); - - generic - with procedure Process_Enumeration_Vector (Enumeration_Vector : Types.Bytes); - procedure Get_Enumeration_Vector (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Enumeration_Vector); - - generic - with procedure Process_AV_Enumeration_Vector (AV_Enumeration_Vector : Types.Bytes); - procedure Get_AV_Enumeration_Vector (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_AV_Enumeration_Vector); - - procedure Set_Length (Ctx : in out Context; Val : RFLX.Sequence.Length) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Length) - and then Field_Condition (Ctx, (F_Length, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Length) >= Field_Size (Ctx, F_Length), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Length) - and Get_Length (Ctx) = Val - and Invalid (Ctx, F_Modular_Vector) - and Invalid (Ctx, F_Range_Vector) - and Invalid (Ctx, F_Enumeration_Vector) - and Invalid (Ctx, F_AV_Enumeration_Vector) - and (Predecessor (Ctx, F_Modular_Vector) = F_Length - and Valid_Next (Ctx, F_Modular_Vector)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Length) = Predecessor (Ctx, F_Length)'Old - and Valid_Next (Ctx, F_Length) = Valid_Next (Ctx, F_Length)'Old; - - procedure Set_Modular_Vector_Empty (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Modular_Vector) - and then Field_Condition (Ctx, (Fld => F_Modular_Vector)) - and then Available_Space (Ctx, F_Modular_Vector) >= Field_Size (Ctx, F_Modular_Vector) - and then Field_First (Ctx, F_Modular_Vector) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Modular_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Modular_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Modular_Vector) = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Modular_Vector) - and Invalid (Ctx, F_Range_Vector) - and Invalid (Ctx, F_Enumeration_Vector) - and Invalid (Ctx, F_AV_Enumeration_Vector) - and (Predecessor (Ctx, F_Range_Vector) = F_Modular_Vector - and Valid_Next (Ctx, F_Range_Vector)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Modular_Vector) = Predecessor (Ctx, F_Modular_Vector)'Old - and Valid_Next (Ctx, F_Modular_Vector) = Valid_Next (Ctx, F_Modular_Vector)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old; - - procedure Set_Modular_Vector (Ctx : in out Context; Seq_Ctx : Modular_Vector_Sequence.Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Modular_Vector) - and then Field_Condition (Ctx, (Fld => F_Modular_Vector)) - and then Available_Space (Ctx, F_Modular_Vector) >= Field_Size (Ctx, F_Modular_Vector) - and then Field_First (Ctx, F_Modular_Vector) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Modular_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Modular_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Modular_Vector) = Modular_Vector_Sequence.Size (Seq_Ctx) - and then Modular_Vector_Sequence.Has_Buffer (Seq_Ctx) - and then Modular_Vector_Sequence.Valid (Seq_Ctx), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Modular_Vector) - and Invalid (Ctx, F_Range_Vector) - and Invalid (Ctx, F_Enumeration_Vector) - and Invalid (Ctx, F_AV_Enumeration_Vector) - and (Predecessor (Ctx, F_Range_Vector) = F_Modular_Vector - and Valid_Next (Ctx, F_Range_Vector)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Modular_Vector) = Predecessor (Ctx, F_Modular_Vector)'Old - and Valid_Next (Ctx, F_Modular_Vector) = Valid_Next (Ctx, F_Modular_Vector)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old - and (if - Field_Size (Ctx, F_Modular_Vector) > 0 - then - Present (Ctx, F_Modular_Vector)); - - procedure Set_Range_Vector (Ctx : in out Context; Seq_Ctx : Range_Vector_Sequence.Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Range_Vector) - and then Field_Condition (Ctx, (Fld => F_Range_Vector)) - and then Available_Space (Ctx, F_Range_Vector) >= Field_Size (Ctx, F_Range_Vector) - and then Field_First (Ctx, F_Range_Vector) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Range_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Range_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Range_Vector) = Range_Vector_Sequence.Size (Seq_Ctx) - and then Range_Vector_Sequence.Has_Buffer (Seq_Ctx) - and then Range_Vector_Sequence.Valid (Seq_Ctx), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Range_Vector) - and Invalid (Ctx, F_Enumeration_Vector) - and Invalid (Ctx, F_AV_Enumeration_Vector) - and (Predecessor (Ctx, F_Enumeration_Vector) = F_Range_Vector - and Valid_Next (Ctx, F_Enumeration_Vector)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Range_Vector) = Predecessor (Ctx, F_Range_Vector)'Old - and Valid_Next (Ctx, F_Range_Vector) = Valid_Next (Ctx, F_Range_Vector)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old - and (if - Field_Size (Ctx, F_Range_Vector) > 0 - then - Present (Ctx, F_Range_Vector)); - - procedure Set_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : Enumeration_Vector_Sequence.Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Enumeration_Vector) - and then Field_Condition (Ctx, (Fld => F_Enumeration_Vector)) - and then Available_Space (Ctx, F_Enumeration_Vector) >= Field_Size (Ctx, F_Enumeration_Vector) - and then Field_First (Ctx, F_Enumeration_Vector) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Enumeration_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Enumeration_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Enumeration_Vector) = Enumeration_Vector_Sequence.Size (Seq_Ctx) - and then Enumeration_Vector_Sequence.Has_Buffer (Seq_Ctx) - and then Enumeration_Vector_Sequence.Valid (Seq_Ctx), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Enumeration_Vector) - and Invalid (Ctx, F_AV_Enumeration_Vector) - and (Predecessor (Ctx, F_AV_Enumeration_Vector) = F_Enumeration_Vector - and Valid_Next (Ctx, F_AV_Enumeration_Vector)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Enumeration_Vector) = Predecessor (Ctx, F_Enumeration_Vector)'Old - and Valid_Next (Ctx, F_Enumeration_Vector) = Valid_Next (Ctx, F_Enumeration_Vector)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old - and (if - Field_Size (Ctx, F_Enumeration_Vector) > 0 - then - Present (Ctx, F_Enumeration_Vector)); - - procedure Set_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : AV_Enumeration_Vector_Sequence.Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_AV_Enumeration_Vector) - and then Field_Condition (Ctx, (Fld => F_AV_Enumeration_Vector)) - and then Available_Space (Ctx, F_AV_Enumeration_Vector) >= Field_Size (Ctx, F_AV_Enumeration_Vector) - and then Field_First (Ctx, F_AV_Enumeration_Vector) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_AV_Enumeration_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_AV_Enumeration_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_AV_Enumeration_Vector) = AV_Enumeration_Vector_Sequence.Size (Seq_Ctx) - and then AV_Enumeration_Vector_Sequence.Has_Buffer (Seq_Ctx) - and then AV_Enumeration_Vector_Sequence.Valid (Seq_Ctx), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_AV_Enumeration_Vector) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_AV_Enumeration_Vector)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_AV_Enumeration_Vector) = Predecessor (Ctx, F_AV_Enumeration_Vector)'Old - and Valid_Next (Ctx, F_AV_Enumeration_Vector) = Valid_Next (Ctx, F_AV_Enumeration_Vector)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old - and (if - Field_Size (Ctx, F_AV_Enumeration_Vector) > 0 - then - Present (Ctx, F_AV_Enumeration_Vector)); - - procedure Switch_To_Modular_Vector (Ctx : in out Context; Seq_Ctx : out Modular_Vector_Sequence.Context) with - Pre => - not Ctx'Constrained - and then not Seq_Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Modular_Vector) - and then Field_Size (Ctx, F_Modular_Vector) > 0 - and then Field_First (Ctx, F_Modular_Vector) mod Types.Byte'Size = 1 - and then Field_Condition (Ctx, (Fld => F_Modular_Vector)) - and then Available_Space (Ctx, F_Modular_Vector) >= Field_Size (Ctx, F_Modular_Vector), - Post => - not Has_Buffer (Ctx) - and Modular_Vector_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Seq_Ctx.Buffer_First - and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and Seq_Ctx.First = Field_First (Ctx, F_Modular_Vector) - and Seq_Ctx.Last = Field_Last (Ctx, F_Modular_Vector) - and Modular_Vector_Sequence.Valid (Seq_Ctx) - and Modular_Vector_Sequence.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 - and Present (Ctx, F_Modular_Vector) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Modular_Vector) = Predecessor (Ctx, F_Modular_Vector)'Old - and Path_Condition (Ctx, F_Modular_Vector) = Path_Condition (Ctx, F_Modular_Vector)'Old - and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old, - Contract_Cases => - (Structural_Valid (Ctx, F_Modular_Vector) => - Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old - and Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old - and Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, - others => - (Predecessor (Ctx, F_Range_Vector) = F_Modular_Vector - and Valid_Next (Ctx, F_Range_Vector)) - and Invalid (Ctx, F_Range_Vector) - and Invalid (Ctx, F_Enumeration_Vector) - and Invalid (Ctx, F_AV_Enumeration_Vector)); - - procedure Switch_To_Range_Vector (Ctx : in out Context; Seq_Ctx : out Range_Vector_Sequence.Context) with - Pre => - not Ctx'Constrained - and then not Seq_Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Range_Vector) - and then Field_Size (Ctx, F_Range_Vector) > 0 - and then Field_First (Ctx, F_Range_Vector) mod Types.Byte'Size = 1 - and then Field_Condition (Ctx, (Fld => F_Range_Vector)) - and then Available_Space (Ctx, F_Range_Vector) >= Field_Size (Ctx, F_Range_Vector), - Post => - not Has_Buffer (Ctx) - and Range_Vector_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Seq_Ctx.Buffer_First - and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and Seq_Ctx.First = Field_First (Ctx, F_Range_Vector) - and Seq_Ctx.Last = Field_Last (Ctx, F_Range_Vector) - and Range_Vector_Sequence.Valid (Seq_Ctx) - and Range_Vector_Sequence.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 - and Present (Ctx, F_Range_Vector) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Range_Vector) = Predecessor (Ctx, F_Range_Vector)'Old - and Path_Condition (Ctx, F_Range_Vector) = Path_Condition (Ctx, F_Range_Vector)'Old - and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old - and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old, - Contract_Cases => - (Structural_Valid (Ctx, F_Range_Vector) => - Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old - and Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, - others => - (Predecessor (Ctx, F_Enumeration_Vector) = F_Range_Vector - and Valid_Next (Ctx, F_Enumeration_Vector)) - and Invalid (Ctx, F_Enumeration_Vector) - and Invalid (Ctx, F_AV_Enumeration_Vector)); - - procedure Switch_To_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : out Enumeration_Vector_Sequence.Context) with - Pre => - not Ctx'Constrained - and then not Seq_Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Enumeration_Vector) - and then Field_Size (Ctx, F_Enumeration_Vector) > 0 - and then Field_First (Ctx, F_Enumeration_Vector) mod Types.Byte'Size = 1 - and then Field_Condition (Ctx, (Fld => F_Enumeration_Vector)) - and then Available_Space (Ctx, F_Enumeration_Vector) >= Field_Size (Ctx, F_Enumeration_Vector), - Post => - not Has_Buffer (Ctx) - and Enumeration_Vector_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Seq_Ctx.Buffer_First - and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and Seq_Ctx.First = Field_First (Ctx, F_Enumeration_Vector) - and Seq_Ctx.Last = Field_Last (Ctx, F_Enumeration_Vector) - and Enumeration_Vector_Sequence.Valid (Seq_Ctx) - and Enumeration_Vector_Sequence.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 - and Present (Ctx, F_Enumeration_Vector) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Enumeration_Vector) = Predecessor (Ctx, F_Enumeration_Vector)'Old - and Path_Condition (Ctx, F_Enumeration_Vector) = Path_Condition (Ctx, F_Enumeration_Vector)'Old - and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old - and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old - and Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old, - Contract_Cases => - (Structural_Valid (Ctx, F_Enumeration_Vector) => - Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, - others => - (Predecessor (Ctx, F_AV_Enumeration_Vector) = F_Enumeration_Vector - and Valid_Next (Ctx, F_AV_Enumeration_Vector)) - and Invalid (Ctx, F_AV_Enumeration_Vector)); - - procedure Switch_To_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : out AV_Enumeration_Vector_Sequence.Context) with - Pre => - not Ctx'Constrained - and then not Seq_Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_AV_Enumeration_Vector) - and then Field_Size (Ctx, F_AV_Enumeration_Vector) > 0 - and then Field_First (Ctx, F_AV_Enumeration_Vector) mod Types.Byte'Size = 1 - and then Field_Condition (Ctx, (Fld => F_AV_Enumeration_Vector)) - and then Available_Space (Ctx, F_AV_Enumeration_Vector) >= Field_Size (Ctx, F_AV_Enumeration_Vector), - Post => - not Has_Buffer (Ctx) - and AV_Enumeration_Vector_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Seq_Ctx.Buffer_First - and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and Seq_Ctx.First = Field_First (Ctx, F_AV_Enumeration_Vector) - and Seq_Ctx.Last = Field_Last (Ctx, F_AV_Enumeration_Vector) - and AV_Enumeration_Vector_Sequence.Valid (Seq_Ctx) - and AV_Enumeration_Vector_Sequence.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 - and Present (Ctx, F_AV_Enumeration_Vector) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_AV_Enumeration_Vector) = Predecessor (Ctx, F_AV_Enumeration_Vector)'Old - and Path_Condition (Ctx, F_AV_Enumeration_Vector) = Path_Condition (Ctx, F_AV_Enumeration_Vector)'Old - and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old - and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old - and Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old - and Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old, - Contract_Cases => - (Structural_Valid (Ctx, F_AV_Enumeration_Vector) => - True, - others => - True); - - function Complete_Modular_Vector (Ctx : Context; Seq_Ctx : Modular_Vector_Sequence.Context) return Boolean with - Pre => - Valid_Next (Ctx, F_Modular_Vector); - - function Complete_Range_Vector (Ctx : Context; Seq_Ctx : Range_Vector_Sequence.Context) return Boolean with - Pre => - Valid_Next (Ctx, F_Range_Vector); - - function Complete_Enumeration_Vector (Ctx : Context; Seq_Ctx : Enumeration_Vector_Sequence.Context) return Boolean with - Pre => - Valid_Next (Ctx, F_Enumeration_Vector); - - function Complete_AV_Enumeration_Vector (Ctx : Context; Seq_Ctx : AV_Enumeration_Vector_Sequence.Context) return Boolean with - Pre => - Valid_Next (Ctx, F_AV_Enumeration_Vector); - - procedure Update_Modular_Vector (Ctx : in out Context; Seq_Ctx : in out Modular_Vector_Sequence.Context) with - Pre => - Present (Ctx, F_Modular_Vector) - and then Complete_Modular_Vector (Ctx, Seq_Ctx) - and then not Has_Buffer (Ctx) - and then Modular_Vector_Sequence.Has_Buffer (Seq_Ctx) - and then Ctx.Buffer_First = Seq_Ctx.Buffer_First - and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and then Seq_Ctx.First = Field_First (Ctx, F_Modular_Vector) - and then Seq_Ctx.Last = Field_Last (Ctx, F_Modular_Vector), - Post => - Present (Ctx, F_Modular_Vector) - and Has_Buffer (Ctx) - and not Modular_Vector_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Seq_Ctx.First = Seq_Ctx.First'Old - and Seq_Ctx.Last = Seq_Ctx.Last'Old - and Field_First (Ctx, F_Modular_Vector) = Field_First (Ctx, F_Modular_Vector)'Old - and Field_Size (Ctx, F_Modular_Vector) = Field_Size (Ctx, F_Modular_Vector)'Old - and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old - and Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old - and Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old - and Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, - Depends => - (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); - - procedure Update_Range_Vector (Ctx : in out Context; Seq_Ctx : in out Range_Vector_Sequence.Context) with - Pre => - Present (Ctx, F_Range_Vector) - and then Complete_Range_Vector (Ctx, Seq_Ctx) - and then not Has_Buffer (Ctx) - and then Range_Vector_Sequence.Has_Buffer (Seq_Ctx) - and then Ctx.Buffer_First = Seq_Ctx.Buffer_First - and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and then Seq_Ctx.First = Field_First (Ctx, F_Range_Vector) - and then Seq_Ctx.Last = Field_Last (Ctx, F_Range_Vector), - Post => - Present (Ctx, F_Range_Vector) - and Has_Buffer (Ctx) - and not Range_Vector_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Seq_Ctx.First = Seq_Ctx.First'Old - and Seq_Ctx.Last = Seq_Ctx.Last'Old - and Field_First (Ctx, F_Range_Vector) = Field_First (Ctx, F_Range_Vector)'Old - and Field_Size (Ctx, F_Range_Vector) = Field_Size (Ctx, F_Range_Vector)'Old - and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old - and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old - and Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old - and Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, - Depends => - (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); - - procedure Update_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : in out Enumeration_Vector_Sequence.Context) with - Pre => - Present (Ctx, F_Enumeration_Vector) - and then Complete_Enumeration_Vector (Ctx, Seq_Ctx) - and then not Has_Buffer (Ctx) - and then Enumeration_Vector_Sequence.Has_Buffer (Seq_Ctx) - and then Ctx.Buffer_First = Seq_Ctx.Buffer_First - and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and then Seq_Ctx.First = Field_First (Ctx, F_Enumeration_Vector) - and then Seq_Ctx.Last = Field_Last (Ctx, F_Enumeration_Vector), - Post => - Present (Ctx, F_Enumeration_Vector) - and Has_Buffer (Ctx) - and not Enumeration_Vector_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Seq_Ctx.First = Seq_Ctx.First'Old - and Seq_Ctx.Last = Seq_Ctx.Last'Old - and Field_First (Ctx, F_Enumeration_Vector) = Field_First (Ctx, F_Enumeration_Vector)'Old - and Field_Size (Ctx, F_Enumeration_Vector) = Field_Size (Ctx, F_Enumeration_Vector)'Old - and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old - and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old - and Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old - and Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, - Depends => - (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); - - procedure Update_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : in out AV_Enumeration_Vector_Sequence.Context) with - Pre => - Present (Ctx, F_AV_Enumeration_Vector) - and then Complete_AV_Enumeration_Vector (Ctx, Seq_Ctx) - and then not Has_Buffer (Ctx) - and then AV_Enumeration_Vector_Sequence.Has_Buffer (Seq_Ctx) - and then Ctx.Buffer_First = Seq_Ctx.Buffer_First - and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and then Seq_Ctx.First = Field_First (Ctx, F_AV_Enumeration_Vector) - and then Seq_Ctx.Last = Field_Last (Ctx, F_AV_Enumeration_Vector), - Post => - Present (Ctx, F_AV_Enumeration_Vector) - and Has_Buffer (Ctx) - and not AV_Enumeration_Vector_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Seq_Ctx.First = Seq_Ctx.First'Old - and Seq_Ctx.Last = Seq_Ctx.Last'Old - and Field_First (Ctx, F_AV_Enumeration_Vector) = Field_First (Ctx, F_AV_Enumeration_Vector)'Old - and Field_Size (Ctx, F_AV_Enumeration_Vector) = Field_Size (Ctx, F_AV_Enumeration_Vector)'Old - and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old - and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old - and Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old - and Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old, - Depends => - (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Length => - Valid (Val.Length_Value), - when F_Modular_Vector | F_Range_Vector | F_Enumeration_Vector | F_AV_Enumeration_Vector => - True, - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then ((if - Structural_Valid (Cursors (F_Modular_Vector)) - then - (Valid (Cursors (F_Length)) - and then Cursors (F_Modular_Vector).Predecessor = F_Length)) - and then (if - Structural_Valid (Cursors (F_Range_Vector)) - then - (Structural_Valid (Cursors (F_Modular_Vector)) - and then Cursors (F_Range_Vector).Predecessor = F_Modular_Vector)) - and then (if - Structural_Valid (Cursors (F_Enumeration_Vector)) - then - (Structural_Valid (Cursors (F_Range_Vector)) - and then Cursors (F_Enumeration_Vector).Predecessor = F_Range_Vector)) - and then (if - Structural_Valid (Cursors (F_AV_Enumeration_Vector)) - then - (Structural_Valid (Cursors (F_Enumeration_Vector)) - and then Cursors (F_AV_Enumeration_Vector).Predecessor = F_Enumeration_Vector))) - and then ((if - Invalid (Cursors (F_Length)) - then - Invalid (Cursors (F_Modular_Vector))) - and then (if - Invalid (Cursors (F_Modular_Vector)) - then - Invalid (Cursors (F_Range_Vector))) - and then (if - Invalid (Cursors (F_Range_Vector)) - then - Invalid (Cursors (F_Enumeration_Vector))) - and then (if - Invalid (Cursors (F_Enumeration_Vector)) - then - Invalid (Cursors (F_AV_Enumeration_Vector)))) - and then (if - Structural_Valid (Cursors (F_Length)) - then - Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Cursors (F_Length).Predecessor = F_Initial - and then Cursors (F_Length).First = First - and then (if - Structural_Valid (Cursors (F_Modular_Vector)) - then - Cursors (F_Modular_Vector).Last - Cursors (F_Modular_Vector).First + 1 = Types.Bit_Length (Cursors (F_Length).Value.Length_Value) * 8 - and then Cursors (F_Modular_Vector).Predecessor = F_Length - and then Cursors (F_Modular_Vector).First = Cursors (F_Length).Last + 1 - and then (if - Structural_Valid (Cursors (F_Range_Vector)) - then - Cursors (F_Range_Vector).Last - Cursors (F_Range_Vector).First + 1 = 16 - and then Cursors (F_Range_Vector).Predecessor = F_Modular_Vector - and then Cursors (F_Range_Vector).First = Cursors (F_Modular_Vector).Last + 1 - and then (if - Structural_Valid (Cursors (F_Enumeration_Vector)) - then - Cursors (F_Enumeration_Vector).Last - Cursors (F_Enumeration_Vector).First + 1 = 16 - and then Cursors (F_Enumeration_Vector).Predecessor = F_Range_Vector - and then Cursors (F_Enumeration_Vector).First = Cursors (F_Range_Vector).Last + 1 - and then (if - Structural_Valid (Cursors (F_AV_Enumeration_Vector)) - then - Cursors (F_AV_Enumeration_Vector).Last - Cursors (F_AV_Enumeration_Vector).First + 1 = 16 - and then Cursors (F_AV_Enumeration_Vector).Predecessor = F_Enumeration_Vector - and then Cursors (F_AV_Enumeration_Vector).First = Cursors (F_Enumeration_Vector).Last + 1)))))); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Length) - and then Field_First (Ctx, F_Length) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Length) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Length) - and then Invalid (Ctx, F_Modular_Vector) - and then Invalid (Ctx, F_Range_Vector) - and then Invalid (Ctx, F_Enumeration_Vector) - and then Invalid (Ctx, F_AV_Enumeration_Vector)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Length => - True, - when others => - False), - when F_Length => - (case Fld is - when F_Modular_Vector => - True, - when others => - False), - when F_Modular_Vector => - (case Fld is - when F_Range_Vector => - True, - when others => - False), - when F_Range_Vector => - (case Fld is - when F_Enumeration_Vector => - True, - when others => - False), - when F_Enumeration_Vector => - (case Fld is - when F_AV_Enumeration_Vector => - True, - when others => - False), - when F_AV_Enumeration_Vector | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Initial | F_Length | F_Modular_Vector | F_Range_Vector | F_Enumeration_Vector | F_AV_Enumeration_Vector => - True, - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Length => - RFLX.Sequence.Length'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Length => - (case Fld is - when F_Modular_Vector => - Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, - when others => - Types.Unreachable_Bit_Length), - when F_Modular_Vector => - (case Fld is - when F_Range_Vector => - 16, - when others => - Types.Unreachable_Bit_Length), - when F_Range_Vector => - (case Fld is - when F_Enumeration_Vector => - 16, - when others => - Types.Unreachable_Bit_Length), - when F_Enumeration_Vector => - (case Fld is - when F_AV_Enumeration_Vector => - 16, - when others => - Types.Unreachable_Bit_Length), - when F_AV_Enumeration_Vector | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Length => - Ctx.First, - when F_Modular_Vector => - (if - Ctx.Cursors (Fld).Predecessor = F_Length - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Range_Vector => - (if - Ctx.Cursors (Fld).Predecessor = F_Modular_Vector - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Enumeration_Vector => - (if - Ctx.Cursors (Fld).Predecessor = F_Range_Vector - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_AV_Enumeration_Vector => - (if - Ctx.Cursors (Fld).Predecessor = F_Enumeration_Vector - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length))); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Length => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_Modular_Vector => - (Valid (Ctx.Cursors (F_Length)) - and Ctx.Cursors (Fld).Predecessor = F_Length), - when F_Range_Vector => - (Structural_Valid (Ctx.Cursors (F_Modular_Vector)) - and Ctx.Cursors (Fld).Predecessor = F_Modular_Vector), - when F_Enumeration_Vector => - (Structural_Valid (Ctx.Cursors (F_Range_Vector)) - and Ctx.Cursors (Fld).Predecessor = F_Range_Vector), - when F_AV_Enumeration_Vector => - (Structural_Valid (Ctx.Cursors (F_Enumeration_Vector)) - and Ctx.Cursors (Fld).Predecessor = F_Enumeration_Vector), - when F_Final => - (Structural_Valid (Ctx.Cursors (F_AV_Enumeration_Vector)) - and Ctx.Cursors (Fld).Predecessor = F_AV_Enumeration_Vector))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Length) - and then Structural_Valid (Ctx, F_Modular_Vector) - and then Structural_Valid (Ctx, F_Range_Vector) - and then Structural_Valid (Ctx, F_Enumeration_Vector) - and then Structural_Valid (Ctx, F_AV_Enumeration_Vector)); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Length) - and then Valid (Ctx, F_Modular_Vector) - and then Valid (Ctx, F_Range_Vector) - and then Valid (Ctx, F_Enumeration_Vector) - and then Valid (Ctx, F_AV_Enumeration_Vector)); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Length) - or Incomplete (Ctx, F_Modular_Vector) - or Incomplete (Ctx, F_Range_Vector) - or Incomplete (Ctx, F_Enumeration_Vector) - or Incomplete (Ctx, F_AV_Enumeration_Vector)); - - function Get_Length (Ctx : Context) return RFLX.Sequence.Length is - (To_Actual (Ctx.Cursors (F_Length).Value.Length_Value)); - - function Complete_Modular_Vector (Ctx : Context; Seq_Ctx : Modular_Vector_Sequence.Context) return Boolean is - (Modular_Vector_Sequence.Valid (Seq_Ctx) - and Modular_Vector_Sequence.Size (Seq_Ctx) = Field_Size (Ctx, F_Modular_Vector)); - - function Complete_Range_Vector (Ctx : Context; Seq_Ctx : Range_Vector_Sequence.Context) return Boolean is - (Range_Vector_Sequence.Valid (Seq_Ctx) - and Range_Vector_Sequence.Size (Seq_Ctx) = Field_Size (Ctx, F_Range_Vector)); - - function Complete_Enumeration_Vector (Ctx : Context; Seq_Ctx : Enumeration_Vector_Sequence.Context) return Boolean is - (Enumeration_Vector_Sequence.Valid (Seq_Ctx) - and Enumeration_Vector_Sequence.Size (Seq_Ctx) = Field_Size (Ctx, F_Enumeration_Vector)); - - function Complete_AV_Enumeration_Vector (Ctx : Context; Seq_Ctx : AV_Enumeration_Vector_Sequence.Context) return Boolean is - (AV_Enumeration_Vector_Sequence.Valid (Seq_Ctx) - and AV_Enumeration_Vector_Sequence.Size (Seq_Ctx) = Field_Size (Ctx, F_AV_Enumeration_Vector)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.Sequence.Generic_Message; diff --git a/tests/spark/generated/rflx-sequence-generic_messages_message.ads b/tests/spark/generated/rflx-sequence-generic_messages_message.ads deleted file mode 100644 index f190cd8cc..000000000 --- a/tests/spark/generated/rflx-sequence-generic_messages_message.ads +++ /dev/null @@ -1,646 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; -with RFLX.RFLX_Message_Sequence; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); - with package Inner_Messages_Sequence is new RFLX.RFLX_Message_Sequence (Types, others => <>); -package RFLX.Sequence.Generic_Messages_Message with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes, Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Length, F_Messages, F_Final); - - subtype Field is Virtual_Field range F_Length .. F_Messages; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Messages | F_Final => - null; - when F_Length => - Length_Value : RFLX.Sequence.Length; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean with - Pre => - Has_Buffer (Ctx) - and Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - function Get_Length (Ctx : Context) return RFLX.Sequence.Length with - Pre => - Valid (Ctx, F_Length); - - pragma Warnings (On, "precondition is always False"); - - generic - with procedure Process_Messages (Messages : Types.Bytes); - procedure Get_Messages (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Messages); - - procedure Set_Length (Ctx : in out Context; Val : RFLX.Sequence.Length) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Length) - and then Field_Condition (Ctx, (F_Length, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Length) >= Field_Size (Ctx, F_Length), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Length) - and Get_Length (Ctx) = Val - and Invalid (Ctx, F_Messages) - and (Predecessor (Ctx, F_Messages) = F_Length - and Valid_Next (Ctx, F_Messages)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Length) = Predecessor (Ctx, F_Length)'Old - and Valid_Next (Ctx, F_Length) = Valid_Next (Ctx, F_Length)'Old; - - procedure Set_Messages_Empty (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Messages) - and then Field_Condition (Ctx, (Fld => F_Messages)) - and then Available_Space (Ctx, F_Messages) >= Field_Size (Ctx, F_Messages) - and then Field_First (Ctx, F_Messages) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Messages) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Messages) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Messages) = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Messages) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Messages)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Messages) = Predecessor (Ctx, F_Messages)'Old - and Valid_Next (Ctx, F_Messages) = Valid_Next (Ctx, F_Messages)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old; - - procedure Set_Messages (Ctx : in out Context; Seq_Ctx : Inner_Messages_Sequence.Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Messages) - and then Field_Condition (Ctx, (Fld => F_Messages)) - and then Available_Space (Ctx, F_Messages) >= Field_Size (Ctx, F_Messages) - and then Field_First (Ctx, F_Messages) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Messages) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Messages) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Messages) = Inner_Messages_Sequence.Size (Seq_Ctx) - and then Inner_Messages_Sequence.Has_Buffer (Seq_Ctx) - and then Inner_Messages_Sequence.Valid (Seq_Ctx), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Messages) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Messages)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Messages) = Predecessor (Ctx, F_Messages)'Old - and Valid_Next (Ctx, F_Messages) = Valid_Next (Ctx, F_Messages)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old - and (if - Field_Size (Ctx, F_Messages) > 0 - then - Present (Ctx, F_Messages)); - - procedure Switch_To_Messages (Ctx : in out Context; Seq_Ctx : out Inner_Messages_Sequence.Context) with - Pre => - not Ctx'Constrained - and then not Seq_Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Messages) - and then Field_Size (Ctx, F_Messages) > 0 - and then Field_First (Ctx, F_Messages) mod Types.Byte'Size = 1 - and then Field_Condition (Ctx, (Fld => F_Messages)) - and then Available_Space (Ctx, F_Messages) >= Field_Size (Ctx, F_Messages), - Post => - not Has_Buffer (Ctx) - and Inner_Messages_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Seq_Ctx.Buffer_First - and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and Seq_Ctx.First = Field_First (Ctx, F_Messages) - and Seq_Ctx.Last = Field_Last (Ctx, F_Messages) - and Inner_Messages_Sequence.Valid (Seq_Ctx) - and Inner_Messages_Sequence.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 - and Present (Ctx, F_Messages) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Messages) = Predecessor (Ctx, F_Messages)'Old - and Path_Condition (Ctx, F_Messages) = Path_Condition (Ctx, F_Messages)'Old - and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old, - Contract_Cases => - (Structural_Valid (Ctx, F_Messages) => - True, - others => - True); - - function Complete_Messages (Ctx : Context; Seq_Ctx : Inner_Messages_Sequence.Context) return Boolean with - Pre => - Valid_Next (Ctx, F_Messages); - - procedure Update_Messages (Ctx : in out Context; Seq_Ctx : in out Inner_Messages_Sequence.Context) with - Pre => - Present (Ctx, F_Messages) - and then Complete_Messages (Ctx, Seq_Ctx) - and then not Has_Buffer (Ctx) - and then Inner_Messages_Sequence.Has_Buffer (Seq_Ctx) - and then Ctx.Buffer_First = Seq_Ctx.Buffer_First - and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and then Seq_Ctx.First = Field_First (Ctx, F_Messages) - and then Seq_Ctx.Last = Field_Last (Ctx, F_Messages), - Post => - Present (Ctx, F_Messages) - and Has_Buffer (Ctx) - and not Inner_Messages_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Seq_Ctx.First = Seq_Ctx.First'Old - and Seq_Ctx.Last = Seq_Ctx.Last'Old - and Field_First (Ctx, F_Messages) = Field_First (Ctx, F_Messages)'Old - and Field_Size (Ctx, F_Messages) = Field_Size (Ctx, F_Messages)'Old - and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old, - Depends => - (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Length => - Valid (Val.Length_Value), - when F_Messages => - True, - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then ((if - Structural_Valid (Cursors (F_Messages)) - then - (Valid (Cursors (F_Length)) - and then Cursors (F_Messages).Predecessor = F_Length))) - and then ((if - Invalid (Cursors (F_Length)) - then - Invalid (Cursors (F_Messages)))) - and then (if - Structural_Valid (Cursors (F_Length)) - then - Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size - and then Cursors (F_Length).Predecessor = F_Initial - and then Cursors (F_Length).First = First - and then (if - Structural_Valid (Cursors (F_Messages)) - then - Cursors (F_Messages).Last - Cursors (F_Messages).First + 1 = Types.Bit_Length (Cursors (F_Length).Value.Length_Value) * 8 - and then Cursors (F_Messages).Predecessor = F_Length - and then Cursors (F_Messages).First = Cursors (F_Length).Last + 1))); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Length) - and then Field_First (Ctx, F_Length) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Length) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Length) - and then Invalid (Ctx, F_Messages)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Length => - True, - when others => - False), - when F_Length => - (case Fld is - when F_Messages => - True, - when others => - False), - when F_Messages | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Initial | F_Length | F_Messages => - True, - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Length => - RFLX.Sequence.Length'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Length => - (case Fld is - when F_Messages => - Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, - when others => - Types.Unreachable_Bit_Length), - when F_Messages | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Length => - Ctx.First, - when F_Messages => - (if - Ctx.Cursors (Fld).Predecessor = F_Length - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length))); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Length => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_Messages => - (Valid (Ctx.Cursors (F_Length)) - and Ctx.Cursors (Fld).Predecessor = F_Length), - when F_Final => - (Structural_Valid (Ctx.Cursors (F_Messages)) - and Ctx.Cursors (Fld).Predecessor = F_Messages))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Length) - and then Structural_Valid (Ctx, F_Messages)); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Length) - and then Valid (Ctx, F_Messages)); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Length) - or Incomplete (Ctx, F_Messages)); - - function Get_Length (Ctx : Context) return RFLX.Sequence.Length is - (To_Actual (Ctx.Cursors (F_Length).Value.Length_Value)); - - function Complete_Messages (Ctx : Context; Seq_Ctx : Inner_Messages_Sequence.Context) return Boolean is - (Inner_Messages_Sequence.Valid (Seq_Ctx) - and Inner_Messages_Sequence.Size (Seq_Ctx) = Field_Size (Ctx, F_Messages)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.Sequence.Generic_Messages_Message; diff --git a/tests/spark/generated/rflx-sequence-generic_sequence_size_defined_by_message_size.ads b/tests/spark/generated/rflx-sequence-generic_sequence_size_defined_by_message_size.ads deleted file mode 100644 index d9c8203c6..000000000 --- a/tests/spark/generated/rflx-sequence-generic_sequence_size_defined_by_message_size.ads +++ /dev/null @@ -1,646 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; -with RFLX.RFLX_Scalar_Sequence; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); - with package Modular_Vector_Sequence is new RFLX.RFLX_Scalar_Sequence (Types, others => <>); -package RFLX.Sequence.Generic_Sequence_Size_Defined_By_Message_Size with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes, Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Header, F_Vector, F_Final); - - subtype Field is Virtual_Field range F_Header .. F_Vector; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Vector | F_Final => - null; - when F_Header => - Header_Value : RFLX.Sequence.Enumeration_Base; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean with - Pre => - Has_Buffer (Ctx) - and Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - function Get_Header (Ctx : Context) return RFLX.Sequence.Enumeration with - Pre => - Valid (Ctx, F_Header); - - pragma Warnings (On, "precondition is always False"); - - generic - with procedure Process_Vector (Vector : Types.Bytes); - procedure Get_Vector (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Vector); - - procedure Set_Header (Ctx : in out Context; Val : RFLX.Sequence.Enumeration) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Header) - and then Field_Condition (Ctx, (F_Header, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Header) >= Field_Size (Ctx, F_Header), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Header) - and Get_Header (Ctx) = Val - and Invalid (Ctx, F_Vector) - and (Predecessor (Ctx, F_Vector) = F_Header - and Valid_Next (Ctx, F_Vector)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Header) = Predecessor (Ctx, F_Header)'Old - and Valid_Next (Ctx, F_Header) = Valid_Next (Ctx, F_Header)'Old; - - procedure Set_Vector_Empty (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Vector) - and then Field_Condition (Ctx, (Fld => F_Vector)) - and then Available_Space (Ctx, F_Vector) >= Field_Size (Ctx, F_Vector) - and then Field_First (Ctx, F_Vector) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Vector) = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Vector) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Vector)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Vector) = Predecessor (Ctx, F_Vector)'Old - and Valid_Next (Ctx, F_Vector) = Valid_Next (Ctx, F_Vector)'Old - and Get_Header (Ctx) = Get_Header (Ctx)'Old; - - procedure Set_Vector (Ctx : in out Context; Seq_Ctx : Modular_Vector_Sequence.Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Vector) - and then Field_Condition (Ctx, (Fld => F_Vector)) - and then Available_Space (Ctx, F_Vector) >= Field_Size (Ctx, F_Vector) - and then Field_First (Ctx, F_Vector) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Vector) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Vector) = Modular_Vector_Sequence.Size (Seq_Ctx) - and then Modular_Vector_Sequence.Has_Buffer (Seq_Ctx) - and then Modular_Vector_Sequence.Valid (Seq_Ctx), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Vector) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Vector)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Vector) = Predecessor (Ctx, F_Vector)'Old - and Valid_Next (Ctx, F_Vector) = Valid_Next (Ctx, F_Vector)'Old - and Get_Header (Ctx) = Get_Header (Ctx)'Old - and (if - Field_Size (Ctx, F_Vector) > 0 - then - Present (Ctx, F_Vector)); - - procedure Switch_To_Vector (Ctx : in out Context; Seq_Ctx : out Modular_Vector_Sequence.Context) with - Pre => - not Ctx'Constrained - and then not Seq_Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Vector) - and then Field_Size (Ctx, F_Vector) > 0 - and then Field_First (Ctx, F_Vector) mod Types.Byte'Size = 1 - and then Field_Condition (Ctx, (Fld => F_Vector)) - and then Available_Space (Ctx, F_Vector) >= Field_Size (Ctx, F_Vector), - Post => - not Has_Buffer (Ctx) - and Modular_Vector_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Seq_Ctx.Buffer_First - and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and Seq_Ctx.First = Field_First (Ctx, F_Vector) - and Seq_Ctx.Last = Field_Last (Ctx, F_Vector) - and Modular_Vector_Sequence.Valid (Seq_Ctx) - and Modular_Vector_Sequence.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 - and Present (Ctx, F_Vector) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Vector) = Predecessor (Ctx, F_Vector)'Old - and Path_Condition (Ctx, F_Vector) = Path_Condition (Ctx, F_Vector)'Old - and Context_Cursor (Ctx, F_Header) = Context_Cursor (Ctx, F_Header)'Old, - Contract_Cases => - (Structural_Valid (Ctx, F_Vector) => - True, - others => - True); - - function Complete_Vector (Ctx : Context; Seq_Ctx : Modular_Vector_Sequence.Context) return Boolean with - Pre => - Valid_Next (Ctx, F_Vector); - - procedure Update_Vector (Ctx : in out Context; Seq_Ctx : in out Modular_Vector_Sequence.Context) with - Pre => - Present (Ctx, F_Vector) - and then Complete_Vector (Ctx, Seq_Ctx) - and then not Has_Buffer (Ctx) - and then Modular_Vector_Sequence.Has_Buffer (Seq_Ctx) - and then Ctx.Buffer_First = Seq_Ctx.Buffer_First - and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last - and then Seq_Ctx.First = Field_First (Ctx, F_Vector) - and then Seq_Ctx.Last = Field_Last (Ctx, F_Vector), - Post => - Present (Ctx, F_Vector) - and Has_Buffer (Ctx) - and not Modular_Vector_Sequence.Has_Buffer (Seq_Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Seq_Ctx.First = Seq_Ctx.First'Old - and Seq_Ctx.Last = Seq_Ctx.Last'Old - and Field_First (Ctx, F_Vector) = Field_First (Ctx, F_Vector)'Old - and Field_Size (Ctx, F_Vector) = Field_Size (Ctx, F_Vector)'Old - and Context_Cursor (Ctx, F_Header) = Context_Cursor (Ctx, F_Header)'Old, - Depends => - (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Header => - Valid (Val.Header_Value), - when F_Vector => - True, - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then ((if - Structural_Valid (Cursors (F_Vector)) - then - (Valid (Cursors (F_Header)) - and then Cursors (F_Vector).Predecessor = F_Header))) - and then ((if - Invalid (Cursors (F_Header)) - then - Invalid (Cursors (F_Vector)))) - and then (if - Structural_Valid (Cursors (F_Header)) - then - Cursors (F_Header).Last - Cursors (F_Header).First + 1 = RFLX.Sequence.Enumeration_Base'Size - and then Cursors (F_Header).Predecessor = F_Initial - and then Cursors (F_Header).First = First - and then (if - Structural_Valid (Cursors (F_Vector)) - then - Cursors (F_Vector).Last - Cursors (F_Vector).First + 1 = Types.Bit_Length (Last - First + 1) - Types.Bit_Length (Cursors (F_Header).Last - Cursors (F_Header).First + 1) - and then Cursors (F_Vector).Predecessor = F_Header - and then Cursors (F_Vector).First = Cursors (F_Header).Last + 1))); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Header) - and then Field_First (Ctx, F_Header) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Header) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Header) - and then Invalid (Ctx, F_Vector)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Header => - True, - when others => - False), - when F_Header => - (case Fld is - when F_Vector => - True, - when others => - False), - when F_Vector | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Initial | F_Header | F_Vector => - True, - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Header => - RFLX.Sequence.Enumeration_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Header => - (case Fld is - when F_Vector => - Types.Bit_Length (Ctx.Last - Ctx.First + 1) - Types.Bit_Length (Ctx.Cursors (F_Header).Last - Ctx.Cursors (F_Header).First + 1), - when others => - Types.Unreachable_Bit_Length), - when F_Vector | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Header => - Ctx.First, - when F_Vector => - (if - Ctx.Cursors (Fld).Predecessor = F_Header - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length))); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Header => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_Vector => - (Valid (Ctx.Cursors (F_Header)) - and Ctx.Cursors (Fld).Predecessor = F_Header), - when F_Final => - (Structural_Valid (Ctx.Cursors (F_Vector)) - and Ctx.Cursors (Fld).Predecessor = F_Vector))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Header) - and then Structural_Valid (Ctx, F_Vector)); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Header) - and then Valid (Ctx, F_Vector)); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Header) - or Incomplete (Ctx, F_Vector)); - - function Get_Header (Ctx : Context) return RFLX.Sequence.Enumeration is - (To_Actual (Ctx.Cursors (F_Header).Value.Header_Value)); - - function Complete_Vector (Ctx : Context; Seq_Ctx : Modular_Vector_Sequence.Context) return Boolean is - (Modular_Vector_Sequence.Valid (Seq_Ctx) - and Modular_Vector_Sequence.Size (Seq_Ctx) = Field_Size (Ctx, F_Vector)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.Sequence.Generic_Sequence_Size_Defined_By_Message_Size; diff --git a/tests/spark/generated/rflx-sequence-generic_inner_message.adb b/tests/spark/generated/rflx-sequence-inner_message.adb similarity index 70% rename from tests/spark/generated/rflx-sequence-generic_inner_message.adb rename to tests/spark/generated/rflx-sequence-inner_message.adb index 5541af035..f5e2bf7bc 100644 --- a/tests/spark/generated/rflx-sequence-generic_inner_message.adb +++ b/tests/spark/generated/rflx-sequence-inner_message.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.Sequence.Generic_Inner_Message with +package body RFLX.Sequence.Inner_Message with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Length => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -83,8 +83,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -92,11 +91,11 @@ is Has_Buffer (Ctx) and Valid_Next (Ctx, Fld); - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean is + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Payload => - Ctx.Buffer.all (Types.Byte_Index (Field_First (Ctx, Fld)) .. Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -123,9 +122,9 @@ is Ctx.Cursors (F_Length) = Ctx.Cursors (F_Length)'Old and Invalid (Ctx, F_Payload)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -158,15 +157,15 @@ is Post => Get_Field_Value'Result.Fld = Fld is - First : constant Types.Bit_Index := Field_First (Ctx, Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - function Extract is new Types.Extract (RFLX.Sequence.Length); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.Sequence.Length); begin return ((case Fld is when F_Length => @@ -193,7 +192,7 @@ is pragma Assert ((if Fld = F_Payload then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); @@ -221,13 +220,13 @@ is end Verify_Message; procedure Get_Payload (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); begin Process_Payload (Ctx.Buffer.all (First .. Last)); end Get_Payload; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out Types.Bit_Index) with + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -257,15 +256,15 @@ is and Ctx.Last = Ctx.Last'Old and Ctx.Cursors = Ctx.Cursors'Old is - First : constant Types.Bit_Index := Field_First (Ctx, Val.Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Val.Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - procedure Insert is new Types.Insert (RFLX.Sequence.Length); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.Sequence.Length); begin Fst := First; Lst := Last; @@ -281,7 +280,7 @@ is procedure Set_Length (Ctx : in out Context; Val : RFLX.Sequence.Length) is Field_Value : constant Field_Dependent_Value := (F_Length, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Length); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -291,8 +290,8 @@ is end Set_Length; procedure Set_Payload_Empty (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; @@ -307,9 +306,9 @@ is and then Valid_Next (Ctx, F_Payload) and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0, + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0, Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -322,8 +321,8 @@ is and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old and Get_Length (Ctx) = Get_Length (Ctx)'Old is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; @@ -336,28 +335,28 @@ is Initialize_Payload_Private (Ctx); end Initialize_Payload; - procedure Set_Payload (Ctx : in out Context; Value : Types.Bytes) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; end Set_Payload; procedure Generic_Set_Payload (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Generic_Set_Payload; -end RFLX.Sequence.Generic_Inner_Message; +end RFLX.Sequence.Inner_Message; diff --git a/tests/spark/generated/rflx-sequence-inner_message.ads b/tests/spark/generated/rflx-sequence-inner_message.ads index a8518087b..b6746c891 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.ads +++ b/tests/spark/generated/rflx-sequence-inner_message.ads @@ -1,7 +1,631 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.Sequence.Generic_Inner_Message; -package RFLX.Sequence.Inner_Message is new RFLX.Sequence.Generic_Inner_Message (RFLX.RFLX_Types); +package RFLX.Sequence.Inner_Message with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Length, F_Payload, F_Final); + + subtype Field is Virtual_Field range F_Length .. F_Payload; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Payload | F_Final => + null; + when F_Length => + Length_Value : RFLX.Sequence.Length; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Length (Ctx : Context) return RFLX.Sequence.Length with + Pre => + Valid (Ctx, F_Length); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Payload (Payload : RFLX_Types.Bytes); + procedure Get_Payload (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Payload); + + procedure Set_Length (Ctx : in out Context; Val : RFLX.Sequence.Length) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Length) + and then Field_Condition (Ctx, (F_Length, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Length) >= Field_Size (Ctx, F_Length), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Length) + and Get_Length (Ctx) = Val + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Payload) = F_Length + and Valid_Next (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Length) = Predecessor (Ctx, F_Length)'Old + and Valid_Next (Ctx, F_Length) = Valid_Next (Ctx, F_Length)'Old; + + procedure Set_Payload_Empty (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + procedure Initialize_Payload (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Payload)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + generic + with procedure Process_Payload (Payload : out RFLX_Types.Bytes); + with function Valid_Length (Length : RFLX_Types.Length) return Boolean; + procedure Generic_Set_Payload (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Valid_Length (RFLX_Types.Length (Field_Size (Ctx, F_Payload) / RFLX_Types.Byte'Size)), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Length => + Valid (Val.Length_Value), + when F_Payload => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_Payload)) + then + (Valid (Cursors (F_Length)) + and then Cursors (F_Payload).Predecessor = F_Length))) + and then ((if + Invalid (Cursors (F_Length)) + then + Invalid (Cursors (F_Payload)))) + and then (if + Structural_Valid (Cursors (F_Length)) + then + Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size + and then Cursors (F_Length).Predecessor = F_Initial + and then Cursors (F_Length).First = First + and then (if + Structural_Valid (Cursors (F_Payload)) + then + Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = RFLX_Types.Bit_Length (Cursors (F_Length).Value.Length_Value) * 8 + and then Cursors (F_Payload).Predecessor = F_Length + and then Cursors (F_Payload).First = Cursors (F_Length).Last + 1))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Length) + and then Field_First (Ctx, F_Length) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Length) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Length) + and then Invalid (Ctx, F_Payload)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Length => + True, + when others => + False), + when F_Length => + (case Fld is + when F_Payload => + True, + when others => + False), + when F_Payload | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial | F_Length | F_Payload => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Length => + RFLX.Sequence.Length'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Length => + (case Fld is + when F_Payload => + RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Payload | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Length => + Ctx.First, + when F_Payload => + (if + Ctx.Cursors (Fld).Predecessor = F_Length + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Length => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Payload => + (Valid (Ctx.Cursors (F_Length)) + and Ctx.Cursors (Fld).Predecessor = F_Length), + when F_Final => + (Structural_Valid (Ctx.Cursors (F_Payload)) + and Ctx.Cursors (Fld).Predecessor = F_Payload))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Length) + and then Structural_Valid (Ctx, F_Payload)); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Length) + and then Valid (Ctx, F_Payload)); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Length) + or Incomplete (Ctx, F_Payload)); + + function Get_Length (Ctx : Context) return RFLX.Sequence.Length is + (To_Actual (Ctx.Cursors (F_Length).Value.Length_Value)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.Sequence.Inner_Message; diff --git a/tests/spark/generated/rflx-sequence-inner_messages.ads b/tests/spark/generated/rflx-sequence-inner_messages.ads index 971d252f7..e4115208a 100644 --- a/tests/spark/generated/rflx-sequence-inner_messages.ads +++ b/tests/spark/generated/rflx-sequence-inner_messages.ads @@ -1,8 +1,10 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); pragma SPARK_Mode; -with RFLX.RFLX_Types; with RFLX.RFLX_Message_Sequence; with RFLX.Sequence.Inner_Message; +pragma Warnings (Off, "unit ""*RFLX_Types"" is not referenced"); +with RFLX.RFLX_Types; +pragma Warnings (On, "unit ""*RFLX_Types"" is not referenced"); -package RFLX.Sequence.Inner_Messages is new RFLX.RFLX_Message_Sequence (RFLX.RFLX_Types, RFLX.Sequence.Inner_Message.Context, RFLX.Sequence.Inner_Message.Initialize, RFLX.Sequence.Inner_Message.Take_Buffer, RFLX.Sequence.Inner_Message.Has_Buffer, RFLX.Sequence.Inner_Message.Message_Last, RFLX.Sequence.Inner_Message.Initialized, RFLX.Sequence.Inner_Message.Structural_Valid_Message); +package RFLX.Sequence.Inner_Messages is new RFLX.RFLX_Message_Sequence (RFLX.Sequence.Inner_Message.Context, RFLX.Sequence.Inner_Message.Initialize, RFLX.Sequence.Inner_Message.Take_Buffer, RFLX.Sequence.Inner_Message.Has_Buffer, RFLX.Sequence.Inner_Message.Message_Last, RFLX.Sequence.Inner_Message.Initialized, RFLX.Sequence.Inner_Message.Structural_Valid_Message); diff --git a/tests/spark/generated/rflx-sequence-generic_message.adb b/tests/spark/generated/rflx-sequence-message.adb similarity index 72% rename from tests/spark/generated/rflx-sequence-generic_message.adb rename to tests/spark/generated/rflx-sequence-message.adb index adafc82b0..2f1529eaf 100644 --- a/tests/spark/generated/rflx-sequence-generic_message.adb +++ b/tests/spark/generated/rflx-sequence-message.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.Sequence.Generic_Message with +package body RFLX.Sequence.Message with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Length => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -95,8 +95,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -104,11 +103,11 @@ is Has_Buffer (Ctx) and Valid_Next (Ctx, Fld); - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean is + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Modular_Vector | F_Range_Vector | F_Enumeration_Vector | F_AV_Enumeration_Vector => - Ctx.Buffer.all (Types.Byte_Index (Field_First (Ctx, Fld)) .. Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -159,9 +158,9 @@ is and Ctx.Cursors (F_Enumeration_Vector) = Ctx.Cursors (F_Enumeration_Vector)'Old and Invalid (Ctx, F_AV_Enumeration_Vector)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -215,15 +214,15 @@ is Post => Get_Field_Value'Result.Fld = Fld is - First : constant Types.Bit_Index := Field_First (Ctx, Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - function Extract is new Types.Extract (RFLX.Sequence.Length); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.Sequence.Length); begin return ((case Fld is when F_Length => @@ -256,7 +255,7 @@ is pragma Assert ((if Fld = F_AV_Enumeration_Vector then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); @@ -293,34 +292,34 @@ is end Verify_Message; procedure Get_Modular_Vector (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).Last); begin Process_Modular_Vector (Ctx.Buffer.all (First .. Last)); end Get_Modular_Vector; procedure Get_Range_Vector (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Range_Vector).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Range_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Range_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Range_Vector).Last); begin Process_Range_Vector (Ctx.Buffer.all (First .. Last)); end Get_Range_Vector; procedure Get_Enumeration_Vector (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).Last); begin Process_Enumeration_Vector (Ctx.Buffer.all (First .. Last)); end Get_Enumeration_Vector; procedure Get_AV_Enumeration_Vector (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).Last); begin Process_AV_Enumeration_Vector (Ctx.Buffer.all (First .. Last)); end Get_AV_Enumeration_Vector; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out Types.Bit_Index) with + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -350,15 +349,15 @@ is and Ctx.Last = Ctx.Last'Old and Ctx.Cursors = Ctx.Cursors'Old is - First : constant Types.Bit_Index := Field_First (Ctx, Val.Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Val.Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - procedure Insert is new Types.Insert (RFLX.Sequence.Length); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.Sequence.Length); begin Fst := First; Lst := Last; @@ -374,7 +373,7 @@ is procedure Set_Length (Ctx : in out Context; Val : RFLX.Sequence.Length) is Field_Value : constant Field_Dependent_Value := (F_Length, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Length); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -384,8 +383,8 @@ is end Set_Length; procedure Set_Modular_Vector_Empty (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Modular_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Modular_Vector); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Modular_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Modular_Vector); begin Reset_Dependent_Fields (Ctx, F_Modular_Vector); Ctx.Message_Last := ((Last + 7) / 8) * 8; @@ -393,70 +392,70 @@ is Ctx.Cursors (Successor (Ctx, F_Modular_Vector)) := (State => S_Invalid, Predecessor => F_Modular_Vector); end Set_Modular_Vector_Empty; - procedure Set_Modular_Vector (Ctx : in out Context; Seq_Ctx : Modular_Vector_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Modular_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Modular_Vector); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Modular_Vector (Ctx : in out Context; Seq_Ctx : Sequence.Modular_Vector.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Modular_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Modular_Vector); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Modular_Vector); Ctx.Message_Last := ((Last + 7) / 8) * 8; Ctx.Cursors (F_Modular_Vector) := (State => S_Valid, First => First, Last => Last, Value => (Fld => F_Modular_Vector), Predecessor => Ctx.Cursors (F_Modular_Vector).Predecessor); Ctx.Cursors (Successor (Ctx, F_Modular_Vector)) := (State => S_Invalid, Predecessor => F_Modular_Vector); - Modular_Vector_Sequence.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); + Sequence.Modular_Vector.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Set_Modular_Vector; - procedure Set_Range_Vector (Ctx : in out Context; Seq_Ctx : Range_Vector_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Range_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Range_Vector); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Range_Vector (Ctx : in out Context; Seq_Ctx : Sequence.Range_Vector.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Range_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Range_Vector); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Range_Vector); Ctx.Message_Last := ((Last + 7) / 8) * 8; Ctx.Cursors (F_Range_Vector) := (State => S_Valid, First => First, Last => Last, Value => (Fld => F_Range_Vector), Predecessor => Ctx.Cursors (F_Range_Vector).Predecessor); Ctx.Cursors (Successor (Ctx, F_Range_Vector)) := (State => S_Invalid, Predecessor => F_Range_Vector); - Range_Vector_Sequence.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); + Sequence.Range_Vector.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Set_Range_Vector; - procedure Set_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : Enumeration_Vector_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Enumeration_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Enumeration_Vector); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : Sequence.Enumeration_Vector.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Enumeration_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Enumeration_Vector); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Enumeration_Vector); Ctx.Message_Last := ((Last + 7) / 8) * 8; Ctx.Cursors (F_Enumeration_Vector) := (State => S_Valid, First => First, Last => Last, Value => (Fld => F_Enumeration_Vector), Predecessor => Ctx.Cursors (F_Enumeration_Vector).Predecessor); Ctx.Cursors (Successor (Ctx, F_Enumeration_Vector)) := (State => S_Invalid, Predecessor => F_Enumeration_Vector); - Enumeration_Vector_Sequence.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); + Sequence.Enumeration_Vector.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Set_Enumeration_Vector; - procedure Set_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : AV_Enumeration_Vector_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_AV_Enumeration_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_AV_Enumeration_Vector); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : Sequence.AV_Enumeration_Vector.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_AV_Enumeration_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_AV_Enumeration_Vector); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_AV_Enumeration_Vector); Ctx.Message_Last := Last; Ctx.Cursors (F_AV_Enumeration_Vector) := (State => S_Valid, First => First, Last => Last, Value => (Fld => F_AV_Enumeration_Vector), Predecessor => Ctx.Cursors (F_AV_Enumeration_Vector).Predecessor); Ctx.Cursors (Successor (Ctx, F_AV_Enumeration_Vector)) := (State => S_Invalid, Predecessor => F_AV_Enumeration_Vector); - AV_Enumeration_Vector_Sequence.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); + Sequence.AV_Enumeration_Vector.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Set_AV_Enumeration_Vector; - procedure Switch_To_Modular_Vector (Ctx : in out Context; Seq_Ctx : out Modular_Vector_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Modular_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Modular_Vector); - Buffer : Types.Bytes_Ptr; + procedure Switch_To_Modular_Vector (Ctx : in out Context; Seq_Ctx : out Sequence.Modular_Vector.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Modular_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Modular_Vector); + Buffer : RFLX_Types.Bytes_Ptr; begin if Invalid (Ctx, F_Modular_Vector) then Reset_Dependent_Fields (Ctx, F_Modular_Vector); @@ -466,14 +465,14 @@ is end if; Take_Buffer (Ctx, Buffer); pragma Warnings (Off, "unused assignment to ""Buffer"""); - Modular_Vector_Sequence.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); + Sequence.Modular_Vector.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); pragma Warnings (On, "unused assignment to ""Buffer"""); end Switch_To_Modular_Vector; - procedure Switch_To_Range_Vector (Ctx : in out Context; Seq_Ctx : out Range_Vector_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Range_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Range_Vector); - Buffer : Types.Bytes_Ptr; + procedure Switch_To_Range_Vector (Ctx : in out Context; Seq_Ctx : out Sequence.Range_Vector.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Range_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Range_Vector); + Buffer : RFLX_Types.Bytes_Ptr; begin if Invalid (Ctx, F_Range_Vector) then Reset_Dependent_Fields (Ctx, F_Range_Vector); @@ -483,14 +482,14 @@ is end if; Take_Buffer (Ctx, Buffer); pragma Warnings (Off, "unused assignment to ""Buffer"""); - Range_Vector_Sequence.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); + Sequence.Range_Vector.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); pragma Warnings (On, "unused assignment to ""Buffer"""); end Switch_To_Range_Vector; - procedure Switch_To_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : out Enumeration_Vector_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Enumeration_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Enumeration_Vector); - Buffer : Types.Bytes_Ptr; + procedure Switch_To_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : out Sequence.Enumeration_Vector.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Enumeration_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Enumeration_Vector); + Buffer : RFLX_Types.Bytes_Ptr; begin if Invalid (Ctx, F_Enumeration_Vector) then Reset_Dependent_Fields (Ctx, F_Enumeration_Vector); @@ -500,14 +499,14 @@ is end if; Take_Buffer (Ctx, Buffer); pragma Warnings (Off, "unused assignment to ""Buffer"""); - Enumeration_Vector_Sequence.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); + Sequence.Enumeration_Vector.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); pragma Warnings (On, "unused assignment to ""Buffer"""); end Switch_To_Enumeration_Vector; - procedure Switch_To_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : out AV_Enumeration_Vector_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_AV_Enumeration_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_AV_Enumeration_Vector); - Buffer : Types.Bytes_Ptr; + procedure Switch_To_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : out Sequence.AV_Enumeration_Vector.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_AV_Enumeration_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_AV_Enumeration_Vector); + Buffer : RFLX_Types.Bytes_Ptr; begin if Invalid (Ctx, F_AV_Enumeration_Vector) then Reset_Dependent_Fields (Ctx, F_AV_Enumeration_Vector); @@ -517,52 +516,52 @@ is end if; Take_Buffer (Ctx, Buffer); pragma Warnings (Off, "unused assignment to ""Buffer"""); - AV_Enumeration_Vector_Sequence.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); + Sequence.AV_Enumeration_Vector.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); pragma Warnings (On, "unused assignment to ""Buffer"""); end Switch_To_AV_Enumeration_Vector; - procedure Update_Modular_Vector (Ctx : in out Context; Seq_Ctx : in out Modular_Vector_Sequence.Context) is - Valid_Sequence : constant Boolean := Modular_Vector_Sequence.Valid (Seq_Ctx); - Buffer : Types.Bytes_Ptr; + procedure Update_Modular_Vector (Ctx : in out Context; Seq_Ctx : in out Sequence.Modular_Vector.Context) is + Valid_Sequence : constant Boolean := Sequence.Modular_Vector.Valid (Seq_Ctx); + Buffer : RFLX_Types.Bytes_Ptr; begin - Modular_Vector_Sequence.Take_Buffer (Seq_Ctx, Buffer); + Sequence.Modular_Vector.Take_Buffer (Seq_Ctx, Buffer); Ctx.Buffer := Buffer; if Valid_Sequence then Ctx.Cursors (F_Modular_Vector) := (State => S_Valid, First => Ctx.Cursors (F_Modular_Vector).First, Last => Ctx.Cursors (F_Modular_Vector).Last, Value => Ctx.Cursors (F_Modular_Vector).Value, Predecessor => Ctx.Cursors (F_Modular_Vector).Predecessor); end if; end Update_Modular_Vector; - procedure Update_Range_Vector (Ctx : in out Context; Seq_Ctx : in out Range_Vector_Sequence.Context) is - Valid_Sequence : constant Boolean := Range_Vector_Sequence.Valid (Seq_Ctx); - Buffer : Types.Bytes_Ptr; + procedure Update_Range_Vector (Ctx : in out Context; Seq_Ctx : in out Sequence.Range_Vector.Context) is + Valid_Sequence : constant Boolean := Sequence.Range_Vector.Valid (Seq_Ctx); + Buffer : RFLX_Types.Bytes_Ptr; begin - Range_Vector_Sequence.Take_Buffer (Seq_Ctx, Buffer); + Sequence.Range_Vector.Take_Buffer (Seq_Ctx, Buffer); Ctx.Buffer := Buffer; if Valid_Sequence then Ctx.Cursors (F_Range_Vector) := (State => S_Valid, First => Ctx.Cursors (F_Range_Vector).First, Last => Ctx.Cursors (F_Range_Vector).Last, Value => Ctx.Cursors (F_Range_Vector).Value, Predecessor => Ctx.Cursors (F_Range_Vector).Predecessor); end if; end Update_Range_Vector; - procedure Update_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : in out Enumeration_Vector_Sequence.Context) is - Valid_Sequence : constant Boolean := Enumeration_Vector_Sequence.Valid (Seq_Ctx); - Buffer : Types.Bytes_Ptr; + procedure Update_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : in out Sequence.Enumeration_Vector.Context) is + Valid_Sequence : constant Boolean := Sequence.Enumeration_Vector.Valid (Seq_Ctx); + Buffer : RFLX_Types.Bytes_Ptr; begin - Enumeration_Vector_Sequence.Take_Buffer (Seq_Ctx, Buffer); + Sequence.Enumeration_Vector.Take_Buffer (Seq_Ctx, Buffer); Ctx.Buffer := Buffer; if Valid_Sequence then Ctx.Cursors (F_Enumeration_Vector) := (State => S_Valid, First => Ctx.Cursors (F_Enumeration_Vector).First, Last => Ctx.Cursors (F_Enumeration_Vector).Last, Value => Ctx.Cursors (F_Enumeration_Vector).Value, Predecessor => Ctx.Cursors (F_Enumeration_Vector).Predecessor); end if; end Update_Enumeration_Vector; - procedure Update_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : in out AV_Enumeration_Vector_Sequence.Context) is - Valid_Sequence : constant Boolean := AV_Enumeration_Vector_Sequence.Valid (Seq_Ctx); - Buffer : Types.Bytes_Ptr; + procedure Update_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : in out Sequence.AV_Enumeration_Vector.Context) is + Valid_Sequence : constant Boolean := Sequence.AV_Enumeration_Vector.Valid (Seq_Ctx); + Buffer : RFLX_Types.Bytes_Ptr; begin - AV_Enumeration_Vector_Sequence.Take_Buffer (Seq_Ctx, Buffer); + Sequence.AV_Enumeration_Vector.Take_Buffer (Seq_Ctx, Buffer); Ctx.Buffer := Buffer; if Valid_Sequence then Ctx.Cursors (F_AV_Enumeration_Vector) := (State => S_Valid, First => Ctx.Cursors (F_AV_Enumeration_Vector).First, Last => Ctx.Cursors (F_AV_Enumeration_Vector).Last, Value => Ctx.Cursors (F_AV_Enumeration_Vector).Value, Predecessor => Ctx.Cursors (F_AV_Enumeration_Vector).Predecessor); end if; end Update_AV_Enumeration_Vector; -end RFLX.Sequence.Generic_Message; +end RFLX.Sequence.Message; diff --git a/tests/spark/generated/rflx-sequence-message.ads b/tests/spark/generated/rflx-sequence-message.ads index eaf25c972..545f5f5ac 100644 --- a/tests/spark/generated/rflx-sequence-message.ads +++ b/tests/spark/generated/rflx-sequence-message.ads @@ -1,11 +1,1129 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.Sequence.Generic_Message; with RFLX.Sequence.Modular_Vector; with RFLX.Sequence.Range_Vector; with RFLX.Sequence.Enumeration_Vector; with RFLX.Sequence.AV_Enumeration_Vector; -package RFLX.Sequence.Message is new RFLX.Sequence.Generic_Message (RFLX.RFLX_Types, RFLX.Sequence.Modular_Vector, RFLX.Sequence.Range_Vector, RFLX.Sequence.Enumeration_Vector, RFLX.Sequence.AV_Enumeration_Vector); +package RFLX.Sequence.Message with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Length, F_Modular_Vector, F_Range_Vector, F_Enumeration_Vector, F_AV_Enumeration_Vector, F_Final); + + subtype Field is Virtual_Field range F_Length .. F_AV_Enumeration_Vector; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Modular_Vector | F_Range_Vector | F_Enumeration_Vector | F_AV_Enumeration_Vector | F_Final => + null; + when F_Length => + Length_Value : RFLX.Sequence.Length; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Length (Ctx : Context) return RFLX.Sequence.Length with + Pre => + Valid (Ctx, F_Length); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Modular_Vector (Modular_Vector : RFLX_Types.Bytes); + procedure Get_Modular_Vector (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Modular_Vector); + + generic + with procedure Process_Range_Vector (Range_Vector : RFLX_Types.Bytes); + procedure Get_Range_Vector (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Range_Vector); + + generic + with procedure Process_Enumeration_Vector (Enumeration_Vector : RFLX_Types.Bytes); + procedure Get_Enumeration_Vector (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Enumeration_Vector); + + generic + with procedure Process_AV_Enumeration_Vector (AV_Enumeration_Vector : RFLX_Types.Bytes); + procedure Get_AV_Enumeration_Vector (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_AV_Enumeration_Vector); + + procedure Set_Length (Ctx : in out Context; Val : RFLX.Sequence.Length) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Length) + and then Field_Condition (Ctx, (F_Length, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Length) >= Field_Size (Ctx, F_Length), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Length) + and Get_Length (Ctx) = Val + and Invalid (Ctx, F_Modular_Vector) + and Invalid (Ctx, F_Range_Vector) + and Invalid (Ctx, F_Enumeration_Vector) + and Invalid (Ctx, F_AV_Enumeration_Vector) + and (Predecessor (Ctx, F_Modular_Vector) = F_Length + and Valid_Next (Ctx, F_Modular_Vector)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Length) = Predecessor (Ctx, F_Length)'Old + and Valid_Next (Ctx, F_Length) = Valid_Next (Ctx, F_Length)'Old; + + procedure Set_Modular_Vector_Empty (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Modular_Vector) + and then Field_Condition (Ctx, (Fld => F_Modular_Vector)) + and then Available_Space (Ctx, F_Modular_Vector) >= Field_Size (Ctx, F_Modular_Vector) + and then Field_First (Ctx, F_Modular_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Modular_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Modular_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Modular_Vector) = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Modular_Vector) + and Invalid (Ctx, F_Range_Vector) + and Invalid (Ctx, F_Enumeration_Vector) + and Invalid (Ctx, F_AV_Enumeration_Vector) + and (Predecessor (Ctx, F_Range_Vector) = F_Modular_Vector + and Valid_Next (Ctx, F_Range_Vector)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Modular_Vector) = Predecessor (Ctx, F_Modular_Vector)'Old + and Valid_Next (Ctx, F_Modular_Vector) = Valid_Next (Ctx, F_Modular_Vector)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + procedure Set_Modular_Vector (Ctx : in out Context; Seq_Ctx : Sequence.Modular_Vector.Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Modular_Vector) + and then Field_Condition (Ctx, (Fld => F_Modular_Vector)) + and then Available_Space (Ctx, F_Modular_Vector) >= Field_Size (Ctx, F_Modular_Vector) + and then Field_First (Ctx, F_Modular_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Modular_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Modular_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Modular_Vector) = Sequence.Modular_Vector.Size (Seq_Ctx) + and then Sequence.Modular_Vector.Has_Buffer (Seq_Ctx) + and then Sequence.Modular_Vector.Valid (Seq_Ctx), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Modular_Vector) + and Invalid (Ctx, F_Range_Vector) + and Invalid (Ctx, F_Enumeration_Vector) + and Invalid (Ctx, F_AV_Enumeration_Vector) + and (Predecessor (Ctx, F_Range_Vector) = F_Modular_Vector + and Valid_Next (Ctx, F_Range_Vector)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Modular_Vector) = Predecessor (Ctx, F_Modular_Vector)'Old + and Valid_Next (Ctx, F_Modular_Vector) = Valid_Next (Ctx, F_Modular_Vector)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old + and (if + Field_Size (Ctx, F_Modular_Vector) > 0 + then + Present (Ctx, F_Modular_Vector)); + + procedure Set_Range_Vector (Ctx : in out Context; Seq_Ctx : Sequence.Range_Vector.Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Range_Vector) + and then Field_Condition (Ctx, (Fld => F_Range_Vector)) + and then Available_Space (Ctx, F_Range_Vector) >= Field_Size (Ctx, F_Range_Vector) + and then Field_First (Ctx, F_Range_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Range_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Range_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Range_Vector) = Sequence.Range_Vector.Size (Seq_Ctx) + and then Sequence.Range_Vector.Has_Buffer (Seq_Ctx) + and then Sequence.Range_Vector.Valid (Seq_Ctx), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Range_Vector) + and Invalid (Ctx, F_Enumeration_Vector) + and Invalid (Ctx, F_AV_Enumeration_Vector) + and (Predecessor (Ctx, F_Enumeration_Vector) = F_Range_Vector + and Valid_Next (Ctx, F_Enumeration_Vector)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Range_Vector) = Predecessor (Ctx, F_Range_Vector)'Old + and Valid_Next (Ctx, F_Range_Vector) = Valid_Next (Ctx, F_Range_Vector)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old + and (if + Field_Size (Ctx, F_Range_Vector) > 0 + then + Present (Ctx, F_Range_Vector)); + + procedure Set_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : Sequence.Enumeration_Vector.Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Enumeration_Vector) + and then Field_Condition (Ctx, (Fld => F_Enumeration_Vector)) + and then Available_Space (Ctx, F_Enumeration_Vector) >= Field_Size (Ctx, F_Enumeration_Vector) + and then Field_First (Ctx, F_Enumeration_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Enumeration_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Enumeration_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Enumeration_Vector) = Sequence.Enumeration_Vector.Size (Seq_Ctx) + and then Sequence.Enumeration_Vector.Has_Buffer (Seq_Ctx) + and then Sequence.Enumeration_Vector.Valid (Seq_Ctx), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Enumeration_Vector) + and Invalid (Ctx, F_AV_Enumeration_Vector) + and (Predecessor (Ctx, F_AV_Enumeration_Vector) = F_Enumeration_Vector + and Valid_Next (Ctx, F_AV_Enumeration_Vector)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Enumeration_Vector) = Predecessor (Ctx, F_Enumeration_Vector)'Old + and Valid_Next (Ctx, F_Enumeration_Vector) = Valid_Next (Ctx, F_Enumeration_Vector)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old + and (if + Field_Size (Ctx, F_Enumeration_Vector) > 0 + then + Present (Ctx, F_Enumeration_Vector)); + + procedure Set_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : Sequence.AV_Enumeration_Vector.Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_AV_Enumeration_Vector) + and then Field_Condition (Ctx, (Fld => F_AV_Enumeration_Vector)) + and then Available_Space (Ctx, F_AV_Enumeration_Vector) >= Field_Size (Ctx, F_AV_Enumeration_Vector) + and then Field_First (Ctx, F_AV_Enumeration_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_AV_Enumeration_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_AV_Enumeration_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_AV_Enumeration_Vector) = Sequence.AV_Enumeration_Vector.Size (Seq_Ctx) + and then Sequence.AV_Enumeration_Vector.Has_Buffer (Seq_Ctx) + and then Sequence.AV_Enumeration_Vector.Valid (Seq_Ctx), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_AV_Enumeration_Vector) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_AV_Enumeration_Vector)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_AV_Enumeration_Vector) = Predecessor (Ctx, F_AV_Enumeration_Vector)'Old + and Valid_Next (Ctx, F_AV_Enumeration_Vector) = Valid_Next (Ctx, F_AV_Enumeration_Vector)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old + and (if + Field_Size (Ctx, F_AV_Enumeration_Vector) > 0 + then + Present (Ctx, F_AV_Enumeration_Vector)); + + procedure Switch_To_Modular_Vector (Ctx : in out Context; Seq_Ctx : out Sequence.Modular_Vector.Context) with + Pre => + not Ctx'Constrained + and then not Seq_Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Modular_Vector) + and then Field_Size (Ctx, F_Modular_Vector) > 0 + and then Field_First (Ctx, F_Modular_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Condition (Ctx, (Fld => F_Modular_Vector)) + and then Available_Space (Ctx, F_Modular_Vector) >= Field_Size (Ctx, F_Modular_Vector), + Post => + not Has_Buffer (Ctx) + and Sequence.Modular_Vector.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Seq_Ctx.Buffer_First + and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and Seq_Ctx.First = Field_First (Ctx, F_Modular_Vector) + and Seq_Ctx.Last = Field_Last (Ctx, F_Modular_Vector) + and Sequence.Modular_Vector.Valid (Seq_Ctx) + and Sequence.Modular_Vector.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 + and Present (Ctx, F_Modular_Vector) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Modular_Vector) = Predecessor (Ctx, F_Modular_Vector)'Old + and Path_Condition (Ctx, F_Modular_Vector) = Path_Condition (Ctx, F_Modular_Vector)'Old + and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old, + Contract_Cases => + (Structural_Valid (Ctx, F_Modular_Vector) => + Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old + and Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old + and Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, + others => + (Predecessor (Ctx, F_Range_Vector) = F_Modular_Vector + and Valid_Next (Ctx, F_Range_Vector)) + and Invalid (Ctx, F_Range_Vector) + and Invalid (Ctx, F_Enumeration_Vector) + and Invalid (Ctx, F_AV_Enumeration_Vector)); + + procedure Switch_To_Range_Vector (Ctx : in out Context; Seq_Ctx : out Sequence.Range_Vector.Context) with + Pre => + not Ctx'Constrained + and then not Seq_Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Range_Vector) + and then Field_Size (Ctx, F_Range_Vector) > 0 + and then Field_First (Ctx, F_Range_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Condition (Ctx, (Fld => F_Range_Vector)) + and then Available_Space (Ctx, F_Range_Vector) >= Field_Size (Ctx, F_Range_Vector), + Post => + not Has_Buffer (Ctx) + and Sequence.Range_Vector.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Seq_Ctx.Buffer_First + and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and Seq_Ctx.First = Field_First (Ctx, F_Range_Vector) + and Seq_Ctx.Last = Field_Last (Ctx, F_Range_Vector) + and Sequence.Range_Vector.Valid (Seq_Ctx) + and Sequence.Range_Vector.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 + and Present (Ctx, F_Range_Vector) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Range_Vector) = Predecessor (Ctx, F_Range_Vector)'Old + and Path_Condition (Ctx, F_Range_Vector) = Path_Condition (Ctx, F_Range_Vector)'Old + and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old + and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old, + Contract_Cases => + (Structural_Valid (Ctx, F_Range_Vector) => + Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old + and Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, + others => + (Predecessor (Ctx, F_Enumeration_Vector) = F_Range_Vector + and Valid_Next (Ctx, F_Enumeration_Vector)) + and Invalid (Ctx, F_Enumeration_Vector) + and Invalid (Ctx, F_AV_Enumeration_Vector)); + + procedure Switch_To_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : out Sequence.Enumeration_Vector.Context) with + Pre => + not Ctx'Constrained + and then not Seq_Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Enumeration_Vector) + and then Field_Size (Ctx, F_Enumeration_Vector) > 0 + and then Field_First (Ctx, F_Enumeration_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Condition (Ctx, (Fld => F_Enumeration_Vector)) + and then Available_Space (Ctx, F_Enumeration_Vector) >= Field_Size (Ctx, F_Enumeration_Vector), + Post => + not Has_Buffer (Ctx) + and Sequence.Enumeration_Vector.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Seq_Ctx.Buffer_First + and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and Seq_Ctx.First = Field_First (Ctx, F_Enumeration_Vector) + and Seq_Ctx.Last = Field_Last (Ctx, F_Enumeration_Vector) + and Sequence.Enumeration_Vector.Valid (Seq_Ctx) + and Sequence.Enumeration_Vector.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 + and Present (Ctx, F_Enumeration_Vector) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Enumeration_Vector) = Predecessor (Ctx, F_Enumeration_Vector)'Old + and Path_Condition (Ctx, F_Enumeration_Vector) = Path_Condition (Ctx, F_Enumeration_Vector)'Old + and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old + and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old + and Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old, + Contract_Cases => + (Structural_Valid (Ctx, F_Enumeration_Vector) => + Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, + others => + (Predecessor (Ctx, F_AV_Enumeration_Vector) = F_Enumeration_Vector + and Valid_Next (Ctx, F_AV_Enumeration_Vector)) + and Invalid (Ctx, F_AV_Enumeration_Vector)); + + procedure Switch_To_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : out Sequence.AV_Enumeration_Vector.Context) with + Pre => + not Ctx'Constrained + and then not Seq_Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_AV_Enumeration_Vector) + and then Field_Size (Ctx, F_AV_Enumeration_Vector) > 0 + and then Field_First (Ctx, F_AV_Enumeration_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Condition (Ctx, (Fld => F_AV_Enumeration_Vector)) + and then Available_Space (Ctx, F_AV_Enumeration_Vector) >= Field_Size (Ctx, F_AV_Enumeration_Vector), + Post => + not Has_Buffer (Ctx) + and Sequence.AV_Enumeration_Vector.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Seq_Ctx.Buffer_First + and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and Seq_Ctx.First = Field_First (Ctx, F_AV_Enumeration_Vector) + and Seq_Ctx.Last = Field_Last (Ctx, F_AV_Enumeration_Vector) + and Sequence.AV_Enumeration_Vector.Valid (Seq_Ctx) + and Sequence.AV_Enumeration_Vector.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 + and Present (Ctx, F_AV_Enumeration_Vector) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_AV_Enumeration_Vector) = Predecessor (Ctx, F_AV_Enumeration_Vector)'Old + and Path_Condition (Ctx, F_AV_Enumeration_Vector) = Path_Condition (Ctx, F_AV_Enumeration_Vector)'Old + and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old + and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old + and Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old + and Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old, + Contract_Cases => + (Structural_Valid (Ctx, F_AV_Enumeration_Vector) => + True, + others => + True); + + function Complete_Modular_Vector (Ctx : Context; Seq_Ctx : Sequence.Modular_Vector.Context) return Boolean with + Pre => + Valid_Next (Ctx, F_Modular_Vector); + + function Complete_Range_Vector (Ctx : Context; Seq_Ctx : Sequence.Range_Vector.Context) return Boolean with + Pre => + Valid_Next (Ctx, F_Range_Vector); + + function Complete_Enumeration_Vector (Ctx : Context; Seq_Ctx : Sequence.Enumeration_Vector.Context) return Boolean with + Pre => + Valid_Next (Ctx, F_Enumeration_Vector); + + function Complete_AV_Enumeration_Vector (Ctx : Context; Seq_Ctx : Sequence.AV_Enumeration_Vector.Context) return Boolean with + Pre => + Valid_Next (Ctx, F_AV_Enumeration_Vector); + + procedure Update_Modular_Vector (Ctx : in out Context; Seq_Ctx : in out Sequence.Modular_Vector.Context) with + Pre => + Present (Ctx, F_Modular_Vector) + and then Complete_Modular_Vector (Ctx, Seq_Ctx) + and then not Has_Buffer (Ctx) + and then Sequence.Modular_Vector.Has_Buffer (Seq_Ctx) + and then Ctx.Buffer_First = Seq_Ctx.Buffer_First + and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and then Seq_Ctx.First = Field_First (Ctx, F_Modular_Vector) + and then Seq_Ctx.Last = Field_Last (Ctx, F_Modular_Vector), + Post => + Present (Ctx, F_Modular_Vector) + and Has_Buffer (Ctx) + and not Sequence.Modular_Vector.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Seq_Ctx.First = Seq_Ctx.First'Old + and Seq_Ctx.Last = Seq_Ctx.Last'Old + and Field_First (Ctx, F_Modular_Vector) = Field_First (Ctx, F_Modular_Vector)'Old + and Field_Size (Ctx, F_Modular_Vector) = Field_Size (Ctx, F_Modular_Vector)'Old + and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old + and Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old + and Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old + and Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, + Depends => + (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); + + procedure Update_Range_Vector (Ctx : in out Context; Seq_Ctx : in out Sequence.Range_Vector.Context) with + Pre => + Present (Ctx, F_Range_Vector) + and then Complete_Range_Vector (Ctx, Seq_Ctx) + and then not Has_Buffer (Ctx) + and then Sequence.Range_Vector.Has_Buffer (Seq_Ctx) + and then Ctx.Buffer_First = Seq_Ctx.Buffer_First + and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and then Seq_Ctx.First = Field_First (Ctx, F_Range_Vector) + and then Seq_Ctx.Last = Field_Last (Ctx, F_Range_Vector), + Post => + Present (Ctx, F_Range_Vector) + and Has_Buffer (Ctx) + and not Sequence.Range_Vector.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Seq_Ctx.First = Seq_Ctx.First'Old + and Seq_Ctx.Last = Seq_Ctx.Last'Old + and Field_First (Ctx, F_Range_Vector) = Field_First (Ctx, F_Range_Vector)'Old + and Field_Size (Ctx, F_Range_Vector) = Field_Size (Ctx, F_Range_Vector)'Old + and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old + and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old + and Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old + and Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, + Depends => + (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); + + procedure Update_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : in out Sequence.Enumeration_Vector.Context) with + Pre => + Present (Ctx, F_Enumeration_Vector) + and then Complete_Enumeration_Vector (Ctx, Seq_Ctx) + and then not Has_Buffer (Ctx) + and then Sequence.Enumeration_Vector.Has_Buffer (Seq_Ctx) + and then Ctx.Buffer_First = Seq_Ctx.Buffer_First + and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and then Seq_Ctx.First = Field_First (Ctx, F_Enumeration_Vector) + and then Seq_Ctx.Last = Field_Last (Ctx, F_Enumeration_Vector), + Post => + Present (Ctx, F_Enumeration_Vector) + and Has_Buffer (Ctx) + and not Sequence.Enumeration_Vector.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Seq_Ctx.First = Seq_Ctx.First'Old + and Seq_Ctx.Last = Seq_Ctx.Last'Old + and Field_First (Ctx, F_Enumeration_Vector) = Field_First (Ctx, F_Enumeration_Vector)'Old + and Field_Size (Ctx, F_Enumeration_Vector) = Field_Size (Ctx, F_Enumeration_Vector)'Old + and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old + and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old + and Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old + and Context_Cursor (Ctx, F_AV_Enumeration_Vector) = Context_Cursor (Ctx, F_AV_Enumeration_Vector)'Old, + Depends => + (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); + + procedure Update_AV_Enumeration_Vector (Ctx : in out Context; Seq_Ctx : in out Sequence.AV_Enumeration_Vector.Context) with + Pre => + Present (Ctx, F_AV_Enumeration_Vector) + and then Complete_AV_Enumeration_Vector (Ctx, Seq_Ctx) + and then not Has_Buffer (Ctx) + and then Sequence.AV_Enumeration_Vector.Has_Buffer (Seq_Ctx) + and then Ctx.Buffer_First = Seq_Ctx.Buffer_First + and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and then Seq_Ctx.First = Field_First (Ctx, F_AV_Enumeration_Vector) + and then Seq_Ctx.Last = Field_Last (Ctx, F_AV_Enumeration_Vector), + Post => + Present (Ctx, F_AV_Enumeration_Vector) + and Has_Buffer (Ctx) + and not Sequence.AV_Enumeration_Vector.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Seq_Ctx.First = Seq_Ctx.First'Old + and Seq_Ctx.Last = Seq_Ctx.Last'Old + and Field_First (Ctx, F_AV_Enumeration_Vector) = Field_First (Ctx, F_AV_Enumeration_Vector)'Old + and Field_Size (Ctx, F_AV_Enumeration_Vector) = Field_Size (Ctx, F_AV_Enumeration_Vector)'Old + and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old + and Context_Cursor (Ctx, F_Modular_Vector) = Context_Cursor (Ctx, F_Modular_Vector)'Old + and Context_Cursor (Ctx, F_Range_Vector) = Context_Cursor (Ctx, F_Range_Vector)'Old + and Context_Cursor (Ctx, F_Enumeration_Vector) = Context_Cursor (Ctx, F_Enumeration_Vector)'Old, + Depends => + (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Length => + Valid (Val.Length_Value), + when F_Modular_Vector | F_Range_Vector | F_Enumeration_Vector | F_AV_Enumeration_Vector => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_Modular_Vector)) + then + (Valid (Cursors (F_Length)) + and then Cursors (F_Modular_Vector).Predecessor = F_Length)) + and then (if + Structural_Valid (Cursors (F_Range_Vector)) + then + (Structural_Valid (Cursors (F_Modular_Vector)) + and then Cursors (F_Range_Vector).Predecessor = F_Modular_Vector)) + and then (if + Structural_Valid (Cursors (F_Enumeration_Vector)) + then + (Structural_Valid (Cursors (F_Range_Vector)) + and then Cursors (F_Enumeration_Vector).Predecessor = F_Range_Vector)) + and then (if + Structural_Valid (Cursors (F_AV_Enumeration_Vector)) + then + (Structural_Valid (Cursors (F_Enumeration_Vector)) + and then Cursors (F_AV_Enumeration_Vector).Predecessor = F_Enumeration_Vector))) + and then ((if + Invalid (Cursors (F_Length)) + then + Invalid (Cursors (F_Modular_Vector))) + and then (if + Invalid (Cursors (F_Modular_Vector)) + then + Invalid (Cursors (F_Range_Vector))) + and then (if + Invalid (Cursors (F_Range_Vector)) + then + Invalid (Cursors (F_Enumeration_Vector))) + and then (if + Invalid (Cursors (F_Enumeration_Vector)) + then + Invalid (Cursors (F_AV_Enumeration_Vector)))) + and then (if + Structural_Valid (Cursors (F_Length)) + then + Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size + and then Cursors (F_Length).Predecessor = F_Initial + and then Cursors (F_Length).First = First + and then (if + Structural_Valid (Cursors (F_Modular_Vector)) + then + Cursors (F_Modular_Vector).Last - Cursors (F_Modular_Vector).First + 1 = RFLX_Types.Bit_Length (Cursors (F_Length).Value.Length_Value) * 8 + and then Cursors (F_Modular_Vector).Predecessor = F_Length + and then Cursors (F_Modular_Vector).First = Cursors (F_Length).Last + 1 + and then (if + Structural_Valid (Cursors (F_Range_Vector)) + then + Cursors (F_Range_Vector).Last - Cursors (F_Range_Vector).First + 1 = 16 + and then Cursors (F_Range_Vector).Predecessor = F_Modular_Vector + and then Cursors (F_Range_Vector).First = Cursors (F_Modular_Vector).Last + 1 + and then (if + Structural_Valid (Cursors (F_Enumeration_Vector)) + then + Cursors (F_Enumeration_Vector).Last - Cursors (F_Enumeration_Vector).First + 1 = 16 + and then Cursors (F_Enumeration_Vector).Predecessor = F_Range_Vector + and then Cursors (F_Enumeration_Vector).First = Cursors (F_Range_Vector).Last + 1 + and then (if + Structural_Valid (Cursors (F_AV_Enumeration_Vector)) + then + Cursors (F_AV_Enumeration_Vector).Last - Cursors (F_AV_Enumeration_Vector).First + 1 = 16 + and then Cursors (F_AV_Enumeration_Vector).Predecessor = F_Enumeration_Vector + and then Cursors (F_AV_Enumeration_Vector).First = Cursors (F_Enumeration_Vector).Last + 1)))))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Length) + and then Field_First (Ctx, F_Length) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Length) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Length) + and then Invalid (Ctx, F_Modular_Vector) + and then Invalid (Ctx, F_Range_Vector) + and then Invalid (Ctx, F_Enumeration_Vector) + and then Invalid (Ctx, F_AV_Enumeration_Vector)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Length => + True, + when others => + False), + when F_Length => + (case Fld is + when F_Modular_Vector => + True, + when others => + False), + when F_Modular_Vector => + (case Fld is + when F_Range_Vector => + True, + when others => + False), + when F_Range_Vector => + (case Fld is + when F_Enumeration_Vector => + True, + when others => + False), + when F_Enumeration_Vector => + (case Fld is + when F_AV_Enumeration_Vector => + True, + when others => + False), + when F_AV_Enumeration_Vector | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial | F_Length | F_Modular_Vector | F_Range_Vector | F_Enumeration_Vector | F_AV_Enumeration_Vector => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Length => + RFLX.Sequence.Length'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Length => + (case Fld is + when F_Modular_Vector => + RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Modular_Vector => + (case Fld is + when F_Range_Vector => + 16, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Range_Vector => + (case Fld is + when F_Enumeration_Vector => + 16, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Enumeration_Vector => + (case Fld is + when F_AV_Enumeration_Vector => + 16, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_AV_Enumeration_Vector | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Length => + Ctx.First, + when F_Modular_Vector => + (if + Ctx.Cursors (Fld).Predecessor = F_Length + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Range_Vector => + (if + Ctx.Cursors (Fld).Predecessor = F_Modular_Vector + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Enumeration_Vector => + (if + Ctx.Cursors (Fld).Predecessor = F_Range_Vector + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_AV_Enumeration_Vector => + (if + Ctx.Cursors (Fld).Predecessor = F_Enumeration_Vector + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Length => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Modular_Vector => + (Valid (Ctx.Cursors (F_Length)) + and Ctx.Cursors (Fld).Predecessor = F_Length), + when F_Range_Vector => + (Structural_Valid (Ctx.Cursors (F_Modular_Vector)) + and Ctx.Cursors (Fld).Predecessor = F_Modular_Vector), + when F_Enumeration_Vector => + (Structural_Valid (Ctx.Cursors (F_Range_Vector)) + and Ctx.Cursors (Fld).Predecessor = F_Range_Vector), + when F_AV_Enumeration_Vector => + (Structural_Valid (Ctx.Cursors (F_Enumeration_Vector)) + and Ctx.Cursors (Fld).Predecessor = F_Enumeration_Vector), + when F_Final => + (Structural_Valid (Ctx.Cursors (F_AV_Enumeration_Vector)) + and Ctx.Cursors (Fld).Predecessor = F_AV_Enumeration_Vector))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Length) + and then Structural_Valid (Ctx, F_Modular_Vector) + and then Structural_Valid (Ctx, F_Range_Vector) + and then Structural_Valid (Ctx, F_Enumeration_Vector) + and then Structural_Valid (Ctx, F_AV_Enumeration_Vector)); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Length) + and then Valid (Ctx, F_Modular_Vector) + and then Valid (Ctx, F_Range_Vector) + and then Valid (Ctx, F_Enumeration_Vector) + and then Valid (Ctx, F_AV_Enumeration_Vector)); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Length) + or Incomplete (Ctx, F_Modular_Vector) + or Incomplete (Ctx, F_Range_Vector) + or Incomplete (Ctx, F_Enumeration_Vector) + or Incomplete (Ctx, F_AV_Enumeration_Vector)); + + function Get_Length (Ctx : Context) return RFLX.Sequence.Length is + (To_Actual (Ctx.Cursors (F_Length).Value.Length_Value)); + + function Complete_Modular_Vector (Ctx : Context; Seq_Ctx : Sequence.Modular_Vector.Context) return Boolean is + (Sequence.Modular_Vector.Valid (Seq_Ctx) + and Sequence.Modular_Vector.Size (Seq_Ctx) = Field_Size (Ctx, F_Modular_Vector)); + + function Complete_Range_Vector (Ctx : Context; Seq_Ctx : Sequence.Range_Vector.Context) return Boolean is + (Sequence.Range_Vector.Valid (Seq_Ctx) + and Sequence.Range_Vector.Size (Seq_Ctx) = Field_Size (Ctx, F_Range_Vector)); + + function Complete_Enumeration_Vector (Ctx : Context; Seq_Ctx : Sequence.Enumeration_Vector.Context) return Boolean is + (Sequence.Enumeration_Vector.Valid (Seq_Ctx) + and Sequence.Enumeration_Vector.Size (Seq_Ctx) = Field_Size (Ctx, F_Enumeration_Vector)); + + function Complete_AV_Enumeration_Vector (Ctx : Context; Seq_Ctx : Sequence.AV_Enumeration_Vector.Context) return Boolean is + (Sequence.AV_Enumeration_Vector.Valid (Seq_Ctx) + and Sequence.AV_Enumeration_Vector.Size (Seq_Ctx) = Field_Size (Ctx, F_AV_Enumeration_Vector)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.Sequence.Message; diff --git a/tests/spark/generated/rflx-sequence-generic_messages_message.adb b/tests/spark/generated/rflx-sequence-messages_message.adb similarity index 71% rename from tests/spark/generated/rflx-sequence-generic_messages_message.adb rename to tests/spark/generated/rflx-sequence-messages_message.adb index 1947ec115..63d843730 100644 --- a/tests/spark/generated/rflx-sequence-generic_messages_message.adb +++ b/tests/spark/generated/rflx-sequence-messages_message.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.Sequence.Generic_Messages_Message with +package body RFLX.Sequence.Messages_Message with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Length => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -83,8 +83,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -92,11 +91,11 @@ is Has_Buffer (Ctx) and Valid_Next (Ctx, Fld); - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean is + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Messages => - Ctx.Buffer.all (Types.Byte_Index (Field_First (Ctx, Fld)) .. Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -123,9 +122,9 @@ is Ctx.Cursors (F_Length) = Ctx.Cursors (F_Length)'Old and Invalid (Ctx, F_Messages)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -158,15 +157,15 @@ is Post => Get_Field_Value'Result.Fld = Fld is - First : constant Types.Bit_Index := Field_First (Ctx, Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - function Extract is new Types.Extract (RFLX.Sequence.Length); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.Sequence.Length); begin return ((case Fld is when F_Length => @@ -193,7 +192,7 @@ is pragma Assert ((if Fld = F_Messages then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); @@ -221,13 +220,13 @@ is end Verify_Message; procedure Get_Messages (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Messages).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Messages).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Messages).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Messages).Last); begin Process_Messages (Ctx.Buffer.all (First .. Last)); end Get_Messages; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out Types.Bit_Index) with + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -257,15 +256,15 @@ is and Ctx.Last = Ctx.Last'Old and Ctx.Cursors = Ctx.Cursors'Old is - First : constant Types.Bit_Index := Field_First (Ctx, Val.Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Val.Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - procedure Insert is new Types.Insert (RFLX.Sequence.Length); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.Sequence.Length); begin Fst := First; Lst := Last; @@ -281,7 +280,7 @@ is procedure Set_Length (Ctx : in out Context; Val : RFLX.Sequence.Length) is Field_Value : constant Field_Dependent_Value := (F_Length, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Length); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -291,8 +290,8 @@ is end Set_Length; procedure Set_Messages_Empty (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Messages); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Messages); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Messages); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Messages); begin Reset_Dependent_Fields (Ctx, F_Messages); Ctx.Message_Last := Last; @@ -300,25 +299,25 @@ is Ctx.Cursors (Successor (Ctx, F_Messages)) := (State => S_Invalid, Predecessor => F_Messages); end Set_Messages_Empty; - procedure Set_Messages (Ctx : in out Context; Seq_Ctx : Inner_Messages_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Messages); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Messages); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Messages (Ctx : in out Context; Seq_Ctx : Sequence.Inner_Messages.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Messages); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Messages); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Messages); Ctx.Message_Last := Last; Ctx.Cursors (F_Messages) := (State => S_Valid, First => First, Last => Last, Value => (Fld => F_Messages), Predecessor => Ctx.Cursors (F_Messages).Predecessor); Ctx.Cursors (Successor (Ctx, F_Messages)) := (State => S_Invalid, Predecessor => F_Messages); - Inner_Messages_Sequence.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); + Sequence.Inner_Messages.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Set_Messages; - procedure Switch_To_Messages (Ctx : in out Context; Seq_Ctx : out Inner_Messages_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Messages); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Messages); - Buffer : Types.Bytes_Ptr; + procedure Switch_To_Messages (Ctx : in out Context; Seq_Ctx : out Sequence.Inner_Messages.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Messages); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Messages); + Buffer : RFLX_Types.Bytes_Ptr; begin if Invalid (Ctx, F_Messages) then Reset_Dependent_Fields (Ctx, F_Messages); @@ -328,19 +327,19 @@ is end if; Take_Buffer (Ctx, Buffer); pragma Warnings (Off, "unused assignment to ""Buffer"""); - Inner_Messages_Sequence.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); + Sequence.Inner_Messages.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); pragma Warnings (On, "unused assignment to ""Buffer"""); end Switch_To_Messages; - procedure Update_Messages (Ctx : in out Context; Seq_Ctx : in out Inner_Messages_Sequence.Context) is - Valid_Sequence : constant Boolean := Inner_Messages_Sequence.Valid (Seq_Ctx); - Buffer : Types.Bytes_Ptr; + procedure Update_Messages (Ctx : in out Context; Seq_Ctx : in out Sequence.Inner_Messages.Context) is + Valid_Sequence : constant Boolean := Sequence.Inner_Messages.Valid (Seq_Ctx); + Buffer : RFLX_Types.Bytes_Ptr; begin - Inner_Messages_Sequence.Take_Buffer (Seq_Ctx, Buffer); + Sequence.Inner_Messages.Take_Buffer (Seq_Ctx, Buffer); Ctx.Buffer := Buffer; if Valid_Sequence then Ctx.Cursors (F_Messages) := (State => S_Valid, First => Ctx.Cursors (F_Messages).First, Last => Ctx.Cursors (F_Messages).Last, Value => Ctx.Cursors (F_Messages).Value, Predecessor => Ctx.Cursors (F_Messages).Predecessor); end if; end Update_Messages; -end RFLX.Sequence.Generic_Messages_Message; +end RFLX.Sequence.Messages_Message; diff --git a/tests/spark/generated/rflx-sequence-messages_message.ads b/tests/spark/generated/rflx-sequence-messages_message.ads index 2f3ef64e9..a54378f87 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.ads +++ b/tests/spark/generated/rflx-sequence-messages_message.ads @@ -1,8 +1,651 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.Sequence.Generic_Messages_Message; with RFLX.Sequence.Inner_Messages; -package RFLX.Sequence.Messages_Message is new RFLX.Sequence.Generic_Messages_Message (RFLX.RFLX_Types, RFLX.Sequence.Inner_Messages); +package RFLX.Sequence.Messages_Message with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Length, F_Messages, F_Final); + + subtype Field is Virtual_Field range F_Length .. F_Messages; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Messages | F_Final => + null; + when F_Length => + Length_Value : RFLX.Sequence.Length; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Length (Ctx : Context) return RFLX.Sequence.Length with + Pre => + Valid (Ctx, F_Length); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Messages (Messages : RFLX_Types.Bytes); + procedure Get_Messages (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Messages); + + procedure Set_Length (Ctx : in out Context; Val : RFLX.Sequence.Length) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Length) + and then Field_Condition (Ctx, (F_Length, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Length) >= Field_Size (Ctx, F_Length), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Length) + and Get_Length (Ctx) = Val + and Invalid (Ctx, F_Messages) + and (Predecessor (Ctx, F_Messages) = F_Length + and Valid_Next (Ctx, F_Messages)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Length) = Predecessor (Ctx, F_Length)'Old + and Valid_Next (Ctx, F_Length) = Valid_Next (Ctx, F_Length)'Old; + + procedure Set_Messages_Empty (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Messages) + and then Field_Condition (Ctx, (Fld => F_Messages)) + and then Available_Space (Ctx, F_Messages) >= Field_Size (Ctx, F_Messages) + and then Field_First (Ctx, F_Messages) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Messages) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Messages) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Messages) = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Messages) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Messages)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Messages) = Predecessor (Ctx, F_Messages)'Old + and Valid_Next (Ctx, F_Messages) = Valid_Next (Ctx, F_Messages)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + procedure Set_Messages (Ctx : in out Context; Seq_Ctx : Sequence.Inner_Messages.Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Messages) + and then Field_Condition (Ctx, (Fld => F_Messages)) + and then Available_Space (Ctx, F_Messages) >= Field_Size (Ctx, F_Messages) + and then Field_First (Ctx, F_Messages) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Messages) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Messages) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Messages) = Sequence.Inner_Messages.Size (Seq_Ctx) + and then Sequence.Inner_Messages.Has_Buffer (Seq_Ctx) + and then Sequence.Inner_Messages.Valid (Seq_Ctx), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Messages) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Messages)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Messages) = Predecessor (Ctx, F_Messages)'Old + and Valid_Next (Ctx, F_Messages) = Valid_Next (Ctx, F_Messages)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old + and (if + Field_Size (Ctx, F_Messages) > 0 + then + Present (Ctx, F_Messages)); + + procedure Switch_To_Messages (Ctx : in out Context; Seq_Ctx : out Sequence.Inner_Messages.Context) with + Pre => + not Ctx'Constrained + and then not Seq_Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Messages) + and then Field_Size (Ctx, F_Messages) > 0 + and then Field_First (Ctx, F_Messages) mod RFLX_Types.Byte'Size = 1 + and then Field_Condition (Ctx, (Fld => F_Messages)) + and then Available_Space (Ctx, F_Messages) >= Field_Size (Ctx, F_Messages), + Post => + not Has_Buffer (Ctx) + and Sequence.Inner_Messages.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Seq_Ctx.Buffer_First + and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and Seq_Ctx.First = Field_First (Ctx, F_Messages) + and Seq_Ctx.Last = Field_Last (Ctx, F_Messages) + and Sequence.Inner_Messages.Valid (Seq_Ctx) + and Sequence.Inner_Messages.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 + and Present (Ctx, F_Messages) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Messages) = Predecessor (Ctx, F_Messages)'Old + and Path_Condition (Ctx, F_Messages) = Path_Condition (Ctx, F_Messages)'Old + and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old, + Contract_Cases => + (Structural_Valid (Ctx, F_Messages) => + True, + others => + True); + + function Complete_Messages (Ctx : Context; Seq_Ctx : Sequence.Inner_Messages.Context) return Boolean with + Pre => + Valid_Next (Ctx, F_Messages); + + procedure Update_Messages (Ctx : in out Context; Seq_Ctx : in out Sequence.Inner_Messages.Context) with + Pre => + Present (Ctx, F_Messages) + and then Complete_Messages (Ctx, Seq_Ctx) + and then not Has_Buffer (Ctx) + and then Sequence.Inner_Messages.Has_Buffer (Seq_Ctx) + and then Ctx.Buffer_First = Seq_Ctx.Buffer_First + and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and then Seq_Ctx.First = Field_First (Ctx, F_Messages) + and then Seq_Ctx.Last = Field_Last (Ctx, F_Messages), + Post => + Present (Ctx, F_Messages) + and Has_Buffer (Ctx) + and not Sequence.Inner_Messages.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Seq_Ctx.First = Seq_Ctx.First'Old + and Seq_Ctx.Last = Seq_Ctx.Last'Old + and Field_First (Ctx, F_Messages) = Field_First (Ctx, F_Messages)'Old + and Field_Size (Ctx, F_Messages) = Field_Size (Ctx, F_Messages)'Old + and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old, + Depends => + (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Length => + Valid (Val.Length_Value), + when F_Messages => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_Messages)) + then + (Valid (Cursors (F_Length)) + and then Cursors (F_Messages).Predecessor = F_Length))) + and then ((if + Invalid (Cursors (F_Length)) + then + Invalid (Cursors (F_Messages)))) + and then (if + Structural_Valid (Cursors (F_Length)) + then + Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.Sequence.Length'Size + and then Cursors (F_Length).Predecessor = F_Initial + and then Cursors (F_Length).First = First + and then (if + Structural_Valid (Cursors (F_Messages)) + then + Cursors (F_Messages).Last - Cursors (F_Messages).First + 1 = RFLX_Types.Bit_Length (Cursors (F_Length).Value.Length_Value) * 8 + and then Cursors (F_Messages).Predecessor = F_Length + and then Cursors (F_Messages).First = Cursors (F_Length).Last + 1))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Length) + and then Field_First (Ctx, F_Length) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Length) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Length) + and then Invalid (Ctx, F_Messages)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Length => + True, + when others => + False), + when F_Length => + (case Fld is + when F_Messages => + True, + when others => + False), + when F_Messages | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial | F_Length | F_Messages => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Length => + RFLX.Sequence.Length'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Length => + (case Fld is + when F_Messages => + RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Messages | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Length => + Ctx.First, + when F_Messages => + (if + Ctx.Cursors (Fld).Predecessor = F_Length + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Length => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Messages => + (Valid (Ctx.Cursors (F_Length)) + and Ctx.Cursors (Fld).Predecessor = F_Length), + when F_Final => + (Structural_Valid (Ctx.Cursors (F_Messages)) + and Ctx.Cursors (Fld).Predecessor = F_Messages))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Length) + and then Structural_Valid (Ctx, F_Messages)); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Length) + and then Valid (Ctx, F_Messages)); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Length) + or Incomplete (Ctx, F_Messages)); + + function Get_Length (Ctx : Context) return RFLX.Sequence.Length is + (To_Actual (Ctx.Cursors (F_Length).Value.Length_Value)); + + function Complete_Messages (Ctx : Context; Seq_Ctx : Sequence.Inner_Messages.Context) return Boolean is + (Sequence.Inner_Messages.Valid (Seq_Ctx) + and Sequence.Inner_Messages.Size (Seq_Ctx) = Field_Size (Ctx, F_Messages)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.Sequence.Messages_Message; diff --git a/tests/spark/generated/rflx-sequence-modular_vector.ads b/tests/spark/generated/rflx-sequence-modular_vector.ads index e3e1448cb..bf37533fa 100644 --- a/tests/spark/generated/rflx-sequence-modular_vector.ads +++ b/tests/spark/generated/rflx-sequence-modular_vector.ads @@ -1,8 +1,10 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); pragma SPARK_Mode; -with RFLX.RFLX_Types; with RFLX.RFLX_Scalar_Sequence; with RFLX.Sequence; +pragma Warnings (Off, "unit ""*RFLX_Types"" is not referenced"); +with RFLX.RFLX_Types; +pragma Warnings (On, "unit ""*RFLX_Types"" is not referenced"); -package RFLX.Sequence.Modular_Vector is new RFLX.RFLX_Scalar_Sequence (RFLX.RFLX_Types, RFLX.Sequence.Modular_Integer, RFLX.Sequence.Modular_Integer, RFLX.Sequence.Valid, RFLX.Sequence.To_Actual, RFLX.Sequence.To_Base); +package RFLX.Sequence.Modular_Vector is new RFLX.RFLX_Scalar_Sequence (RFLX.Sequence.Modular_Integer, RFLX.Sequence.Modular_Integer, RFLX.Sequence.Valid, RFLX.Sequence.To_Actual, RFLX.Sequence.To_Base); diff --git a/tests/spark/generated/rflx-sequence-range_vector.ads b/tests/spark/generated/rflx-sequence-range_vector.ads index 1f2963109..4f331ad5e 100644 --- a/tests/spark/generated/rflx-sequence-range_vector.ads +++ b/tests/spark/generated/rflx-sequence-range_vector.ads @@ -1,8 +1,10 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); pragma SPARK_Mode; -with RFLX.RFLX_Types; with RFLX.RFLX_Scalar_Sequence; with RFLX.Sequence; +pragma Warnings (Off, "unit ""*RFLX_Types"" is not referenced"); +with RFLX.RFLX_Types; +pragma Warnings (On, "unit ""*RFLX_Types"" is not referenced"); -package RFLX.Sequence.Range_Vector is new RFLX.RFLX_Scalar_Sequence (RFLX.RFLX_Types, RFLX.Sequence.Range_Integer, RFLX.Sequence.Range_Integer_Base, RFLX.Sequence.Valid, RFLX.Sequence.To_Actual, RFLX.Sequence.To_Base); +package RFLX.Sequence.Range_Vector is new RFLX.RFLX_Scalar_Sequence (RFLX.Sequence.Range_Integer, RFLX.Sequence.Range_Integer_Base, RFLX.Sequence.Valid, RFLX.Sequence.To_Actual, RFLX.Sequence.To_Base); diff --git a/tests/spark/generated/rflx-sequence-generic_sequence_size_defined_by_message_size.adb b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb similarity index 70% rename from tests/spark/generated/rflx-sequence-generic_sequence_size_defined_by_message_size.adb rename to tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb index f22711c19..1fcca71e7 100644 --- a/tests/spark/generated/rflx-sequence-generic_sequence_size_defined_by_message_size.adb +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.Sequence.Generic_Sequence_Size_Defined_By_Message_Size with +package body RFLX.Sequence.Sequence_Size_Defined_By_Message_Size with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Header => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -83,8 +83,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -92,11 +91,11 @@ is Has_Buffer (Ctx) and Valid_Next (Ctx, Fld); - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean is + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Vector => - Ctx.Buffer.all (Types.Byte_Index (Field_First (Ctx, Fld)) .. Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -123,9 +122,9 @@ is Ctx.Cursors (F_Header) = Ctx.Cursors (F_Header)'Old and Invalid (Ctx, F_Vector)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -158,15 +157,15 @@ is Post => Get_Field_Value'Result.Fld = Fld is - First : constant Types.Bit_Index := Field_First (Ctx, Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - function Extract is new Types.Extract (RFLX.Sequence.Enumeration_Base); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.Sequence.Enumeration_Base); begin return ((case Fld is when F_Header => @@ -193,7 +192,7 @@ is pragma Assert ((if Fld = F_Vector then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); @@ -221,13 +220,13 @@ is end Verify_Message; procedure Get_Vector (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Vector).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Vector).Last); begin Process_Vector (Ctx.Buffer.all (First .. Last)); end Get_Vector; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out Types.Bit_Index) with + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -257,15 +256,15 @@ is and Ctx.Last = Ctx.Last'Old and Ctx.Cursors = Ctx.Cursors'Old is - First : constant Types.Bit_Index := Field_First (Ctx, Val.Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Val.Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - procedure Insert is new Types.Insert (RFLX.Sequence.Enumeration_Base); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.Sequence.Enumeration_Base); begin Fst := First; Lst := Last; @@ -281,7 +280,7 @@ is procedure Set_Header (Ctx : in out Context; Val : RFLX.Sequence.Enumeration) is Field_Value : constant Field_Dependent_Value := (F_Header, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Header); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -291,8 +290,8 @@ is end Set_Header; procedure Set_Vector_Empty (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Vector); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Vector); begin Reset_Dependent_Fields (Ctx, F_Vector); Ctx.Message_Last := Last; @@ -300,25 +299,25 @@ is Ctx.Cursors (Successor (Ctx, F_Vector)) := (State => S_Invalid, Predecessor => F_Vector); end Set_Vector_Empty; - procedure Set_Vector (Ctx : in out Context; Seq_Ctx : Modular_Vector_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Vector); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Vector (Ctx : in out Context; Seq_Ctx : Sequence.Modular_Vector.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Vector); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Vector); Ctx.Message_Last := Last; Ctx.Cursors (F_Vector) := (State => S_Valid, First => First, Last => Last, Value => (Fld => F_Vector), Predecessor => Ctx.Cursors (F_Vector).Predecessor); Ctx.Cursors (Successor (Ctx, F_Vector)) := (State => S_Invalid, Predecessor => F_Vector); - Modular_Vector_Sequence.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); + Sequence.Modular_Vector.Copy (Seq_Ctx, Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Set_Vector; - procedure Switch_To_Vector (Ctx : in out Context; Seq_Ctx : out Modular_Vector_Sequence.Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Vector); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Vector); - Buffer : Types.Bytes_Ptr; + procedure Switch_To_Vector (Ctx : in out Context; Seq_Ctx : out Sequence.Modular_Vector.Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Vector); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Vector); + Buffer : RFLX_Types.Bytes_Ptr; begin if Invalid (Ctx, F_Vector) then Reset_Dependent_Fields (Ctx, F_Vector); @@ -328,19 +327,19 @@ is end if; Take_Buffer (Ctx, Buffer); pragma Warnings (Off, "unused assignment to ""Buffer"""); - Modular_Vector_Sequence.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); + Sequence.Modular_Vector.Initialize (Seq_Ctx, Buffer, Ctx.Buffer_First, Ctx.Buffer_Last, First, Last); pragma Warnings (On, "unused assignment to ""Buffer"""); end Switch_To_Vector; - procedure Update_Vector (Ctx : in out Context; Seq_Ctx : in out Modular_Vector_Sequence.Context) is - Valid_Sequence : constant Boolean := Modular_Vector_Sequence.Valid (Seq_Ctx); - Buffer : Types.Bytes_Ptr; + procedure Update_Vector (Ctx : in out Context; Seq_Ctx : in out Sequence.Modular_Vector.Context) is + Valid_Sequence : constant Boolean := Sequence.Modular_Vector.Valid (Seq_Ctx); + Buffer : RFLX_Types.Bytes_Ptr; begin - Modular_Vector_Sequence.Take_Buffer (Seq_Ctx, Buffer); + Sequence.Modular_Vector.Take_Buffer (Seq_Ctx, Buffer); Ctx.Buffer := Buffer; if Valid_Sequence then Ctx.Cursors (F_Vector) := (State => S_Valid, First => Ctx.Cursors (F_Vector).First, Last => Ctx.Cursors (F_Vector).Last, Value => Ctx.Cursors (F_Vector).Value, Predecessor => Ctx.Cursors (F_Vector).Predecessor); end if; end Update_Vector; -end RFLX.Sequence.Generic_Sequence_Size_Defined_By_Message_Size; +end RFLX.Sequence.Sequence_Size_Defined_By_Message_Size; diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads index 8b31566ad..9bc0c1aa7 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads @@ -1,8 +1,651 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.Sequence.Generic_Sequence_Size_Defined_By_Message_Size; with RFLX.Sequence.Modular_Vector; -package RFLX.Sequence.Sequence_Size_Defined_By_Message_Size is new RFLX.Sequence.Generic_Sequence_Size_Defined_By_Message_Size (RFLX.RFLX_Types, RFLX.Sequence.Modular_Vector); +package RFLX.Sequence.Sequence_Size_Defined_By_Message_Size with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Header, F_Vector, F_Final); + + subtype Field is Virtual_Field range F_Header .. F_Vector; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Vector | F_Final => + null; + when F_Header => + Header_Value : RFLX.Sequence.Enumeration_Base; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Header (Ctx : Context) return RFLX.Sequence.Enumeration with + Pre => + Valid (Ctx, F_Header); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Vector (Vector : RFLX_Types.Bytes); + procedure Get_Vector (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Vector); + + procedure Set_Header (Ctx : in out Context; Val : RFLX.Sequence.Enumeration) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Header) + and then Field_Condition (Ctx, (F_Header, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Header) >= Field_Size (Ctx, F_Header), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Header) + and Get_Header (Ctx) = Val + and Invalid (Ctx, F_Vector) + and (Predecessor (Ctx, F_Vector) = F_Header + and Valid_Next (Ctx, F_Vector)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Header) = Predecessor (Ctx, F_Header)'Old + and Valid_Next (Ctx, F_Header) = Valid_Next (Ctx, F_Header)'Old; + + procedure Set_Vector_Empty (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Vector) + and then Field_Condition (Ctx, (Fld => F_Vector)) + and then Available_Space (Ctx, F_Vector) >= Field_Size (Ctx, F_Vector) + and then Field_First (Ctx, F_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Vector) = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Vector) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Vector)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Vector) = Predecessor (Ctx, F_Vector)'Old + and Valid_Next (Ctx, F_Vector) = Valid_Next (Ctx, F_Vector)'Old + and Get_Header (Ctx) = Get_Header (Ctx)'Old; + + procedure Set_Vector (Ctx : in out Context; Seq_Ctx : Sequence.Modular_Vector.Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Vector) + and then Field_Condition (Ctx, (Fld => F_Vector)) + and then Available_Space (Ctx, F_Vector) >= Field_Size (Ctx, F_Vector) + and then Field_First (Ctx, F_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Vector) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Vector) = Sequence.Modular_Vector.Size (Seq_Ctx) + and then Sequence.Modular_Vector.Has_Buffer (Seq_Ctx) + and then Sequence.Modular_Vector.Valid (Seq_Ctx), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Vector) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Vector)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Vector) = Predecessor (Ctx, F_Vector)'Old + and Valid_Next (Ctx, F_Vector) = Valid_Next (Ctx, F_Vector)'Old + and Get_Header (Ctx) = Get_Header (Ctx)'Old + and (if + Field_Size (Ctx, F_Vector) > 0 + then + Present (Ctx, F_Vector)); + + procedure Switch_To_Vector (Ctx : in out Context; Seq_Ctx : out Sequence.Modular_Vector.Context) with + Pre => + not Ctx'Constrained + and then not Seq_Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Vector) + and then Field_Size (Ctx, F_Vector) > 0 + and then Field_First (Ctx, F_Vector) mod RFLX_Types.Byte'Size = 1 + and then Field_Condition (Ctx, (Fld => F_Vector)) + and then Available_Space (Ctx, F_Vector) >= Field_Size (Ctx, F_Vector), + Post => + not Has_Buffer (Ctx) + and Sequence.Modular_Vector.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Seq_Ctx.Buffer_First + and Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and Seq_Ctx.First = Field_First (Ctx, F_Vector) + and Seq_Ctx.Last = Field_Last (Ctx, F_Vector) + and Sequence.Modular_Vector.Valid (Seq_Ctx) + and Sequence.Modular_Vector.Sequence_Last (Seq_Ctx) = Seq_Ctx.First - 1 + and Present (Ctx, F_Vector) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Vector) = Predecessor (Ctx, F_Vector)'Old + and Path_Condition (Ctx, F_Vector) = Path_Condition (Ctx, F_Vector)'Old + and Context_Cursor (Ctx, F_Header) = Context_Cursor (Ctx, F_Header)'Old, + Contract_Cases => + (Structural_Valid (Ctx, F_Vector) => + True, + others => + True); + + function Complete_Vector (Ctx : Context; Seq_Ctx : Sequence.Modular_Vector.Context) return Boolean with + Pre => + Valid_Next (Ctx, F_Vector); + + procedure Update_Vector (Ctx : in out Context; Seq_Ctx : in out Sequence.Modular_Vector.Context) with + Pre => + Present (Ctx, F_Vector) + and then Complete_Vector (Ctx, Seq_Ctx) + and then not Has_Buffer (Ctx) + and then Sequence.Modular_Vector.Has_Buffer (Seq_Ctx) + and then Ctx.Buffer_First = Seq_Ctx.Buffer_First + and then Ctx.Buffer_Last = Seq_Ctx.Buffer_Last + and then Seq_Ctx.First = Field_First (Ctx, F_Vector) + and then Seq_Ctx.Last = Field_Last (Ctx, F_Vector), + Post => + Present (Ctx, F_Vector) + and Has_Buffer (Ctx) + and not Sequence.Modular_Vector.Has_Buffer (Seq_Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Seq_Ctx.First = Seq_Ctx.First'Old + and Seq_Ctx.Last = Seq_Ctx.Last'Old + and Field_First (Ctx, F_Vector) = Field_First (Ctx, F_Vector)'Old + and Field_Size (Ctx, F_Vector) = Field_Size (Ctx, F_Vector)'Old + and Context_Cursor (Ctx, F_Header) = Context_Cursor (Ctx, F_Header)'Old, + Depends => + (Ctx => (Ctx, Seq_Ctx), Seq_Ctx => Seq_Ctx); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Header => + Valid (Val.Header_Value), + when F_Vector => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_Vector)) + then + (Valid (Cursors (F_Header)) + and then Cursors (F_Vector).Predecessor = F_Header))) + and then ((if + Invalid (Cursors (F_Header)) + then + Invalid (Cursors (F_Vector)))) + and then (if + Structural_Valid (Cursors (F_Header)) + then + Cursors (F_Header).Last - Cursors (F_Header).First + 1 = RFLX.Sequence.Enumeration_Base'Size + and then Cursors (F_Header).Predecessor = F_Initial + and then Cursors (F_Header).First = First + and then (if + Structural_Valid (Cursors (F_Vector)) + then + Cursors (F_Vector).Last - Cursors (F_Vector).First + 1 = RFLX_Types.Bit_Length (Last - First + 1) - RFLX_Types.Bit_Length (Cursors (F_Header).Last - Cursors (F_Header).First + 1) + and then Cursors (F_Vector).Predecessor = F_Header + and then Cursors (F_Vector).First = Cursors (F_Header).Last + 1))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Header) + and then Field_First (Ctx, F_Header) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Header) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Header) + and then Invalid (Ctx, F_Vector)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Header => + True, + when others => + False), + when F_Header => + (case Fld is + when F_Vector => + True, + when others => + False), + when F_Vector | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial | F_Header | F_Vector => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Header => + RFLX.Sequence.Enumeration_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Header => + (case Fld is + when F_Vector => + RFLX_Types.Bit_Length (Ctx.Last - Ctx.First + 1) - RFLX_Types.Bit_Length (Ctx.Cursors (F_Header).Last - Ctx.Cursors (F_Header).First + 1), + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Vector | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Header => + Ctx.First, + when F_Vector => + (if + Ctx.Cursors (Fld).Predecessor = F_Header + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Header => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Vector => + (Valid (Ctx.Cursors (F_Header)) + and Ctx.Cursors (Fld).Predecessor = F_Header), + when F_Final => + (Structural_Valid (Ctx.Cursors (F_Vector)) + and Ctx.Cursors (Fld).Predecessor = F_Vector))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Header) + and then Structural_Valid (Ctx, F_Vector)); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Header) + and then Valid (Ctx, F_Vector)); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Header) + or Incomplete (Ctx, F_Vector)); + + function Get_Header (Ctx : Context) return RFLX.Sequence.Enumeration is + (To_Actual (Ctx.Cursors (F_Header).Value.Header_Value)); + + function Complete_Vector (Ctx : Context; Seq_Ctx : Sequence.Modular_Vector.Context) return Boolean is + (Sequence.Modular_Vector.Valid (Seq_Ctx) + and Sequence.Modular_Vector.Size (Seq_Ctx) = Field_Size (Ctx, F_Vector)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.Sequence.Sequence_Size_Defined_By_Message_Size; diff --git a/tests/spark/generated/rflx-tlv-generic_message.ads b/tests/spark/generated/rflx-tlv-generic_message.ads deleted file mode 100644 index edec309c0..000000000 --- a/tests/spark/generated/rflx-tlv-generic_message.ads +++ /dev/null @@ -1,727 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); -package RFLX.TLV.Generic_Message with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes, Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Tag, F_Length, F_Value, F_Final); - - subtype Field is Virtual_Field range F_Tag .. F_Value; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Value | F_Final => - null; - when F_Tag => - Tag_Value : RFLX.TLV.Tag_Base; - when F_Length => - Length_Value : RFLX.TLV.Length; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean with - Pre => - Has_Buffer (Ctx) - and Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - function Get_Tag (Ctx : Context) return RFLX.TLV.Tag with - Pre => - Valid (Ctx, F_Tag); - - function Get_Length (Ctx : Context) return RFLX.TLV.Length with - Pre => - Valid (Ctx, F_Length); - - pragma Warnings (On, "precondition is always False"); - - generic - with procedure Process_Value (Value : Types.Bytes); - procedure Get_Value (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Value); - - procedure Set_Tag (Ctx : in out Context; Val : RFLX.TLV.Tag) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Tag) - and then Field_Condition (Ctx, (F_Tag, To_Base (Val))) - and then True - and then Available_Space (Ctx, F_Tag) >= Field_Size (Ctx, F_Tag), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Tag) - and Get_Tag (Ctx) = Val - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Tag)) - and Invalid (Ctx, F_Length) - and Invalid (Ctx, F_Value) - and (if - Types.U64 (To_Base (Get_Tag (Ctx))) = Types.U64 (To_Base (Msg_Data)) - then - Predecessor (Ctx, F_Length) = F_Tag - and Valid_Next (Ctx, F_Length)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Tag) = Predecessor (Ctx, F_Tag)'Old - and Valid_Next (Ctx, F_Tag) = Valid_Next (Ctx, F_Tag)'Old; - - procedure Set_Length (Ctx : in out Context; Val : RFLX.TLV.Length) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Length) - and then Field_Condition (Ctx, (F_Length, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Length) >= Field_Size (Ctx, F_Length), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Length) - and Get_Length (Ctx) = Val - and Invalid (Ctx, F_Value) - and (Predecessor (Ctx, F_Value) = F_Length - and Valid_Next (Ctx, F_Value)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Length) = Predecessor (Ctx, F_Length)'Old - and Valid_Next (Ctx, F_Length) = Valid_Next (Ctx, F_Length)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old; - - procedure Set_Value_Empty (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) - and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) - and then Field_First (Ctx, F_Value) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Value) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Value) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Value) = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Value) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Value)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old - and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old; - - procedure Initialize_Value (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) - and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) - and then Field_First (Ctx, F_Value) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Value) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Value) mod Types.Byte'Size = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Value) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Value)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old - and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old; - - procedure Set_Value (Ctx : in out Context; Value : Types.Bytes) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) - and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) - and then Field_First (Ctx, F_Value) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Value) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Value) mod Types.Byte'Size = 0 - and then Value'Length = Types.Byte_Index (Field_Last (Ctx, F_Value)) - Types.Byte_Index (Field_First (Ctx, F_Value)) + 1, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Value) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Value)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old - and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old; - - generic - with procedure Process_Value (Value : out Types.Bytes); - with function Valid_Length (Length : Types.Length) return Boolean; - procedure Generic_Set_Value (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) - and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) - and then Field_First (Ctx, F_Value) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Value) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Value) mod Types.Byte'Size = 0 - and then Valid_Length (Types.Length (Field_Size (Ctx, F_Value) / Types.Byte'Size)), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Value) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Value)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old - and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old - and Get_Tag (Ctx) = Get_Tag (Ctx)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old; - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Tag => - Valid (Val.Tag_Value), - when F_Length => - Valid (Val.Length_Value), - when F_Value => - True, - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then ((if - Structural_Valid (Cursors (F_Length)) - then - (Valid (Cursors (F_Tag)) - and then Cursors (F_Length).Predecessor = F_Tag - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Data)))) - and then (if - Structural_Valid (Cursors (F_Value)) - then - (Valid (Cursors (F_Length)) - and then Cursors (F_Value).Predecessor = F_Length))) - and then ((if - Invalid (Cursors (F_Tag)) - then - Invalid (Cursors (F_Length))) - and then (if - Invalid (Cursors (F_Length)) - then - Invalid (Cursors (F_Value)))) - and then (if - Structural_Valid (Cursors (F_Tag)) - then - Cursors (F_Tag).Last - Cursors (F_Tag).First + 1 = RFLX.TLV.Tag_Base'Size - and then Cursors (F_Tag).Predecessor = F_Initial - and then Cursors (F_Tag).First = First - and then (if - Structural_Valid (Cursors (F_Length)) - and then Types.U64 (Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Data)) - then - Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.TLV.Length'Size - and then Cursors (F_Length).Predecessor = F_Tag - and then Cursors (F_Length).First = Cursors (F_Tag).Last + 1 - and then (if - Structural_Valid (Cursors (F_Value)) - then - Cursors (F_Value).Last - Cursors (F_Value).First + 1 = Types.Bit_Length (Cursors (F_Length).Value.Length_Value) * 8 - and then Cursors (F_Value).Predecessor = F_Length - and then Cursors (F_Value).First = Cursors (F_Length).Last + 1)))); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Tag) - and then Field_First (Ctx, F_Tag) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Tag) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Tag) - and then Invalid (Ctx, F_Length) - and then Invalid (Ctx, F_Value)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Tag => - True, - when others => - False), - when F_Tag => - (case Fld is - when F_Length => - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Data)), - when others => - False), - when F_Length => - (case Fld is - when F_Value => - True, - when others => - False), - when F_Value | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Initial => - True, - when F_Tag => - Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Msg_Error)) - or Types.U64 (Val.Tag_Value) = Types.U64 (To_Base (Msg_Data)), - when F_Length | F_Value => - True, - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Tag => - RFLX.TLV.Tag_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Tag => - (case Fld is - when F_Length => - RFLX.TLV.Length'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Length => - (case Fld is - when F_Value => - Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, - when others => - Types.Unreachable_Bit_Length), - when F_Value | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Tag => - Ctx.First, - when F_Length => - (if - Ctx.Cursors (Fld).Predecessor = F_Tag - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Data)) - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Value => - (if - Ctx.Cursors (Fld).Predecessor = F_Length - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length))); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Tag => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_Length => - (Valid (Ctx.Cursors (F_Tag)) - and Ctx.Cursors (Fld).Predecessor = F_Tag), - when F_Value => - (Valid (Ctx.Cursors (F_Length)) - and Ctx.Cursors (Fld).Predecessor = F_Length), - when F_Final => - (Valid (Ctx.Cursors (F_Tag)) - and Ctx.Cursors (Fld).Predecessor = F_Tag) - or (Structural_Valid (Ctx.Cursors (F_Value)) - and Ctx.Cursors (Fld).Predecessor = F_Value))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Tag) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Error)) - or (Valid (Ctx, F_Length) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Data)) - and then Structural_Valid (Ctx, F_Value)))); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Tag) - and then (Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Error)) - or (Valid (Ctx, F_Length) - and then Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Data)) - and then Valid (Ctx, F_Value)))); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Tag) - or Incomplete (Ctx, F_Length) - or Incomplete (Ctx, F_Value)); - - function Get_Tag (Ctx : Context) return RFLX.TLV.Tag is - (To_Actual (Ctx.Cursors (F_Tag).Value.Tag_Value)); - - function Get_Length (Ctx : Context) return RFLX.TLV.Length is - (To_Actual (Ctx.Cursors (F_Length).Value.Length_Value)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.TLV.Generic_Message; diff --git a/tests/spark/generated/rflx-tlv-generic_message.adb b/tests/spark/generated/rflx-tlv-message.adb similarity index 72% rename from tests/spark/generated/rflx-tlv-generic_message.adb rename to tests/spark/generated/rflx-tlv-message.adb index 7885c5e40..df02ddd4b 100644 --- a/tests/spark/generated/rflx-tlv-generic_message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.TLV.Generic_Message with +package body RFLX.TLV.Message with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Tag => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -64,11 +64,11 @@ is ((case Fld is when F_Tag => (if - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Error)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Error)) then F_Final elsif - Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = Types.U64 (To_Base (Msg_Data)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)) then F_Length else @@ -96,8 +96,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -105,11 +104,11 @@ is Has_Buffer (Ctx) and Valid_Next (Ctx, Fld); - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean is + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Value => - Ctx.Buffer.all (Types.Byte_Index (Field_First (Ctx, Fld)) .. Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -142,9 +141,9 @@ is and Ctx.Cursors (F_Length) = Ctx.Cursors (F_Length)'Old and Invalid (Ctx, F_Value)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -183,16 +182,16 @@ is Post => Get_Field_Value'Result.Fld = Fld is - First : constant Types.Bit_Index := Field_First (Ctx, Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - function Extract is new Types.Extract (RFLX.TLV.Tag_Base); - function Extract is new Types.Extract (RFLX.TLV.Length); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.TLV.Tag_Base); + function Extract is new RFLX_Types.Extract (RFLX.TLV.Length); begin return ((case Fld is when F_Tag => @@ -222,7 +221,7 @@ is Fld = F_Tag or Fld = F_Value then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); @@ -253,13 +252,13 @@ is end Verify_Message; procedure Get_Value (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Value).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Value).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).Last); begin Process_Value (Ctx.Buffer.all (First .. Last)); end Get_Value; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out Types.Bit_Index) with + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -289,16 +288,16 @@ is and Ctx.Last = Ctx.Last'Old and Ctx.Cursors = Ctx.Cursors'Old is - First : constant Types.Bit_Index := Field_First (Ctx, Val.Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Val.Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - procedure Insert is new Types.Insert (RFLX.TLV.Tag_Base); - procedure Insert is new Types.Insert (RFLX.TLV.Length); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.TLV.Tag_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.TLV.Length); begin Fst := First; Lst := Last; @@ -316,7 +315,7 @@ is procedure Set_Tag (Ctx : in out Context; Val : RFLX.TLV.Tag) is Field_Value : constant Field_Dependent_Value := (F_Tag, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Tag); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -327,7 +326,7 @@ is procedure Set_Length (Ctx : in out Context; Val : RFLX.TLV.Length) is Field_Value : constant Field_Dependent_Value := (F_Length, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Length); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -337,8 +336,8 @@ is end Set_Length; procedure Set_Value_Empty (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Value); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Value); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); begin Reset_Dependent_Fields (Ctx, F_Value); Ctx.Message_Last := Last; @@ -353,9 +352,9 @@ is and then Valid_Next (Ctx, F_Value) and then Field_Condition (Ctx, (Fld => F_Value)) and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) - and then Field_First (Ctx, F_Value) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Value) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Value) mod Types.Byte'Size = 0, + and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0, Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Value) @@ -369,8 +368,8 @@ is and Get_Tag (Ctx) = Get_Tag (Ctx)'Old and Get_Length (Ctx) = Get_Length (Ctx)'Old is - First : constant Types.Bit_Index := Field_First (Ctx, F_Value); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Value); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); begin Reset_Dependent_Fields (Ctx, F_Value); Ctx.Message_Last := Last; @@ -383,28 +382,28 @@ is Initialize_Value_Private (Ctx); end Initialize_Value; - procedure Set_Value (Ctx : in out Context; Value : Types.Bytes) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Value); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Value); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Value (Ctx : in out Context; Value : RFLX_Types.Bytes) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Value_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; end Set_Value; procedure Generic_Set_Value (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Value); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Value); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Value_Private (Ctx); Process_Value (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Generic_Set_Value; -end RFLX.TLV.Generic_Message; +end RFLX.TLV.Message; diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index 0ddc51ae2..e11e4e333 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -1,7 +1,733 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.TLV.Generic_Message; -package RFLX.TLV.Message is new RFLX.TLV.Generic_Message (RFLX.RFLX_Types); +package RFLX.TLV.Message with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Tag, F_Length, F_Value, F_Final); + + subtype Field is Virtual_Field range F_Tag .. F_Value; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Value | F_Final => + null; + when F_Tag => + Tag_Value : RFLX.TLV.Tag_Base; + when F_Length => + Length_Value : RFLX.TLV.Length; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Tag (Ctx : Context) return RFLX.TLV.Tag with + Pre => + Valid (Ctx, F_Tag); + + function Get_Length (Ctx : Context) return RFLX.TLV.Length with + Pre => + Valid (Ctx, F_Length); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Value (Value : RFLX_Types.Bytes); + procedure Get_Value (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Value); + + procedure Set_Tag (Ctx : in out Context; Val : RFLX.TLV.Tag) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Tag) + and then Field_Condition (Ctx, (F_Tag, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Tag) >= Field_Size (Ctx, F_Tag), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Tag) + and Get_Tag (Ctx) = Val + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Tag)) + and Invalid (Ctx, F_Length) + and Invalid (Ctx, F_Value) + and (if + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Msg_Data)) + then + Predecessor (Ctx, F_Length) = F_Tag + and Valid_Next (Ctx, F_Length)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Tag) = Predecessor (Ctx, F_Tag)'Old + and Valid_Next (Ctx, F_Tag) = Valid_Next (Ctx, F_Tag)'Old; + + procedure Set_Length (Ctx : in out Context; Val : RFLX.TLV.Length) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Length) + and then Field_Condition (Ctx, (F_Length, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Length) >= Field_Size (Ctx, F_Length), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Length) + and Get_Length (Ctx) = Val + and Invalid (Ctx, F_Value) + and (Predecessor (Ctx, F_Value) = F_Length + and Valid_Next (Ctx, F_Value)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Length) = Predecessor (Ctx, F_Length)'Old + and Valid_Next (Ctx, F_Length) = Valid_Next (Ctx, F_Length)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Context_Cursor (Ctx, F_Tag) = Context_Cursor (Ctx, F_Tag)'Old; + + procedure Set_Value_Empty (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Value) + and then Field_Condition (Ctx, (Fld => F_Value)) + and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) + and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Value) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Value)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old + and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + procedure Initialize_Value (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Value) + and then Field_Condition (Ctx, (Fld => F_Value)) + and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) + and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Value) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Value)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old + and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + procedure Set_Value (Ctx : in out Context; Value : RFLX_Types.Bytes) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Value) + and then Field_Condition (Ctx, (Fld => F_Value)) + and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) + and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Value)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Value)) + 1, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Value) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Value)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old + and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + generic + with procedure Process_Value (Value : out RFLX_Types.Bytes); + with function Valid_Length (Length : RFLX_Types.Length) return Boolean; + procedure Generic_Set_Value (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Value) + and then Field_Condition (Ctx, (Fld => F_Value)) + and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) + and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 + and then Valid_Length (RFLX_Types.Length (Field_Size (Ctx, F_Value) / RFLX_Types.Byte'Size)), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Value) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Value)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Value) = Predecessor (Ctx, F_Value)'Old + and Valid_Next (Ctx, F_Value) = Valid_Next (Ctx, F_Value)'Old + and Get_Tag (Ctx) = Get_Tag (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old; + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Tag => + Valid (Val.Tag_Value), + when F_Length => + Valid (Val.Length_Value), + when F_Value => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_Length)) + then + (Valid (Cursors (F_Tag)) + and then Cursors (F_Length).Predecessor = F_Tag + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)))) + and then (if + Structural_Valid (Cursors (F_Value)) + then + (Valid (Cursors (F_Length)) + and then Cursors (F_Value).Predecessor = F_Length))) + and then ((if + Invalid (Cursors (F_Tag)) + then + Invalid (Cursors (F_Length))) + and then (if + Invalid (Cursors (F_Length)) + then + Invalid (Cursors (F_Value)))) + and then (if + Structural_Valid (Cursors (F_Tag)) + then + Cursors (F_Tag).Last - Cursors (F_Tag).First + 1 = RFLX.TLV.Tag_Base'Size + and then Cursors (F_Tag).Predecessor = F_Initial + and then Cursors (F_Tag).First = First + and then (if + Structural_Valid (Cursors (F_Length)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)) + then + Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.TLV.Length'Size + and then Cursors (F_Length).Predecessor = F_Tag + and then Cursors (F_Length).First = Cursors (F_Tag).Last + 1 + and then (if + Structural_Valid (Cursors (F_Value)) + then + Cursors (F_Value).Last - Cursors (F_Value).First + 1 = RFLX_Types.Bit_Length (Cursors (F_Length).Value.Length_Value) * 8 + and then Cursors (F_Value).Predecessor = F_Length + and then Cursors (F_Value).First = Cursors (F_Length).Last + 1)))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Tag) + and then Field_First (Ctx, F_Tag) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Tag) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Tag) + and then Invalid (Ctx, F_Length) + and then Invalid (Ctx, F_Value)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Tag => + True, + when others => + False), + when F_Tag => + (case Fld is + when F_Length => + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)), + when others => + False), + when F_Length => + (case Fld is + when F_Value => + True, + when others => + False), + when F_Value | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial => + True, + when F_Tag => + RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Error)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)), + when F_Length | F_Value => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Tag => + RFLX.TLV.Tag_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Tag => + (case Fld is + when F_Length => + RFLX.TLV.Length'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Length => + (case Fld is + when F_Value => + RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Value | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Tag => + Ctx.First, + when F_Length => + (if + Ctx.Cursors (Fld).Predecessor = F_Tag + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)) + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Value => + (if + Ctx.Cursors (Fld).Predecessor = F_Length + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Tag => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Length => + (Valid (Ctx.Cursors (F_Tag)) + and Ctx.Cursors (Fld).Predecessor = F_Tag), + when F_Value => + (Valid (Ctx.Cursors (F_Length)) + and Ctx.Cursors (Fld).Predecessor = F_Length), + when F_Final => + (Valid (Ctx.Cursors (F_Tag)) + and Ctx.Cursors (Fld).Predecessor = F_Tag) + or (Structural_Valid (Ctx.Cursors (F_Value)) + and Ctx.Cursors (Fld).Predecessor = F_Value))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Tag) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Error)) + or (Valid (Ctx, F_Length) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)) + and then Structural_Valid (Ctx, F_Value)))); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Tag) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Error)) + or (Valid (Ctx, F_Length) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)) + and then Valid (Ctx, F_Value)))); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Tag) + or Incomplete (Ctx, F_Length) + or Incomplete (Ctx, F_Value)); + + function Get_Tag (Ctx : Context) return RFLX.TLV.Tag is + (To_Actual (Ctx.Cursors (F_Tag).Value.Tag_Value)); + + function Get_Length (Ctx : Context) return RFLX.TLV.Length is + (To_Actual (Ctx.Cursors (F_Length).Value.Length_Value)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.TLV.Message; diff --git a/tests/spark/generated/rflx-udp-generic_datagram.adb b/tests/spark/generated/rflx-udp-datagram.adb similarity index 78% rename from tests/spark/generated/rflx-udp-generic_datagram.adb rename to tests/spark/generated/rflx-udp-datagram.adb index fea9dfec3..f83403bf3 100644 --- a/tests/spark/generated/rflx-udp-generic_datagram.adb +++ b/tests/spark/generated/rflx-udp-datagram.adb @@ -1,18 +1,18 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -package body RFLX.UDP.Generic_Datagram with +package body RFLX.UDP.Datagram with SPARK_Mode is - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Types.First_Bit_Index (Buffer'First), Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) is - Buffer_First : constant Types.Index := Buffer'First; - Buffer_Last : constant Types.Index := Buffer'Last; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Source_Port => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); Buffer := null; @@ -24,39 +24,39 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) is + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; Ctx.Buffer := null; end Take_Buffer; - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) is + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); else - Buffer := Ctx.Buffer.all (Types.Index'Last .. Types.Index'First); + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; end Copy; procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is begin Reset (Ctx); - Write (Ctx.Buffer.all (Types.Byte_Index (Ctx.First) .. Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); end Write; - function Byte_Size (Ctx : Context) return Types.Length is + function Byte_Size (Ctx : Context) return RFLX_Types.Length is ((if Ctx.Message_Last = Ctx.First - 1 then 0 else - Types.Length (Types.Byte_Index (Ctx.Message_Last) - Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -95,8 +95,7 @@ is function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is (Ctx.Buffer /= null - and Field_Size (Ctx, Fld) >= 0 - and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < Types.Bit_Length'Last + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last and Ctx.First <= Field_First (Ctx, Fld) and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) with @@ -104,11 +103,11 @@ is Has_Buffer (Ctx) and Valid_Next (Ctx, Fld); - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean is + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Payload => - Ctx.Buffer.all (Types.Byte_Index (Field_First (Ctx, Fld)) .. Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -159,9 +158,9 @@ is and Ctx.Cursors (F_Checksum) = Ctx.Cursors (F_Checksum)'Old and Invalid (Ctx, F_Payload)) is - First : constant Types.Bit_Length := Field_First (Ctx, Fld) with + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with Ghost; - Size : constant Types.Bit_Length := Field_Size (Ctx, Fld) with + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with Ghost; begin pragma Assert (Field_First (Ctx, Fld) = First @@ -215,17 +214,17 @@ is Post => Get_Field_Value'Result.Fld = Fld is - First : constant Types.Bit_Index := Field_First (Ctx, Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - function Extract is new Types.Extract (RFLX.UDP.Port); - function Extract is new Types.Extract (RFLX.UDP.Length_Base); - function Extract is new Types.Extract (RFLX.UDP.Checksum); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.UDP.Port); + function Extract is new RFLX_Types.Extract (RFLX.UDP.Length_Base); + function Extract is new RFLX_Types.Extract (RFLX.UDP.Checksum); begin return ((case Fld is when F_Source_Port => @@ -258,7 +257,7 @@ is pragma Assert ((if Fld = F_Payload then - Field_Last (Ctx, Fld) mod Types.Byte'Size = 0)); + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); @@ -295,13 +294,13 @@ is end Verify_Message; procedure Get_Payload (Ctx : Context) is - First : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant Types.Index := Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); begin Process_Payload (Ctx.Buffer.all (First .. Last)); end Get_Payload; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out Types.Bit_Index) with + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -331,17 +330,17 @@ is and Ctx.Last = Ctx.Last'Old and Ctx.Cursors = Ctx.Cursors'Old is - First : constant Types.Bit_Index := Field_First (Ctx, Val.Fld); - Last : constant Types.Bit_Index := Field_Last (Ctx, Val.Fld); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); - function Offset return Types.Offset is - (Types.Offset ((8 - Last mod 8) mod 8)); - procedure Insert is new Types.Insert (RFLX.UDP.Port); - procedure Insert is new Types.Insert (RFLX.UDP.Length_Base); - procedure Insert is new Types.Insert (RFLX.UDP.Checksum); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.UDP.Port); + procedure Insert is new RFLX_Types.Insert (RFLX.UDP.Length_Base); + procedure Insert is new RFLX_Types.Insert (RFLX.UDP.Checksum); begin Fst := First; Lst := Last; @@ -363,7 +362,7 @@ is procedure Set_Source_Port (Ctx : in out Context; Val : RFLX.UDP.Port) is Field_Value : constant Field_Dependent_Value := (F_Source_Port, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Source_Port); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -374,7 +373,7 @@ is procedure Set_Destination_Port (Ctx : in out Context; Val : RFLX.UDP.Port) is Field_Value : constant Field_Dependent_Value := (F_Destination_Port, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Destination_Port); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -385,7 +384,7 @@ is procedure Set_Length (Ctx : in out Context; Val : RFLX.UDP.Length) is Field_Value : constant Field_Dependent_Value := (F_Length, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Length); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -396,7 +395,7 @@ is procedure Set_Checksum (Ctx : in out Context; Val : RFLX.UDP.Checksum) is Field_Value : constant Field_Dependent_Value := (F_Checksum, To_Base (Val)); - First, Last : Types.Bit_Index; + First, Last : RFLX_Types.Bit_Index; begin Reset_Dependent_Fields (Ctx, F_Checksum); Set_Field_Value (Ctx, Field_Value, First, Last); @@ -406,8 +405,8 @@ is end Set_Checksum; procedure Set_Payload_Empty (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; @@ -422,9 +421,9 @@ is and then Valid_Next (Ctx, F_Payload) and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0, + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0, Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -440,8 +439,8 @@ is and Get_Length (Ctx) = Get_Length (Ctx)'Old and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; @@ -454,28 +453,28 @@ is Initialize_Payload_Private (Ctx); end Initialize_Payload; - procedure Set_Payload (Ctx : in out Context; Value : Types.Bytes) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; end Set_Payload; procedure Generic_Set_Payload (Ctx : in out Context) is - First : constant Types.Bit_Index := Field_First (Ctx, F_Payload); - Last : constant Types.Bit_Index := Field_Last (Ctx, F_Payload); - function Buffer_First return Types.Index is - (Types.Byte_Index (First)); - function Buffer_Last return Types.Index is - (Types.Byte_Index (Last)); + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.Byte_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Generic_Set_Payload; -end RFLX.UDP.Generic_Datagram; +end RFLX.UDP.Datagram; diff --git a/tests/spark/generated/rflx-udp-datagram.ads b/tests/spark/generated/rflx-udp-datagram.ads index b3bafdbba..3bf648b31 100644 --- a/tests/spark/generated/rflx-udp-datagram.ads +++ b/tests/spark/generated/rflx-udp-datagram.ads @@ -1,7 +1,883 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); pragma Warnings (Off, "redundant conversion"); -pragma SPARK_Mode; with RFLX.RFLX_Types; -with RFLX.UDP.Generic_Datagram; -package RFLX.UDP.Datagram is new RFLX.UDP.Generic_Datagram (RFLX.RFLX_Types); +package RFLX.UDP.Datagram with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Source_Port, F_Destination_Port, F_Length, F_Checksum, F_Payload, F_Final); + + subtype Field is Virtual_Field range F_Source_Port .. F_Payload; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + Default_Initial_Condition => + RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Payload | F_Final => + null; + when F_Source_Port => + Source_Port_Value : RFLX.UDP.Port; + when F_Destination_Port => + Destination_Port_Value : RFLX.UDP.Port; + when F_Length => + Length_Value : RFLX.UDP.Length_Base; + when F_Checksum => + Checksum_Value : RFLX.UDP.Checksum; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.Byte_Index (First) >= Buffer'First + and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then First <= Last + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes); + procedure Write (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Source_Port (Ctx : Context) return RFLX.UDP.Port with + Pre => + Valid (Ctx, F_Source_Port); + + function Get_Destination_Port (Ctx : Context) return RFLX.UDP.Port with + Pre => + Valid (Ctx, F_Destination_Port); + + function Get_Length (Ctx : Context) return RFLX.UDP.Length with + Pre => + Valid (Ctx, F_Length); + + function Get_Checksum (Ctx : Context) return RFLX.UDP.Checksum with + Pre => + Valid (Ctx, F_Checksum); + + pragma Warnings (On, "precondition is always False"); + + generic + with procedure Process_Payload (Payload : RFLX_Types.Bytes); + procedure Get_Payload (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Payload); + + procedure Set_Source_Port (Ctx : in out Context; Val : RFLX.UDP.Port) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Source_Port) + and then Field_Condition (Ctx, (F_Source_Port, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Source_Port) >= Field_Size (Ctx, F_Source_Port), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Source_Port) + and Get_Source_Port (Ctx) = Val + and Invalid (Ctx, F_Destination_Port) + and Invalid (Ctx, F_Length) + and Invalid (Ctx, F_Checksum) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Destination_Port) = F_Source_Port + and Valid_Next (Ctx, F_Destination_Port)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Source_Port) = Predecessor (Ctx, F_Source_Port)'Old + and Valid_Next (Ctx, F_Source_Port) = Valid_Next (Ctx, F_Source_Port)'Old; + + procedure Set_Destination_Port (Ctx : in out Context; Val : RFLX.UDP.Port) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Destination_Port) + and then Field_Condition (Ctx, (F_Destination_Port, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Destination_Port) >= Field_Size (Ctx, F_Destination_Port), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Destination_Port) + and Get_Destination_Port (Ctx) = Val + and Invalid (Ctx, F_Length) + and Invalid (Ctx, F_Checksum) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Length) = F_Destination_Port + and Valid_Next (Ctx, F_Length)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Destination_Port) = Predecessor (Ctx, F_Destination_Port)'Old + and Valid_Next (Ctx, F_Destination_Port) = Valid_Next (Ctx, F_Destination_Port)'Old + and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old + and Context_Cursor (Ctx, F_Source_Port) = Context_Cursor (Ctx, F_Source_Port)'Old; + + procedure Set_Length (Ctx : in out Context; Val : RFLX.UDP.Length) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Length) + and then Field_Condition (Ctx, (F_Length, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Length) >= Field_Size (Ctx, F_Length), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Length) + and Get_Length (Ctx) = Val + and Invalid (Ctx, F_Checksum) + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Checksum) = F_Length + and Valid_Next (Ctx, F_Checksum)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Length) = Predecessor (Ctx, F_Length)'Old + and Valid_Next (Ctx, F_Length) = Valid_Next (Ctx, F_Length)'Old + and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old + and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old + and Context_Cursor (Ctx, F_Source_Port) = Context_Cursor (Ctx, F_Source_Port)'Old + and Context_Cursor (Ctx, F_Destination_Port) = Context_Cursor (Ctx, F_Destination_Port)'Old; + + procedure Set_Checksum (Ctx : in out Context; Val : RFLX.UDP.Checksum) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Checksum) + and then Field_Condition (Ctx, (F_Checksum, To_Base (Val))) + and then Valid (To_Base (Val)) + and then Available_Space (Ctx, F_Checksum) >= Field_Size (Ctx, F_Checksum), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Checksum) + and Get_Checksum (Ctx) = Val + and Invalid (Ctx, F_Payload) + and (Predecessor (Ctx, F_Payload) = F_Checksum + and Valid_Next (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Checksum) = Predecessor (Ctx, F_Checksum)'Old + and Valid_Next (Ctx, F_Checksum) = Valid_Next (Ctx, F_Checksum)'Old + and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old + and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old + and Context_Cursor (Ctx, F_Source_Port) = Context_Cursor (Ctx, F_Source_Port)'Old + and Context_Cursor (Ctx, F_Destination_Port) = Context_Cursor (Ctx, F_Destination_Port)'Old + and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old; + + procedure Set_Payload_Empty (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old + and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; + + procedure Initialize_Payload (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old + and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; + + procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Payload)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old + and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; + + generic + with procedure Process_Payload (Payload : out RFLX_Types.Bytes); + with function Valid_Length (Length : RFLX_Types.Length) return Boolean; + procedure Generic_Set_Payload (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Field_Condition (Ctx, (Fld => F_Payload)) + and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) + and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 + and then Valid_Length (RFLX_Types.Length (Field_Size (Ctx, F_Payload) / RFLX_Types.Byte'Size)), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Payload) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old + and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old + and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old + and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old + and Get_Length (Ctx) = Get_Length (Ctx)'Old + and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Source_Port => + Valid (Val.Source_Port_Value), + when F_Destination_Port => + Valid (Val.Destination_Port_Value), + when F_Length => + Valid (Val.Length_Value), + when F_Checksum => + Valid (Val.Checksum_Value), + when F_Payload => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.Byte_Index (First) >= Buffer_First + and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_Destination_Port)) + then + (Valid (Cursors (F_Source_Port)) + and then Cursors (F_Destination_Port).Predecessor = F_Source_Port)) + and then (if + Structural_Valid (Cursors (F_Length)) + then + (Valid (Cursors (F_Destination_Port)) + and then Cursors (F_Length).Predecessor = F_Destination_Port)) + and then (if + Structural_Valid (Cursors (F_Checksum)) + then + (Valid (Cursors (F_Length)) + and then Cursors (F_Checksum).Predecessor = F_Length)) + and then (if + Structural_Valid (Cursors (F_Payload)) + then + (Valid (Cursors (F_Checksum)) + and then Cursors (F_Payload).Predecessor = F_Checksum))) + and then ((if + Invalid (Cursors (F_Source_Port)) + then + Invalid (Cursors (F_Destination_Port))) + and then (if + Invalid (Cursors (F_Destination_Port)) + then + Invalid (Cursors (F_Length))) + and then (if + Invalid (Cursors (F_Length)) + then + Invalid (Cursors (F_Checksum))) + and then (if + Invalid (Cursors (F_Checksum)) + then + Invalid (Cursors (F_Payload)))) + and then (if + Structural_Valid (Cursors (F_Source_Port)) + then + Cursors (F_Source_Port).Last - Cursors (F_Source_Port).First + 1 = RFLX.UDP.Port'Size + and then Cursors (F_Source_Port).Predecessor = F_Initial + and then Cursors (F_Source_Port).First = First + and then (if + Structural_Valid (Cursors (F_Destination_Port)) + then + Cursors (F_Destination_Port).Last - Cursors (F_Destination_Port).First + 1 = RFLX.UDP.Port'Size + and then Cursors (F_Destination_Port).Predecessor = F_Source_Port + and then Cursors (F_Destination_Port).First = Cursors (F_Source_Port).Last + 1 + and then (if + Structural_Valid (Cursors (F_Length)) + then + Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.UDP.Length_Base'Size + and then Cursors (F_Length).Predecessor = F_Destination_Port + and then Cursors (F_Length).First = Cursors (F_Destination_Port).Last + 1 + and then (if + Structural_Valid (Cursors (F_Checksum)) + then + Cursors (F_Checksum).Last - Cursors (F_Checksum).First + 1 = RFLX.UDP.Checksum'Size + and then Cursors (F_Checksum).Predecessor = F_Length + and then Cursors (F_Checksum).First = Cursors (F_Length).Last + 1 + and then (if + Structural_Valid (Cursors (F_Payload)) + then + Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = (RFLX_Types.Bit_Length (Cursors (F_Length).Value.Length_Value) - 8) * 8 + and then Cursors (F_Payload).Predecessor = F_Checksum + and then Cursors (F_Payload).First = Cursors (F_Checksum).Last + 1)))))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Source_Port) + and then Field_First (Ctx, F_Source_Port) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Source_Port) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Source_Port) + and then Invalid (Ctx, F_Destination_Port) + and then Invalid (Ctx, F_Length) + and then Invalid (Ctx, F_Checksum) + and then Invalid (Ctx, F_Payload)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Source_Port => + True, + when others => + False), + when F_Source_Port => + (case Fld is + when F_Destination_Port => + True, + when others => + False), + when F_Destination_Port => + (case Fld is + when F_Length => + True, + when others => + False), + when F_Length => + (case Fld is + when F_Checksum => + True, + when others => + False), + when F_Checksum => + (case Fld is + when F_Payload => + True, + when others => + False), + when F_Payload | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial | F_Source_Port | F_Destination_Port | F_Length | F_Checksum | F_Payload => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Source_Port => + RFLX.UDP.Port'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Source_Port => + (case Fld is + when F_Destination_Port => + RFLX.UDP.Port'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Destination_Port => + (case Fld is + when F_Length => + RFLX.UDP.Length_Base'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Length => + (case Fld is + when F_Checksum => + RFLX.UDP.Checksum'Size, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Checksum => + (case Fld is + when F_Payload => + (RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) - 8) * 8, + when others => + RFLX_Types.Unreachable_Bit_Length), + when F_Payload | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Source_Port => + Ctx.First, + when F_Destination_Port => + (if + Ctx.Cursors (Fld).Predecessor = F_Source_Port + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Length => + (if + Ctx.Cursors (Fld).Predecessor = F_Destination_Port + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Checksum => + (if + Ctx.Cursors (Fld).Predecessor = F_Length + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length), + when F_Payload => + (if + Ctx.Cursors (Fld).Predecessor = F_Checksum + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + RFLX_Types.Unreachable_Bit_Length))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Source_Port => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Destination_Port => + (Valid (Ctx.Cursors (F_Source_Port)) + and Ctx.Cursors (Fld).Predecessor = F_Source_Port), + when F_Length => + (Valid (Ctx.Cursors (F_Destination_Port)) + and Ctx.Cursors (Fld).Predecessor = F_Destination_Port), + when F_Checksum => + (Valid (Ctx.Cursors (F_Length)) + and Ctx.Cursors (Fld).Predecessor = F_Length), + when F_Payload => + (Valid (Ctx.Cursors (F_Checksum)) + and Ctx.Cursors (Fld).Predecessor = F_Checksum), + when F_Final => + (Structural_Valid (Ctx.Cursors (F_Payload)) + and Ctx.Cursors (Fld).Predecessor = F_Payload))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Source_Port) + and then Valid (Ctx, F_Destination_Port) + and then Valid (Ctx, F_Length) + and then Valid (Ctx, F_Checksum) + and then Structural_Valid (Ctx, F_Payload)); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Source_Port) + and then Valid (Ctx, F_Destination_Port) + and then Valid (Ctx, F_Length) + and then Valid (Ctx, F_Checksum) + and then Valid (Ctx, F_Payload)); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Source_Port) + or Incomplete (Ctx, F_Destination_Port) + or Incomplete (Ctx, F_Length) + or Incomplete (Ctx, F_Checksum) + or Incomplete (Ctx, F_Payload)); + + function Get_Source_Port (Ctx : Context) return RFLX.UDP.Port is + (To_Actual (Ctx.Cursors (F_Source_Port).Value.Source_Port_Value)); + + function Get_Destination_Port (Ctx : Context) return RFLX.UDP.Port is + (To_Actual (Ctx.Cursors (F_Destination_Port).Value.Destination_Port_Value)); + + function Get_Length (Ctx : Context) return RFLX.UDP.Length is + (To_Actual (Ctx.Cursors (F_Length).Value.Length_Value)); + + function Get_Checksum (Ctx : Context) return RFLX.UDP.Checksum is + (To_Actual (Ctx.Cursors (F_Checksum).Value.Checksum_Value)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.UDP.Datagram; diff --git a/tests/spark/generated/rflx-udp-generic_datagram.ads b/tests/spark/generated/rflx-udp-generic_datagram.ads deleted file mode 100644 index 736db2e6f..000000000 --- a/tests/spark/generated/rflx-udp-generic_datagram.ads +++ /dev/null @@ -1,877 +0,0 @@ -pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); -pragma Warnings (Off, "redundant conversion"); -with RFLX.RFLX_Generic_Types; - -generic - with package Types is new RFLX.RFLX_Generic_Types (<>); -package RFLX.UDP.Generic_Datagram with - SPARK_Mode, - Annotate => - (GNATprove, Terminating) -is - - pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); - - use type Types.Bytes, Types.Bytes_Ptr, Types.Length, Types.Index, Types.Bit_Index, Types.U64; - - pragma Warnings (On, "use clause for type ""U64"" * has no effect"); - - type Virtual_Field is (F_Initial, F_Source_Port, F_Destination_Port, F_Length, F_Checksum, F_Payload, F_Final); - - subtype Field is Virtual_Field range F_Source_Port .. F_Payload; - - type Field_Cursor is private with - Default_Initial_Condition => - False; - - type Field_Cursors is private with - Default_Initial_Condition => - False; - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is private with - Default_Initial_Condition => - Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0; - - type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is - record - case Fld is - when F_Initial | F_Payload | F_Final => - null; - when F_Source_Port => - Source_Port_Value : RFLX.UDP.Port; - when F_Destination_Port => - Destination_Port_Value : RFLX.UDP.Port; - when F_Length => - Length_Value : RFLX.UDP.Length_Base; - when F_Checksum => - Checksum_Value : RFLX.UDP.Checksum; - end case; - end record; - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Buffer'Last < Types.Index'Last, - Post => - Has_Buffer (Ctx) - and Buffer = null - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = Types.Last_Bit_Index (Ctx.Buffer_Last) - and Initialized (Ctx), - Depends => - (Ctx => Buffer, Buffer => null); - - procedure Initialize (Ctx : out Context; Buffer : in out Types.Bytes_Ptr; First, Last : Types.Bit_Index) with - Pre => - not Ctx'Constrained - and then Buffer /= null - and then Buffer'Length > 0 - and then Types.Byte_Index (First) >= Buffer'First - and then Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last < Types.Bit_Index'Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0, - Post => - Buffer = null - and Has_Buffer (Ctx) - and Ctx.Buffer_First = Buffer'First'Old - and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = First - and Ctx.Last = Last - and Initialized (Ctx), - Depends => - (Ctx => (Buffer, First, Last), Buffer => null); - - function Initialized (Ctx : Context) return Boolean with - Ghost; - - procedure Reset (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - procedure Take_Buffer (Ctx : in out Context; Buffer : out Types.Bytes_Ptr) with - Pre => - Has_Buffer (Ctx), - Post => - not Has_Buffer (Ctx) - and Buffer /= null - and Ctx.Buffer_First = Buffer'First - and Ctx.Buffer_Last = Buffer'Last - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, - Depends => - (Ctx => Ctx, Buffer => Ctx); - - procedure Copy (Ctx : Context; Buffer : out Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx) - and then Byte_Size (Ctx) = Buffer'Length; - - generic - with procedure Read (Buffer : Types.Bytes); - procedure Read (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - generic - with procedure Write (Buffer : out Types.Bytes); - procedure Write (Ctx : in out Context) with - Pre => - Has_Buffer (Ctx), - Post => - Has_Buffer (Ctx) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Initialized (Ctx); - - function Has_Buffer (Ctx : Context) return Boolean; - - function Byte_Size (Ctx : Context) return Types.Length; - - function Message_Last (Ctx : Context) return Types.Bit_Length with - Pre => - Has_Buffer (Ctx) - and then Structural_Valid_Message (Ctx); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean with - Pre => - Valid_Predecessor (Ctx, Fld); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with - Pre => - Has_Buffer (Ctx) - and Val.Fld in Field'Range - and Valid_Predecessor (Ctx, Val.Fld); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index with - Pre => - Valid_Next (Ctx, Fld) - and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean; - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length with - Pre => - Valid_Next (Ctx, Fld); - - function Equal (Ctx : Context; Fld : Field; Data : Types.Bytes) return Boolean with - Pre => - Has_Buffer (Ctx) - and Valid_Next (Ctx, Fld); - - procedure Verify (Ctx : in out Context; Fld : Field) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - procedure Verify_Message (Ctx : in out Context) with - Post => - Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old; - - function Present (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; - - function Valid (Ctx : Context; Fld : Field) return Boolean with - Post => - (if - Valid'Result - then - Structural_Valid (Ctx, Fld) - and Present (Ctx, Fld)); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean; - - function Invalid (Ctx : Context; Fld : Field) return Boolean; - - function Structural_Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Valid_Message (Ctx : Context) return Boolean with - Pre => - Has_Buffer (Ctx); - - function Incomplete_Message (Ctx : Context) return Boolean; - - pragma Warnings (Off, "precondition is always False"); - - function Get_Source_Port (Ctx : Context) return RFLX.UDP.Port with - Pre => - Valid (Ctx, F_Source_Port); - - function Get_Destination_Port (Ctx : Context) return RFLX.UDP.Port with - Pre => - Valid (Ctx, F_Destination_Port); - - function Get_Length (Ctx : Context) return RFLX.UDP.Length with - Pre => - Valid (Ctx, F_Length); - - function Get_Checksum (Ctx : Context) return RFLX.UDP.Checksum with - Pre => - Valid (Ctx, F_Checksum); - - pragma Warnings (On, "precondition is always False"); - - generic - with procedure Process_Payload (Payload : Types.Bytes); - procedure Get_Payload (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Payload); - - procedure Set_Source_Port (Ctx : in out Context; Val : RFLX.UDP.Port) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Source_Port) - and then Field_Condition (Ctx, (F_Source_Port, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Source_Port) >= Field_Size (Ctx, F_Source_Port), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Source_Port) - and Get_Source_Port (Ctx) = Val - and Invalid (Ctx, F_Destination_Port) - and Invalid (Ctx, F_Length) - and Invalid (Ctx, F_Checksum) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Destination_Port) = F_Source_Port - and Valid_Next (Ctx, F_Destination_Port)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Source_Port) = Predecessor (Ctx, F_Source_Port)'Old - and Valid_Next (Ctx, F_Source_Port) = Valid_Next (Ctx, F_Source_Port)'Old; - - procedure Set_Destination_Port (Ctx : in out Context; Val : RFLX.UDP.Port) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Destination_Port) - and then Field_Condition (Ctx, (F_Destination_Port, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Destination_Port) >= Field_Size (Ctx, F_Destination_Port), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Destination_Port) - and Get_Destination_Port (Ctx) = Val - and Invalid (Ctx, F_Length) - and Invalid (Ctx, F_Checksum) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Length) = F_Destination_Port - and Valid_Next (Ctx, F_Length)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Destination_Port) = Predecessor (Ctx, F_Destination_Port)'Old - and Valid_Next (Ctx, F_Destination_Port) = Valid_Next (Ctx, F_Destination_Port)'Old - and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old - and Context_Cursor (Ctx, F_Source_Port) = Context_Cursor (Ctx, F_Source_Port)'Old; - - procedure Set_Length (Ctx : in out Context; Val : RFLX.UDP.Length) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Length) - and then Field_Condition (Ctx, (F_Length, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Length) >= Field_Size (Ctx, F_Length), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Length) - and Get_Length (Ctx) = Val - and Invalid (Ctx, F_Checksum) - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Checksum) = F_Length - and Valid_Next (Ctx, F_Checksum)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Length) = Predecessor (Ctx, F_Length)'Old - and Valid_Next (Ctx, F_Length) = Valid_Next (Ctx, F_Length)'Old - and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old - and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old - and Context_Cursor (Ctx, F_Source_Port) = Context_Cursor (Ctx, F_Source_Port)'Old - and Context_Cursor (Ctx, F_Destination_Port) = Context_Cursor (Ctx, F_Destination_Port)'Old; - - procedure Set_Checksum (Ctx : in out Context; Val : RFLX.UDP.Checksum) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Checksum) - and then Field_Condition (Ctx, (F_Checksum, To_Base (Val))) - and then Valid (To_Base (Val)) - and then Available_Space (Ctx, F_Checksum) >= Field_Size (Ctx, F_Checksum), - Post => - Has_Buffer (Ctx) - and Valid (Ctx, F_Checksum) - and Get_Checksum (Ctx) = Val - and Invalid (Ctx, F_Payload) - and (Predecessor (Ctx, F_Payload) = F_Checksum - and Valid_Next (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Checksum) = Predecessor (Ctx, F_Checksum)'Old - and Valid_Next (Ctx, F_Checksum) = Valid_Next (Ctx, F_Checksum)'Old - and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old - and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old - and Context_Cursor (Ctx, F_Source_Port) = Context_Cursor (Ctx, F_Source_Port)'Old - and Context_Cursor (Ctx, F_Destination_Port) = Context_Cursor (Ctx, F_Destination_Port)'Old - and Context_Cursor (Ctx, F_Length) = Context_Cursor (Ctx, F_Length)'Old; - - procedure Set_Payload_Empty (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old - and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; - - procedure Initialize_Payload (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old - and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; - - procedure Set_Payload (Ctx : in out Context; Value : Types.Bytes) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Value'Length = Types.Byte_Index (Field_Last (Ctx, F_Payload)) - Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old - and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; - - generic - with procedure Process_Payload (Payload : out Types.Bytes); - with function Valid_Length (Length : Types.Length) return Boolean; - procedure Generic_Set_Payload (Ctx : in out Context) with - Pre => - not Ctx'Constrained - and then Has_Buffer (Ctx) - and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) - and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) - and then Field_First (Ctx, F_Payload) mod Types.Byte'Size = 1 - and then Field_Last (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Field_Size (Ctx, F_Payload) mod Types.Byte'Size = 0 - and then Valid_Length (Types.Length (Field_Size (Ctx, F_Payload) / Types.Byte'Size)), - Post => - Has_Buffer (Ctx) - and Structural_Valid (Ctx, F_Payload) - and (if - Structural_Valid_Message (Ctx) - then - Message_Last (Ctx) = Field_Last (Ctx, F_Payload)) - and Ctx.Buffer_First = Ctx.Buffer_First'Old - and Ctx.Buffer_Last = Ctx.Buffer_Last'Old - and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old - and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old - and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old - and Get_Source_Port (Ctx) = Get_Source_Port (Ctx)'Old - and Get_Destination_Port (Ctx) = Get_Destination_Port (Ctx)'Old - and Get_Length (Ctx) = Get_Length (Ctx)'Old - and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - - function Context_Cursors (Ctx : Context) return Field_Cursors with - Annotate => - (GNATprove, Inline_For_Proof), - Ghost; - -private - - type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); - - function Valid_Value (Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Source_Port => - Valid (Val.Source_Port_Value), - when F_Destination_Port => - Valid (Val.Destination_Port_Value), - when F_Length => - Valid (Val.Length_Value), - when F_Checksum => - Valid (Val.Checksum_Value), - when F_Payload => - True, - when F_Initial | F_Final => - False)); - - type Field_Cursor (State : Cursor_State := S_Invalid) is - record - Predecessor : Virtual_Field := F_Final; - case State is - when S_Valid | S_Structural_Valid => - First : Types.Bit_Index := Types.Bit_Index'First; - Last : Types.Bit_Length := Types.Bit_Length'First; - Value : Field_Dependent_Value := (Fld => F_Final); - when S_Invalid | S_Incomplete => - null; - end case; - end record with - Dynamic_Predicate => - (if - State = S_Valid - or State = S_Structural_Valid - then - Valid_Value (Field_Cursor.Value)); - - type Field_Cursors is array (Virtual_Field) of Field_Cursor; - - function Structural_Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid - or Cursor.State = S_Structural_Valid); - - function Valid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Valid); - - function Invalid (Cursor : Field_Cursor) return Boolean is - (Cursor.State = S_Invalid - or Cursor.State = S_Incomplete); - - function Valid_Context (Buffer_First, Buffer_Last : Types.Index; First, Last : Types.Bit_Index; Message_Last : Types.Bit_Length; Buffer : access constant Types.Bytes; Cursors : Field_Cursors) return Boolean is - ((if - Buffer /= null - then - Buffer'First = Buffer_First - and Buffer'Last = Buffer_Last) - and then (Types.Byte_Index (First) >= Buffer_First - and Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last < Types.Bit_Index'Last - and First mod Types.Byte'Size = 1 - and Last mod Types.Byte'Size = 0) - and then First - 1 <= Message_Last - and then Message_Last <= Last - and then First mod Types.Byte'Size = 1 - and then Last mod Types.Byte'Size = 0 - and then Message_Last mod Types.Byte'Size = 0 - and then (for all F in Field'First .. Field'Last => - (if - Structural_Valid (Cursors (F)) - then - Cursors (F).First >= First - and Cursors (F).Last <= Message_Last - and Cursors (F).First <= Cursors (F).Last + 1 - and Cursors (F).Value.Fld = F)) - and then ((if - Structural_Valid (Cursors (F_Destination_Port)) - then - (Valid (Cursors (F_Source_Port)) - and then Cursors (F_Destination_Port).Predecessor = F_Source_Port)) - and then (if - Structural_Valid (Cursors (F_Length)) - then - (Valid (Cursors (F_Destination_Port)) - and then Cursors (F_Length).Predecessor = F_Destination_Port)) - and then (if - Structural_Valid (Cursors (F_Checksum)) - then - (Valid (Cursors (F_Length)) - and then Cursors (F_Checksum).Predecessor = F_Length)) - and then (if - Structural_Valid (Cursors (F_Payload)) - then - (Valid (Cursors (F_Checksum)) - and then Cursors (F_Payload).Predecessor = F_Checksum))) - and then ((if - Invalid (Cursors (F_Source_Port)) - then - Invalid (Cursors (F_Destination_Port))) - and then (if - Invalid (Cursors (F_Destination_Port)) - then - Invalid (Cursors (F_Length))) - and then (if - Invalid (Cursors (F_Length)) - then - Invalid (Cursors (F_Checksum))) - and then (if - Invalid (Cursors (F_Checksum)) - then - Invalid (Cursors (F_Payload)))) - and then (if - Structural_Valid (Cursors (F_Source_Port)) - then - Cursors (F_Source_Port).Last - Cursors (F_Source_Port).First + 1 = RFLX.UDP.Port'Size - and then Cursors (F_Source_Port).Predecessor = F_Initial - and then Cursors (F_Source_Port).First = First - and then (if - Structural_Valid (Cursors (F_Destination_Port)) - then - Cursors (F_Destination_Port).Last - Cursors (F_Destination_Port).First + 1 = RFLX.UDP.Port'Size - and then Cursors (F_Destination_Port).Predecessor = F_Source_Port - and then Cursors (F_Destination_Port).First = Cursors (F_Source_Port).Last + 1 - and then (if - Structural_Valid (Cursors (F_Length)) - then - Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.UDP.Length_Base'Size - and then Cursors (F_Length).Predecessor = F_Destination_Port - and then Cursors (F_Length).First = Cursors (F_Destination_Port).Last + 1 - and then (if - Structural_Valid (Cursors (F_Checksum)) - then - Cursors (F_Checksum).Last - Cursors (F_Checksum).First + 1 = RFLX.UDP.Checksum'Size - and then Cursors (F_Checksum).Predecessor = F_Length - and then Cursors (F_Checksum).First = Cursors (F_Length).Last + 1 - and then (if - Structural_Valid (Cursors (F_Payload)) - then - Cursors (F_Payload).Last - Cursors (F_Payload).First + 1 = (Types.Bit_Length (Cursors (F_Length).Value.Length_Value) - 8) * 8 - and then Cursors (F_Payload).Predecessor = F_Checksum - and then Cursors (F_Payload).First = Cursors (F_Checksum).Last + 1)))))); - - type Context (Buffer_First, Buffer_Last : Types.Index := Types.Index'First; First : Types.Bit_Index := Types.Bit_Index'First; Last : Types.Bit_Index := Types.Bit_Index'First + 7) is - record - Message_Last : Types.Bit_Length := First - 1; - Buffer : Types.Bytes_Ptr := null; - Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); - end record with - Dynamic_Predicate => - Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); - - function Initialized (Ctx : Context) return Boolean is - (Ctx.Message_Last = Ctx.First - 1 - and then Valid_Next (Ctx, F_Source_Port) - and then Field_First (Ctx, F_Source_Port) mod Types.Byte'Size = 1 - and then Available_Space (Ctx, F_Source_Port) = Ctx.Last - Ctx.First + 1 - and then Invalid (Ctx, F_Source_Port) - and then Invalid (Ctx, F_Destination_Port) - and then Invalid (Ctx, F_Length) - and then Invalid (Ctx, F_Checksum) - and then Invalid (Ctx, F_Payload)); - - function Has_Buffer (Ctx : Context) return Boolean is - (Ctx.Buffer /= null); - - function Message_Last (Ctx : Context) return Types.Bit_Length is - (Ctx.Message_Last); - - function Path_Condition (Ctx : Context; Fld : Field) return Boolean is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Source_Port => - True, - when others => - False), - when F_Source_Port => - (case Fld is - when F_Destination_Port => - True, - when others => - False), - when F_Destination_Port => - (case Fld is - when F_Length => - True, - when others => - False), - when F_Length => - (case Fld is - when F_Checksum => - True, - when others => - False), - when F_Checksum => - (case Fld is - when F_Payload => - True, - when others => - False), - when F_Payload | F_Final => - False)); - - function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is - ((case Val.Fld is - when F_Initial | F_Source_Port | F_Destination_Port | F_Length | F_Checksum | F_Payload => - True, - when F_Final => - False)); - - function Field_Size (Ctx : Context; Fld : Field) return Types.Bit_Length is - ((case Ctx.Cursors (Fld).Predecessor is - when F_Initial => - (case Fld is - when F_Source_Port => - RFLX.UDP.Port'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Source_Port => - (case Fld is - when F_Destination_Port => - RFLX.UDP.Port'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Destination_Port => - (case Fld is - when F_Length => - RFLX.UDP.Length_Base'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Length => - (case Fld is - when F_Checksum => - RFLX.UDP.Checksum'Size, - when others => - Types.Unreachable_Bit_Length), - when F_Checksum => - (case Fld is - when F_Payload => - (Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) - 8) * 8, - when others => - Types.Unreachable_Bit_Length), - when F_Payload | F_Final => - 0)); - - function Field_First (Ctx : Context; Fld : Field) return Types.Bit_Index is - ((case Fld is - when F_Source_Port => - Ctx.First, - when F_Destination_Port => - (if - Ctx.Cursors (Fld).Predecessor = F_Source_Port - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Length => - (if - Ctx.Cursors (Fld).Predecessor = F_Destination_Port - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Checksum => - (if - Ctx.Cursors (Fld).Predecessor = F_Length - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length), - when F_Payload => - (if - Ctx.Cursors (Fld).Predecessor = F_Checksum - then - Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 - else - Types.Unreachable_Bit_Length))); - - function Field_Last (Ctx : Context; Fld : Field) return Types.Bit_Index is - (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); - - function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is - ((case Fld is - when F_Initial => - F_Initial, - when others => - Ctx.Cursors (Fld).Predecessor)); - - function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is - ((case Fld is - when F_Initial => - True, - when F_Source_Port => - Ctx.Cursors (Fld).Predecessor = F_Initial, - when F_Destination_Port => - (Valid (Ctx.Cursors (F_Source_Port)) - and Ctx.Cursors (Fld).Predecessor = F_Source_Port), - when F_Length => - (Valid (Ctx.Cursors (F_Destination_Port)) - and Ctx.Cursors (Fld).Predecessor = F_Destination_Port), - when F_Checksum => - (Valid (Ctx.Cursors (F_Length)) - and Ctx.Cursors (Fld).Predecessor = F_Length), - when F_Payload => - (Valid (Ctx.Cursors (F_Checksum)) - and Ctx.Cursors (Fld).Predecessor = F_Checksum), - when F_Final => - (Structural_Valid (Ctx.Cursors (F_Payload)) - and Ctx.Cursors (Fld).Predecessor = F_Payload))); - - function Valid_Next (Ctx : Context; Fld : Field) return Boolean is - (Valid_Predecessor (Ctx, Fld) - and then Path_Condition (Ctx, Fld)); - - function Available_Space (Ctx : Context; Fld : Field) return Types.Bit_Length is - (Ctx.Last - Field_First (Ctx, Fld) + 1); - - function Present (Ctx : Context; Fld : Field) return Boolean is - (Structural_Valid (Ctx.Cursors (Fld)) - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is - ((Ctx.Cursors (Fld).State = S_Valid - or Ctx.Cursors (Fld).State = S_Structural_Valid)); - - function Valid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Valid - and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); - - function Incomplete (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Incomplete); - - function Invalid (Ctx : Context; Fld : Field) return Boolean is - (Ctx.Cursors (Fld).State = S_Invalid - or Ctx.Cursors (Fld).State = S_Incomplete); - - function Structural_Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Source_Port) - and then Valid (Ctx, F_Destination_Port) - and then Valid (Ctx, F_Length) - and then Valid (Ctx, F_Checksum) - and then Structural_Valid (Ctx, F_Payload)); - - function Valid_Message (Ctx : Context) return Boolean is - (Valid (Ctx, F_Source_Port) - and then Valid (Ctx, F_Destination_Port) - and then Valid (Ctx, F_Length) - and then Valid (Ctx, F_Checksum) - and then Valid (Ctx, F_Payload)); - - function Incomplete_Message (Ctx : Context) return Boolean is - (Incomplete (Ctx, F_Source_Port) - or Incomplete (Ctx, F_Destination_Port) - or Incomplete (Ctx, F_Length) - or Incomplete (Ctx, F_Checksum) - or Incomplete (Ctx, F_Payload)); - - function Get_Source_Port (Ctx : Context) return RFLX.UDP.Port is - (To_Actual (Ctx.Cursors (F_Source_Port).Value.Source_Port_Value)); - - function Get_Destination_Port (Ctx : Context) return RFLX.UDP.Port is - (To_Actual (Ctx.Cursors (F_Destination_Port).Value.Destination_Port_Value)); - - function Get_Length (Ctx : Context) return RFLX.UDP.Length is - (To_Actual (Ctx.Cursors (F_Length).Value.Length_Value)); - - function Get_Checksum (Ctx : Context) return RFLX.UDP.Checksum is - (To_Actual (Ctx.Cursors (F_Checksum).Value.Checksum_Value)); - - function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is - (Ctx.Cursors (Fld)); - - function Context_Cursors (Ctx : Context) return Field_Cursors is - (Ctx.Cursors); - -end RFLX.UDP.Generic_Datagram; diff --git a/tests/spark/rflx-builtin_types_tests.adb b/tests/spark/rflx-builtin_types_tests.adb index c34053353..170883a16 100644 --- a/tests/spark/rflx-builtin_types_tests.adb +++ b/tests/spark/rflx-builtin_types_tests.adb @@ -1,7 +1,7 @@ with SPARK.Assertions; use SPARK.Assertions; with RFLX.RFLX_Builtin_Types; use RFLX.RFLX_Builtin_Types; -with RFLX.RFLX_Types; use RFLX.RFLX_Types; +with RFLX.RFLX_Types; package body RFLX.Builtin_Types_Tests is @@ -17,24 +17,26 @@ package body RFLX.Builtin_Types_Tests is is pragma Unreferenced (T); begin - Assert (First_Bit_Index (Index'First)'Img, " 1", "Invalid first bit index for Index'First"); - Assert (First_Bit_Index (Index'Last)'Img, " 17179869169", "Invalid first bit index for Index'Last"); + Assert (RFLX_Types.First_Bit_Index (Index'First)'Img, " 1", "Invalid first bit index for Index'First"); + Assert (RFLX_Types.First_Bit_Index (Index'Last)'Img, " 17179869169", "Invalid first bit index for Index'Last"); - Assert (Last_Bit_Index (Index'First)'Img, " 8", "Invalid last bit index for Index'First"); - Assert (Last_Bit_Index (Index'Last)'Img, " 17179869176", "Invalid last bit index for Index'Last"); + Assert (RFLX_Types.Last_Bit_Index (Index'First)'Img, " 8", "Invalid last bit index for Index'First"); + Assert (RFLX_Types.Last_Bit_Index (Index'Last)'Img, " 17179869176", "Invalid last bit index for Index'Last"); - Assert (Byte_Index (First_Bit_Index (Index'First))'Img, " 1", + Assert (RFLX_Types.Byte_Index (RFLX_Types.First_Bit_Index (Index'First))'Img, " 1", "Invalid conversion between byte index and first bit index"); - Assert (Byte_Index (First_Bit_Index (Index'Last))'Img, " 2147483647", + Assert (RFLX_Types.Byte_Index (RFLX_Types.First_Bit_Index (Index'Last))'Img, " 2147483647", "Invalid conversion between byte index and first bit index"); - Assert (Byte_Index (Last_Bit_Index (Index'First))'Img, " 1", + Assert (RFLX_Types.Byte_Index (RFLX_Types.Last_Bit_Index (Index'First))'Img, " 1", "Invalid conversion between byte index and last bit index"); - Assert (Byte_Index (Last_Bit_Index (Index'Last))'Img, " 2147483647", + Assert (RFLX_Types.Byte_Index (RFLX_Types.Last_Bit_Index (Index'Last))'Img, " 2147483647", "Invalid conversion between byte index and last bit index"); - Assert (Byte_Index (Bit_Index'First)'Img, " 1", "Invalid byte index for Bit_Index'First"); - Assert (Byte_Index (Bit_Index'Last)'Img, " 2147483647", "Invalid byte index for Bit_Index'Last"); + Assert (RFLX_Types.Byte_Index (RFLX_Types.Bit_Index'First)'Img, " 1", + "Invalid byte index for Bit_Index'First"); + Assert (RFLX_Types.Byte_Index (RFLX_Types.Bit_Index'Last)'Img, " 2147483647", + "Invalid byte index for Bit_Index'Last"); end Test_Index_Calculations; generic @@ -46,8 +48,8 @@ package body RFLX.Builtin_Types_Tests is -- Simulate an offset value that is determined at runtime. -- This prevents the false assumption that the offset is statically determined at compile time, - -- which could affect the ability to prove the precondition of the Extract function. - function Dynamic_Offset is new Identity (Offset); + -- which could affect the ability to prove the precondition of the RFLX_Types.Extract function. + function Dynamic_Offset is new Identity (RFLX_Types.Offset); procedure Test_Extract_Modular_Integer_1 (T : in out AUnit.Test_Cases.Test_Case'Class) with SPARK_Mode, Pre => True @@ -56,7 +58,7 @@ package body RFLX.Builtin_Types_Tests is Buffer : constant Bytes := (Index'First => 170); type U1 is mod 2; - function Extract_U1 is new Extract (U1); + function Extract_U1 is new RFLX_Types.Extract (U1); R1 : U1; begin R1 := Extract_U1 (Buffer, Dynamic_Offset (0)); @@ -85,7 +87,7 @@ package body RFLX.Builtin_Types_Tests is Buffer : constant Bytes := (255, 255, 0); type U8 is mod 2**8; - function Extract_U8 is new Extract (U8); + function Extract_U8 is new RFLX_Types.Extract (U8); R8 : U8; begin R8 := Extract_U8 (Buffer (Buffer'Last .. Buffer'Last), 0); @@ -115,7 +117,7 @@ package body RFLX.Builtin_Types_Tests is Buffer : constant Bytes := (255, 255, 0); type U13 is mod 2**13; - function Extract_U13 is new Extract (U13); + function Extract_U13 is new RFLX_Types.Extract (U13); R13 : U13; begin R13 := Extract_U13 (Buffer (Buffer'First + 1 .. Buffer'Last), 0); @@ -144,7 +146,7 @@ package body RFLX.Builtin_Types_Tests is Buffer : constant Bytes := (255, 255, 255, 255, 255, 255, 255, 255, 0); type U62 is mod 2**62; - function Extract_U62 is new Extract (U62); + function Extract_U62 is new RFLX_Types.Extract (U62); R62 : U62; begin R62 := Extract_U62 (Buffer (Buffer'First + 1 .. Buffer'Last), 0); @@ -175,7 +177,7 @@ package body RFLX.Builtin_Types_Tests is type U64 is mod 2**64 with Annotate => (GNATprove, No_Wrap_Around); - function Extract_U64 is new Extract (U64); + function Extract_U64 is new RFLX_Types.Extract (U64); R64 : U64; begin R64 := Extract_U64 (Buffer (Buffer'First + 1 .. Buffer'Last), 0); @@ -204,7 +206,7 @@ package body RFLX.Builtin_Types_Tests is pragma Unreferenced (T); type U1 is mod 2; - procedure Insert_U1 is new Insert (U1); + procedure Insert_U1 is new RFLX_Types.Insert (U1); Buffer : Bytes (Index'First .. Index'First + 2); begin @@ -265,7 +267,7 @@ package body RFLX.Builtin_Types_Tests is pragma Unreferenced (T); type U2 is mod 2**2; - procedure Insert_U2 is new Insert (U2); + procedure Insert_U2 is new RFLX_Types.Insert (U2); Buffer : Bytes (Index'First .. Index'First + 2); begin @@ -320,7 +322,7 @@ package body RFLX.Builtin_Types_Tests is pragma Unreferenced (T); type U13 is mod 2**13; - procedure Insert_U13 is new Insert (U13); + procedure Insert_U13 is new RFLX_Types.Insert (U13); Buffer : Bytes (Index'First .. Index'First + 2); begin @@ -382,7 +384,7 @@ package body RFLX.Builtin_Types_Tests is type U64 is mod 2**64 with Annotate => (GNATprove, No_Wrap_Around); - procedure Insert_U64 is new Insert (U64); + procedure Insert_U64 is new RFLX_Types.Insert (U64); Buffer : Bytes (Index'First .. Index'First + 8); begin @@ -458,15 +460,15 @@ package body RFLX.Builtin_Types_Tests is use AUnit.Test_Cases.Registration; begin Register_Routine (T, Test_Index_Calculations'Access, "Index calculations"); - Register_Routine (T, Test_Extract_Modular_Integer_1'Access, "Extract modular integer (1 bit)"); - Register_Routine (T, Test_Extract_Modular_Integer_8'Access, "Extract modular integer (8 bit)"); - Register_Routine (T, Test_Extract_Modular_Integer_13'Access, "Extract modular integer (13 bit)"); - Register_Routine (T, Test_Extract_Modular_Integer_62'Access, "Extract modular integer (62 bit)"); - Register_Routine (T, Test_Extract_Modular_Integer_64'Access, "Extract modular integer (64 bit)"); - Register_Routine (T, Test_Insert_Modular_Integer_1'Access, "Insert modular integer (1 bit)"); - Register_Routine (T, Test_Insert_Modular_Integer_2'Access, "Insert modular integer (2 bit)"); - Register_Routine (T, Test_Insert_Modular_Integer_13'Access, "Insert modular integer (13 bit)"); - Register_Routine (T, Test_Insert_Modular_Integer_64'Access, "Insert modular integer (64 bit)"); + Register_Routine (T, Test_Extract_Modular_Integer_1'Access, "RFLX_Types.Extract modular integer (1 bit)"); + Register_Routine (T, Test_Extract_Modular_Integer_8'Access, "RFLX_Types.Extract modular integer (8 bit)"); + Register_Routine (T, Test_Extract_Modular_Integer_13'Access, "RFLX_Types.Extract modular integer (13 bit)"); + Register_Routine (T, Test_Extract_Modular_Integer_62'Access, "RFLX_Types.Extract modular integer (62 bit)"); + Register_Routine (T, Test_Extract_Modular_Integer_64'Access, "RFLX_Types.Extract modular integer (64 bit)"); + Register_Routine (T, Test_Insert_Modular_Integer_1'Access, "RFLX_Types.Insert modular integer (1 bit)"); + Register_Routine (T, Test_Insert_Modular_Integer_2'Access, "RFLX_Types.Insert modular integer (2 bit)"); + Register_Routine (T, Test_Insert_Modular_Integer_13'Access, "RFLX_Types.Insert modular integer (13 bit)"); + Register_Routine (T, Test_Insert_Modular_Integer_64'Access, "RFLX_Types.Insert modular integer (64 bit)"); end Register_Tests; end RFLX.Builtin_Types_Tests; diff --git a/tests/unit/ada_test.py b/tests/unit/ada_test.py index 796af2e30..623247288 100644 --- a/tests/unit/ada_test.py +++ b/tests/unit/ada_test.py @@ -292,6 +292,16 @@ def test_import() -> None: assert str(ada.Import()) == "Import" +def test_formal_package_declaration() -> None: + assert ( + str(ada.FormalPackageDeclaration("A", "B", ["C", "D"])) == "with package A is new B (C, D);" + ) + + +def test_package_renaming_declaration() -> None: + assert str(ada.PackageRenamingDeclaration("A", "B")) == "package A renames B;" + + def test_subtype() -> None: assert str(ada.Subtype("A", "B")) == "subtype A is B;" @@ -327,6 +337,12 @@ def test_access_type() -> None: assert str(ada.AccessType("A", "B")) == "type A is access B;" +def test_access_parameter() -> None: + assert str(ada.AccessParameter("A", "B")) == "A : access B" + assert str(ada.AccessParameter("A", "B", ada.Variable("C"))) == "A : access B := C" + assert str(ada.AccessParameter("A", "B", constant=True)) == "A : access constant B" + + def test_subprogram_renaming_declaration() -> None: assert ( str(ada.SubprogramRenamingDeclaration(ada.ProcedureSpecification("A"), "B")) diff --git a/tests/unit/generator_test.py b/tests/unit/generator_test.py index e9ded74a7..617303c18 100644 --- a/tests/unit/generator_test.py +++ b/tests/unit/generator_test.py @@ -131,8 +131,8 @@ def test_substitution_relation_aggregate( expr.Variable("Ctx"), expr.Variable("F_Value"), expr.Aggregate( - expr.Val(expr.Variable(expr.ID("Types") * "Byte"), expr.Number(1)), - expr.Val(expr.Variable(expr.ID("Types") * "Byte"), expr.Number(2)), + expr.Val(expr.Variable(const.TYPES * "Byte"), expr.Number(1)), + expr.Val(expr.Variable(const.TYPES * "Byte"), expr.Number(2)), ), ], ) diff --git a/tests/unit/model/type_test.py b/tests/unit/model/type_test.py index 529bc02ca..7a53e48ff 100644 --- a/tests/unit/model/type_test.py +++ b/tests/unit/model/type_test.py @@ -44,6 +44,10 @@ def test_modular_size() -> None: assert ModularInteger("P::T", Pow(Number(2), Number(32))).size_expr == Number(32) +def test_modular_value_count() -> None: + assert ModularInteger("P::T", Pow(Number(2), Number(32))).value_count == Number(2 ** 32) + + def test_modular_first() -> None: mod = ModularInteger("P::T", Pow(Number(2), Number(32))) assert mod.first == Number(0) @@ -86,6 +90,13 @@ def test_range_size() -> None: ) +def test_range_value_count() -> None: + assert_equal( + RangeInteger("P::T", Number(16), Number(128), Pow(Number(2), Number(5))).value_count, + Number(113), + ) + + def test_range_first() -> None: integer = RangeInteger( "P::T", Pow(Number(2), Number(4)), Sub(Pow(Number(2), Number(32)), Number(1)), Number(32) @@ -180,6 +191,21 @@ def test_enumeration_size() -> None: ) +def test_enumeration_value_count() -> None: + assert_equal( + Enumeration( + "P::T", [("A", Number(1))], Pow(Number(2), Number(5)), False, Location((34, 3)) + ).value_count, + Number(1), + ) + assert_equal( + Enumeration( + "P::T", [("A", Number(1))], Pow(Number(2), Number(5)), True, Location((34, 3)) + ).value_count, + Number(2 ** 32), + ) + + def test_enumeration_invalid_size_variable() -> None: assert_type_error( Enumeration( From 7c7df1855b0c6a12c7b32fca40b7dddf22861122 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Wed, 12 May 2021 11:37:07 +0200 Subject: [PATCH 05/43] Improve provability of generated code Ref. #659 --- rflx/ada.py | 14 ++++-- rflx/generator/parser.py | 43 +++++++++++++------ .../generated/rflx-derivation-message.adb | 9 +++- tests/spark/generated/rflx-ethernet-frame.adb | 17 +++++++- tests/spark/generated/rflx-icmp-message.adb | 35 ++++++++++++++- tests/spark/generated/rflx-ipv4-option.adb | 13 +++++- tests/spark/generated/rflx-ipv4-packet.adb | 37 +++++++++++++++- .../generated/rflx-sequence-inner_message.adb | 7 ++- .../spark/generated/rflx-sequence-message.adb | 13 +++++- .../rflx-sequence-messages_message.adb | 7 ++- ...-sequence_size_defined_by_message_size.adb | 7 ++- tests/spark/generated/rflx-tlv-message.adb | 9 +++- tests/spark/generated/rflx-udp-datagram.adb | 13 +++++- 13 files changed, 196 insertions(+), 28 deletions(-) diff --git a/rflx/ada.py b/rflx/ada.py index 85f8246db..2c7926a9c 100644 --- a/rflx/ada.py +++ b/rflx/ada.py @@ -1382,15 +1382,21 @@ def __init__( self, control_expression: Expr, case_statements: Sequence[Tuple[Expr, Sequence[Statement]]], + case_grouping: bool = True, ) -> None: self.control_expression = control_expression self.case_statements = case_statements + self.case_grouping = case_grouping def __str__(self) -> str: - grouped_cases = [ - (" | ".join(str(c) for c, _ in choices), statements) - for statements, choices in itertools.groupby(self.case_statements, lambda x: x[1]) - ] + grouped_cases = ( + [ + (" | ".join(str(c) for c, _ in choices), statements) + for statements, choices in itertools.groupby(self.case_statements, lambda x: x[1]) + ] + if self.case_grouping + else [(str(case), statements) for case, statements in self.case_statements] + ) cases = "".join( [ "\nwhen {} =>\n{}".format(choice, indent("\n".join(str(s) for s in statements), 3)) diff --git a/rflx/generator/parser.py b/rflx/generator/parser.py index f8ba2500e..70cd68f08 100644 --- a/rflx/generator/parser.py +++ b/rflx/generator/parser.py @@ -203,6 +203,20 @@ def create_verify_procedure( ), ) + set_message_last = Assignment( + Variable("Ctx.Message_Last"), + Mul( + Div( + Add( + Call("Field_Last", [Variable("Ctx"), Variable("Fld")]), + Number(7), + ), + Number(8), + ), + Number(8), + ), + ) + set_cursors_statements = [ *( [ @@ -236,19 +250,22 @@ def create_verify_procedure( if len(message.fields) > 1 else [] ), - Assignment( - Variable("Ctx.Message_Last"), - Mul( - Div( - Add( - Call("Field_Last", [Variable("Ctx"), Variable("Fld")]), - Number(7), - ), - Number(8), - ), - Number(8), - ), - ), + # Componolit/RecordFlux#664: + # The provability of the context predicate is increased by duplicating the statement + # inside a case statement. + CaseStatement( + Variable("Fld"), + [ + ( + Variable(f.affixed_name), + [set_message_last], + ) + for f in message.fields + ], + case_grouping=False, + ) + if len(message.fields) > 1 + else set_message_last, IfStatement( [ ( diff --git a/tests/spark/generated/rflx-derivation-message.adb b/tests/spark/generated/rflx-derivation-message.adb index ab2474377..4c8e0a052 100644 --- a/tests/spark/generated/rflx-derivation-message.adb +++ b/tests/spark/generated/rflx-derivation-message.adb @@ -222,7 +222,14 @@ is or Fld = F_Value then Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); - Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + case Fld is + when F_Tag => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Length => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Value => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else diff --git a/tests/spark/generated/rflx-ethernet-frame.adb b/tests/spark/generated/rflx-ethernet-frame.adb index 59daa21c4..ce5087d17 100644 --- a/tests/spark/generated/rflx-ethernet-frame.adb +++ b/tests/spark/generated/rflx-ethernet-frame.adb @@ -341,7 +341,22 @@ is Fld = F_Payload then Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); - Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + case Fld is + when F_Destination => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Source => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Type_Length_TPID => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_TPID => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_TCI => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Type_Length => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Payload => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else diff --git a/tests/spark/generated/rflx-icmp-message.adb b/tests/spark/generated/rflx-icmp-message.adb index b6b5d731c..1d55f4933 100644 --- a/tests/spark/generated/rflx-icmp-message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -793,7 +793,40 @@ is or Fld = F_Transmit_Timestamp then Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); - Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + case Fld is + when F_Tag => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Code_Destination_Unreachable => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Code_Redirect => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Code_Time_Exceeded => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Code_Zero => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Checksum => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Gateway_Internet_Address => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Identifier => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Pointer => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Unused_32 => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Sequence_Number => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Unused_24 => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Originate_Timestamp => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Data => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Receive_Timestamp => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Transmit_Timestamp => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else diff --git a/tests/spark/generated/rflx-ipv4-option.adb b/tests/spark/generated/rflx-ipv4-option.adb index 1843ed16a..3881d56fd 100644 --- a/tests/spark/generated/rflx-ipv4-option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -286,7 +286,18 @@ is or Fld = F_Option_Number then Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); - Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + case Fld is + when F_Copied => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Option_Class => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Option_Number => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Option_Length => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Option_Data => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else diff --git a/tests/spark/generated/rflx-ipv4-packet.adb b/tests/spark/generated/rflx-ipv4-packet.adb index 858761fb8..a43efe69b 100644 --- a/tests/spark/generated/rflx-ipv4-packet.adb +++ b/tests/spark/generated/rflx-ipv4-packet.adb @@ -799,7 +799,42 @@ is Fld = F_Payload then Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); - Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + case Fld is + when F_Version => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_IHL => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_DSCP => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_ECN => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Total_Length => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Identification => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Flag_R => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Flag_DF => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Flag_MF => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Fragment_Offset => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_TTL => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Protocol => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Header_Checksum => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Source => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Destination => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Options => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Payload => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else diff --git a/tests/spark/generated/rflx-sequence-inner_message.adb b/tests/spark/generated/rflx-sequence-inner_message.adb index f5e2bf7bc..4c86f9860 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.adb +++ b/tests/spark/generated/rflx-sequence-inner_message.adb @@ -193,7 +193,12 @@ is Fld = F_Payload then Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); - Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + case Fld is + when F_Length => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Payload => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else diff --git a/tests/spark/generated/rflx-sequence-message.adb b/tests/spark/generated/rflx-sequence-message.adb index 2f1529eaf..18aa55944 100644 --- a/tests/spark/generated/rflx-sequence-message.adb +++ b/tests/spark/generated/rflx-sequence-message.adb @@ -256,7 +256,18 @@ is Fld = F_AV_Enumeration_Vector then Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); - Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + case Fld is + when F_Length => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Modular_Vector => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Range_Vector => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Enumeration_Vector => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_AV_Enumeration_Vector => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else diff --git a/tests/spark/generated/rflx-sequence-messages_message.adb b/tests/spark/generated/rflx-sequence-messages_message.adb index 63d843730..48720caac 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.adb +++ b/tests/spark/generated/rflx-sequence-messages_message.adb @@ -193,7 +193,12 @@ is Fld = F_Messages then Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); - Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + case Fld is + when F_Length => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Messages => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb index 1fcca71e7..0bef5486f 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb @@ -193,7 +193,12 @@ is Fld = F_Vector then Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); - Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + case Fld is + when F_Header => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Vector => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else diff --git a/tests/spark/generated/rflx-tlv-message.adb b/tests/spark/generated/rflx-tlv-message.adb index df02ddd4b..23f4a6184 100644 --- a/tests/spark/generated/rflx-tlv-message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -222,7 +222,14 @@ is or Fld = F_Value then Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); - Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + case Fld is + when F_Tag => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Length => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Value => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else diff --git a/tests/spark/generated/rflx-udp-datagram.adb b/tests/spark/generated/rflx-udp-datagram.adb index f83403bf3..11d448ab7 100644 --- a/tests/spark/generated/rflx-udp-datagram.adb +++ b/tests/spark/generated/rflx-udp-datagram.adb @@ -258,7 +258,18 @@ is Fld = F_Payload then Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); - Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + case Fld is + when F_Source_Port => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Destination_Port => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Length => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Checksum => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Payload => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; if Composite_Field (Fld) then Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); else From 324c6969519faccf491e7a70ea7b43b683219d77 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Wed, 12 May 2021 10:35:52 +0200 Subject: [PATCH 06/43] Simplify handling of unreachable branches Ref. #659 --- rflx/ada.py | 15 ++ rflx/generator/const.py | 3 +- rflx/generator/generator.py | 36 +---- rflx/templates/rflx_generic_types.ads | 10 -- .../generated/rflx-derivation-message.ads | 10 +- tests/spark/generated/rflx-enumeration.ads | 10 -- tests/spark/generated/rflx-ethernet-frame.ads | 28 ++-- tests/spark/generated/rflx-ethernet.ads | 40 ----- tests/spark/generated/rflx-icmp-message.ads | 54 +++---- tests/spark/generated/rflx-icmp.ads | 138 +---------------- tests/spark/generated/rflx-ipv4-option.ads | 18 +-- tests/spark/generated/rflx-ipv4-packet.ads | 66 ++++---- tests/spark/generated/rflx-ipv4.ads | 142 +----------------- .../generated/rflx-rflx_generic_types.ads | 10 -- .../generated/rflx-sequence-inner_message.ads | 6 +- .../spark/generated/rflx-sequence-message.ads | 18 +-- .../rflx-sequence-messages_message.ads | 6 +- ...-sequence_size_defined_by_message_size.ads | 6 +- tests/spark/generated/rflx-sequence.ads | 52 +------ tests/spark/generated/rflx-tlv-message.ads | 10 +- tests/spark/generated/rflx-tlv.ads | 22 +-- tests/spark/generated/rflx-udp-datagram.ads | 18 +-- tests/spark/generated/rflx-udp.ads | 30 ---- tests/unit/ada_test.py | 5 + 24 files changed, 153 insertions(+), 600 deletions(-) diff --git a/rflx/ada.py b/rflx/ada.py index 2c7926a9c..96a74c2fa 100644 --- a/rflx/ada.py +++ b/rflx/ada.py @@ -719,6 +719,21 @@ def precedence(self) -> Precedence: return Precedence.LITERAL +class Raise(Expr): + def __init__(self, identifier: StrID, string: Expr = None) -> None: + super().__init__() + self.identifier = ID(identifier) + self.string = string + + def _update_str(self) -> None: + string = f" with {self.string}" if self.string else "" + self._str = intern(f"raise {self.identifier}{string}") + + @property + def precedence(self) -> Precedence: + raise NotImplementedError + + class Declaration(Base): @abstractmethod def __str__(self) -> str: diff --git a/rflx/generator/const.py b/rflx/generator/const.py index fea088558..1be9963e7 100644 --- a/rflx/generator/const.py +++ b/rflx/generator/const.py @@ -46,7 +46,6 @@ TYPES_FIRST_BIT_INDEX = TYPES * "First_Bit_Index" TYPES_LAST_BIT_INDEX = TYPES * "Last_Bit_Index" TYPES_OFFSET = TYPES * "Offset" -TYPES_UNREACHABLE_BIT_LENGTH = TYPES * "Unreachable_Bit_Length" TYPES_U64 = TYPES * "U64" CONTEXT_INVARIANT = [ @@ -58,3 +57,5 @@ ada.Variable("Ctx.Last"), ) ] + +UNREACHABLE = ada.Raise("Program_Error") diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 0cc3ab983..e2e6fefa1 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -1221,7 +1221,7 @@ def substituted(expression: expr.Expr) -> Expr: else: size = If( [(substituted(l.condition), substituted(l.size)) for l in links], - Variable(const.TYPES_UNREACHABLE_BIT_LENGTH), + const.UNREACHABLE, ) cases.append( ( @@ -1234,7 +1234,7 @@ def substituted(expression: expr.Expr) -> Expr: return Number(0) if set(message.fields) - {l.target for l in message.outgoing(field)}: - cases.append((Variable("others"), Variable(const.TYPES_UNREACHABLE_BIT_LENGTH))) + cases.append((Variable("others"), const.UNREACHABLE)) return Case(Variable("Fld"), cases) specification = FunctionSpecification( @@ -1320,7 +1320,7 @@ def substituted( ) for l in message.incoming(field) ], - Variable(const.TYPES_UNREACHABLE_BIT_LENGTH), + const.UNREACHABLE, ) specification = FunctionSpecification( @@ -2632,15 +2632,12 @@ def __create_type(self, field_type: Type, message_package: ID) -> None: if isinstance(field_type, ModularInteger): unit += UnitPart(modular_types(field_type)) - unit += UnitPart(self.__type_dependent_unreachable_function(field_type)) unit += self.__integer_functions(field_type) elif isinstance(field_type, RangeInteger): unit += UnitPart(range_types(field_type)) - unit += UnitPart(self.__type_dependent_unreachable_function(field_type)) unit += self.__integer_functions(field_type) elif isinstance(field_type, Enumeration): unit += UnitPart(enumeration_types(field_type)) - unit += UnitPart(self.__type_dependent_unreachable_function(field_type)) unit += self.__enumeration_functions(field_type) elif isinstance(field_type, Sequence): self.__create_sequence_unit(field_type) @@ -2822,9 +2819,7 @@ def __enumeration_functions(self, enum: Enumeration) -> UnitPart: (value.ada_expr(), Variable(ID(key))) for key, value in enum.literals.items() ) if incomplete: - conversion_cases.append( - (Variable("others"), Call(unreachable_function_name(enum.identifier))) - ) + conversion_cases.append((Variable("others"), const.UNREACHABLE)) specification.extend( [ @@ -3081,25 +3076,6 @@ def __type_validation_function( validation_expression, ) - def __type_dependent_unreachable_function(self, scalar_type: Scalar) -> ty.List[Declaration]: - base_name = None - if isinstance(scalar_type, Enumeration) and scalar_type.always_valid: - base_name = self.__prefix * common.full_base_type_name(scalar_type) - - type_name = self.__prefix * ID(scalar_type.identifier) - - return [ - Pragma("Warnings", [Variable("Off"), String("precondition is * false")]), - ExpressionFunctionDeclaration( - FunctionSpecification(unreachable_function_name(scalar_type.identifier), type_name), - First(type_name) - if not base_name - else Aggregate(Variable("False"), First(base_name)), - [Precondition(FALSE)], - ), - Pragma("Warnings", [Variable("On"), String("precondition is * false")]), - ] - def __integer_conversion_functions(self, integer: Integer) -> ty.Sequence[Subprogram]: return [ ExpressionFunctionDeclaration( @@ -3205,10 +3181,6 @@ def contains_function_name(refinement: Refinement) -> str: return f"{sdu_name.flat}_In_{pdu_name.flat}_{refinement.field.name}" -def unreachable_function_name(type_identifier: expr.ID) -> str: - return f"Unreachable_{type_identifier.flat}" - - def context_cursors_initialization(message: Message) -> Expr: return NamedAggregate( ( diff --git a/rflx/templates/rflx_generic_types.ads b/rflx/templates/rflx_generic_types.ads index 0ad1f1e56..a591c8b09 100644 --- a/rflx/templates/rflx_generic_types.ads +++ b/rflx/templates/rflx_generic_types.ads @@ -74,14 +74,4 @@ is Pre => (Offset'Pos (Off) + Value'Size - 1) / Byte'Size < Data'Length; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Bit_Length return Bit_Length is - (Bit_Length'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - end {prefix}RFLX_Generic_Types; diff --git a/tests/spark/generated/rflx-derivation-message.ads b/tests/spark/generated/rflx-derivation-message.ads index 7494c0f5e..b2932c18f 100644 --- a/tests/spark/generated/rflx-derivation-message.ads +++ b/tests/spark/generated/rflx-derivation-message.ads @@ -611,19 +611,19 @@ private when F_Tag => RFLX.TLV.Tag_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Tag => (case Fld is when F_Length => RFLX.TLV.Length'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Length => (case Fld is when F_Value => RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Value | F_Final => 0)); @@ -638,14 +638,14 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Value => (if Ctx.Cursors (Fld).Predecessor = F_Length then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length))); + raise Program_Error))); function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); diff --git a/tests/spark/generated/rflx-enumeration.ads b/tests/spark/generated/rflx-enumeration.ads index f33f662bd..39a45fc17 100644 --- a/tests/spark/generated/rflx-enumeration.ads +++ b/tests/spark/generated/rflx-enumeration.ads @@ -22,16 +22,6 @@ is end case; end record; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Enumeration_Priority return RFLX.Enumeration.Priority is - ((False, RFLX.Enumeration.Priority_Base'First)) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); diff --git a/tests/spark/generated/rflx-ethernet-frame.ads b/tests/spark/generated/rflx-ethernet-frame.ads index bbfbeee1f..5b459ffd3 100644 --- a/tests/spark/generated/rflx-ethernet-frame.ads +++ b/tests/spark/generated/rflx-ethernet-frame.ads @@ -889,19 +889,19 @@ private when F_Destination => RFLX.Ethernet.Address'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Destination => (case Fld is when F_Source => RFLX.Ethernet.Address'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Source => (case Fld is when F_Type_Length_TPID => RFLX.Ethernet.Type_Length_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Type_Length_TPID => (case Fld is when F_TPID => @@ -909,19 +909,19 @@ private when F_Type_Length => RFLX.Ethernet.Type_Length_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_TPID => (case Fld is when F_TCI => RFLX.Ethernet.TCI'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_TCI => (case Fld is when F_Type_Length => RFLX.Ethernet.Type_Length_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Type_Length => (case Fld is when F_Payload => @@ -934,9 +934,9 @@ private then RFLX_Types.Bit_Length (Ctx.Last) - RFLX_Types.Bit_Length (Ctx.Cursors (F_Type_Length).Last) else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Payload | F_Final => 0)); @@ -950,14 +950,14 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Type_Length_TPID => (if Ctx.Cursors (Fld).Predecessor = F_Source then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_TPID => (if Ctx.Cursors (Fld).Predecessor = F_Type_Length_TPID @@ -965,14 +965,14 @@ private then Ctx.Cursors (F_Type_Length_TPID).First else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_TCI => (if Ctx.Cursors (Fld).Predecessor = F_TPID then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Type_Length => (if Ctx.Cursors (Fld).Predecessor = F_TCI @@ -984,7 +984,7 @@ private then Ctx.Cursors (F_Type_Length_TPID).First else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Payload => (if Ctx.Cursors (Fld).Predecessor = F_Type_Length @@ -997,7 +997,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length))); + raise Program_Error))); function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); diff --git a/tests/spark/generated/rflx-ethernet.ads b/tests/spark/generated/rflx-ethernet.ads index 2a4e51e38..1c6a24ba1 100644 --- a/tests/spark/generated/rflx-ethernet.ads +++ b/tests/spark/generated/rflx-ethernet.ads @@ -9,16 +9,6 @@ is Size => 48; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Ethernet_Address return RFLX.Ethernet.Address is - (RFLX.Ethernet.Address'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -47,16 +37,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Ethernet_Type_Length return RFLX.Ethernet.Type_Length is - (RFLX.Ethernet.Type_Length'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.Ethernet.Type_Length_Base) return Boolean is (Val >= 46); @@ -77,16 +57,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Ethernet_TPID return RFLX.Ethernet.TPID is - (RFLX.Ethernet.TPID'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.Ethernet.TPID_Base) return Boolean is (Val = 16#8100#); @@ -103,16 +73,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Ethernet_TCI return RFLX.Ethernet.TCI is - (RFLX.Ethernet.TCI'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index 163fb9892..2e11c2a93 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -2013,7 +2013,7 @@ private when F_Tag => RFLX.ICMP.Tag_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Tag => (case Fld is when F_Code_Destination_Unreachable => @@ -2025,13 +2025,13 @@ private when F_Code_Zero => RFLX.ICMP.Code_Zero_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => (case Fld is when F_Checksum => RFLX.ICMP.Checksum'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Checksum => (case Fld is when F_Gateway_Internet_Address => @@ -2043,31 +2043,31 @@ private when F_Unused_32 => RFLX.ICMP.Unused_32_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Gateway_Internet_Address => (case Fld is when F_Data => 224, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Identifier => (case Fld is when F_Sequence_Number => RFLX.ICMP.Sequence_Number'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Pointer => (case Fld is when F_Unused_24 => RFLX.ICMP.Unused_24_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Unused_32 => (case Fld is when F_Data => 224, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Sequence_Number => (case Fld is when F_Data => @@ -2075,19 +2075,19 @@ private when F_Originate_Timestamp => RFLX.ICMP.Timestamp'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Unused_24 => (case Fld is when F_Data => 224, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Originate_Timestamp => (case Fld is when F_Receive_Timestamp => RFLX.ICMP.Timestamp'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Data => 0, when F_Receive_Timestamp => @@ -2095,7 +2095,7 @@ private when F_Transmit_Timestamp => RFLX.ICMP.Timestamp'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Transmit_Timestamp | F_Final => 0)); @@ -2110,7 +2110,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Code_Redirect => (if Ctx.Cursors (Fld).Predecessor = F_Tag @@ -2118,7 +2118,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Code_Time_Exceeded => (if Ctx.Cursors (Fld).Predecessor = F_Tag @@ -2126,7 +2126,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Code_Zero => (if Ctx.Cursors (Fld).Predecessor = F_Tag @@ -2141,7 +2141,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Checksum => (if Ctx.Cursors (Fld).Predecessor = F_Code_Destination_Unreachable @@ -2160,7 +2160,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Gateway_Internet_Address => (if Ctx.Cursors (Fld).Predecessor = F_Checksum @@ -2168,7 +2168,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Identifier => (if Ctx.Cursors (Fld).Predecessor = F_Checksum @@ -2181,7 +2181,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Pointer => (if Ctx.Cursors (Fld).Predecessor = F_Checksum @@ -2189,7 +2189,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Unused_32 => (if Ctx.Cursors (Fld).Predecessor = F_Checksum @@ -2199,21 +2199,21 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Sequence_Number => (if Ctx.Cursors (Fld).Predecessor = F_Identifier then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Unused_24 => (if Ctx.Cursors (Fld).Predecessor = F_Pointer then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Originate_Timestamp => (if Ctx.Cursors (Fld).Predecessor = F_Sequence_Number @@ -2222,7 +2222,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Data => (if Ctx.Cursors (Fld).Predecessor = F_Gateway_Internet_Address @@ -2243,21 +2243,21 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Receive_Timestamp => (if Ctx.Cursors (Fld).Predecessor = F_Originate_Timestamp then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Transmit_Timestamp => (if Ctx.Cursors (Fld).Predecessor = F_Receive_Timestamp then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length))); + raise Program_Error))); function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); diff --git a/tests/spark/generated/rflx-icmp.ads b/tests/spark/generated/rflx-icmp.ads index 570831be4..e2a5204bf 100644 --- a/tests/spark/generated/rflx-icmp.ads +++ b/tests/spark/generated/rflx-icmp.ads @@ -12,16 +12,6 @@ is 8; for Tag use (Echo_Reply => 0, Destination_Unreachable => 3, Source_Quench => 4, Redirect => 5, Echo_Request => 8, Time_Exceeded => 11, Parameter_Problem => 12, Timestamp_Msg => 13, Timestamp_Reply => 14, Information_Request => 15, Information_Reply => 16); - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Tag return RFLX.ICMP.Tag is - (RFLX.ICMP.Tag'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.ICMP.Tag_Base) return Boolean is ((case Val is when 0 | 8 | 3 | 11 | 12 | 4 | 5 | 13 | 14 | 15 | 16 => @@ -81,7 +71,7 @@ is when 16 => Information_Reply, when others => - Unreachable_ICMP_Tag)) + raise Program_Error)) with Pre => Valid (Val); @@ -95,16 +85,6 @@ is 8; for Code_Destination_Unreachable use (Net_Unreachable => 0, Host_Unreachable => 1, Protocol_Unreachable => 2, Port_Unreachable => 3, Fragmentation_Needed_DF_Set => 4, Source_Route_Failed => 5); - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Code_Destination_Unreachable return RFLX.ICMP.Code_Destination_Unreachable is - (RFLX.ICMP.Code_Destination_Unreachable'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.ICMP.Code_Destination_Unreachable_Base) return Boolean is ((case Val is when 0 | 1 | 2 | 3 | 4 | 5 => @@ -144,7 +124,7 @@ is when 5 => Source_Route_Failed, when others => - Unreachable_ICMP_Code_Destination_Unreachable)) + raise Program_Error)) with Pre => Valid (Val); @@ -158,16 +138,6 @@ is 8; for Code_Time_Exceeded use (TTL_Exceeded => 0, Fragment_Reassembly_Time_Exceeded => 1); - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Code_Time_Exceeded return RFLX.ICMP.Code_Time_Exceeded is - (RFLX.ICMP.Code_Time_Exceeded'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.ICMP.Code_Time_Exceeded_Base) return Boolean is ((case Val is when 0 | 1 => @@ -191,7 +161,7 @@ is when 1 => Fragment_Reassembly_Time_Exceeded, when others => - Unreachable_ICMP_Code_Time_Exceeded)) + raise Program_Error)) with Pre => Valid (Val); @@ -205,16 +175,6 @@ is 8; for Code_Redirect use (Redirect_for_Network => 0, Redirect_for_Host => 1, Redirect_for_Service_Network => 2, Redirect_for_Service_Host => 3); - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Code_Redirect return RFLX.ICMP.Code_Redirect is - (RFLX.ICMP.Code_Redirect'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.ICMP.Code_Redirect_Base) return Boolean is ((case Val is when 0 | 1 | 2 | 3 => @@ -246,7 +206,7 @@ is when 3 => Redirect_for_Service_Host, when others => - Unreachable_ICMP_Code_Redirect)) + raise Program_Error)) with Pre => Valid (Val); @@ -261,16 +221,6 @@ is Size => 8; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Code_Zero return RFLX.ICMP.Code_Zero is - (RFLX.ICMP.Code_Zero'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.ICMP.Code_Zero_Base) return Boolean is (Val = 0); @@ -287,16 +237,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Checksum return RFLX.ICMP.Checksum is - (RFLX.ICMP.Checksum'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -321,16 +261,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Identifier return RFLX.ICMP.Identifier is - (RFLX.ICMP.Identifier'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -355,16 +285,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Sequence_Number return RFLX.ICMP.Sequence_Number is - (RFLX.ICMP.Sequence_Number'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -389,16 +309,6 @@ is Size => 8; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Pointer return RFLX.ICMP.Pointer is - (RFLX.ICMP.Pointer'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -423,16 +333,6 @@ is Size => 32; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Timestamp return RFLX.ICMP.Timestamp is - (RFLX.ICMP.Timestamp'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -457,16 +357,6 @@ is Size => 32; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Gateway_Internet_Address return RFLX.ICMP.Gateway_Internet_Address is - (RFLX.ICMP.Gateway_Internet_Address'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -495,16 +385,6 @@ is Size => 32; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Unused_32 return RFLX.ICMP.Unused_32 is - (RFLX.ICMP.Unused_32'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.ICMP.Unused_32_Base) return Boolean is (Val = 0); @@ -525,16 +405,6 @@ is Size => 24; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_ICMP_Unused_24 return RFLX.ICMP.Unused_24 is - (RFLX.ICMP.Unused_24'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.ICMP.Unused_24_Base) return Boolean is (Val = 0); diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index 83b7c7591..8090c1b13 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -802,31 +802,31 @@ private when F_Copied => RFLX.RFLX_Builtin_Types.Boolean_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Copied => (case Fld is when F_Option_Class => RFLX.IPv4.Option_Class_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Option_Class => (case Fld is when F_Option_Number => RFLX.IPv4.Option_Number'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Option_Number => (case Fld is when F_Option_Length => RFLX.IPv4.Option_Length_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Option_Length => (case Fld is when F_Option_Data => (RFLX_Types.Bit_Length (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value) - 2) * 8, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Option_Data | F_Final => 0)); @@ -840,14 +840,14 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Option_Number => (if Ctx.Cursors (Fld).Predecessor = F_Option_Class then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Option_Length => (if Ctx.Cursors (Fld).Predecessor = F_Option_Number @@ -855,7 +855,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Option_Data => (if Ctx.Cursors (Fld).Predecessor = F_Option_Length @@ -874,7 +874,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length))); + raise Program_Error))); function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); diff --git a/tests/spark/generated/rflx-ipv4-packet.ads b/tests/spark/generated/rflx-ipv4-packet.ads index cdb447e7d..960aaaac6 100644 --- a/tests/spark/generated/rflx-ipv4-packet.ads +++ b/tests/spark/generated/rflx-ipv4-packet.ads @@ -1858,103 +1858,103 @@ private when F_Version => RFLX.IPv4.Version_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Version => (case Fld is when F_IHL => RFLX.IPv4.IHL_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_IHL => (case Fld is when F_DSCP => RFLX.IPv4.DCSP'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_DSCP => (case Fld is when F_ECN => RFLX.IPv4.ECN'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_ECN => (case Fld is when F_Total_Length => RFLX.IPv4.Total_Length'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Total_Length => (case Fld is when F_Identification => RFLX.IPv4.Identification'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Identification => (case Fld is when F_Flag_R => RFLX.RFLX_Builtin_Types.Boolean_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Flag_R => (case Fld is when F_Flag_DF => RFLX.RFLX_Builtin_Types.Boolean_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Flag_DF => (case Fld is when F_Flag_MF => RFLX.RFLX_Builtin_Types.Boolean_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Flag_MF => (case Fld is when F_Fragment_Offset => RFLX.IPv4.Fragment_Offset'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Fragment_Offset => (case Fld is when F_TTL => RFLX.IPv4.TTL'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_TTL => (case Fld is when F_Protocol => RFLX.IPv4.Protocol_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Protocol => (case Fld is when F_Header_Checksum => RFLX.IPv4.Header_Checksum'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Header_Checksum => (case Fld is when F_Source => RFLX.IPv4.Address'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Source => (case Fld is when F_Destination => RFLX.IPv4.Address'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Destination => (case Fld is when F_Options => (RFLX_Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) - 5) * 32, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Options => (case Fld is when F_Payload => RFLX_Types.Bit_Length (Ctx.Cursors (F_Total_Length).Value.Total_Length_Value) * 8 + RFLX_Types.Bit_Length (Ctx.Cursors (F_IHL).Value.IHL_Value) * (-32), when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Payload | F_Final => 0)); @@ -1968,28 +1968,28 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_DSCP => (if Ctx.Cursors (Fld).Predecessor = F_IHL then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_ECN => (if Ctx.Cursors (Fld).Predecessor = F_DSCP then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Total_Length => (if Ctx.Cursors (Fld).Predecessor = F_ECN then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Identification => (if Ctx.Cursors (Fld).Predecessor = F_Total_Length @@ -1997,14 +1997,14 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Flag_R => (if Ctx.Cursors (Fld).Predecessor = F_Identification then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Flag_DF => (if Ctx.Cursors (Fld).Predecessor = F_Flag_R @@ -2012,70 +2012,70 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Flag_MF => (if Ctx.Cursors (Fld).Predecessor = F_Flag_DF then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Fragment_Offset => (if Ctx.Cursors (Fld).Predecessor = F_Flag_MF then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_TTL => (if Ctx.Cursors (Fld).Predecessor = F_Fragment_Offset then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Protocol => (if Ctx.Cursors (Fld).Predecessor = F_TTL then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Header_Checksum => (if Ctx.Cursors (Fld).Predecessor = F_Protocol then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Source => (if Ctx.Cursors (Fld).Predecessor = F_Header_Checksum then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Destination => (if Ctx.Cursors (Fld).Predecessor = F_Source then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Options => (if Ctx.Cursors (Fld).Predecessor = F_Destination then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Payload => (if Ctx.Cursors (Fld).Predecessor = F_Options then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length))); + raise Program_Error))); function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); diff --git a/tests/spark/generated/rflx-ipv4.ads b/tests/spark/generated/rflx-ipv4.ads index 999d067e2..a438730d0 100644 --- a/tests/spark/generated/rflx-ipv4.ads +++ b/tests/spark/generated/rflx-ipv4.ads @@ -13,16 +13,6 @@ is Size => 4; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_Version return RFLX.IPv4.Version is - (RFLX.IPv4.Version'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.IPv4.Version_Base) return Boolean is (Val = 4); @@ -43,16 +33,6 @@ is Size => 4; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_IHL return RFLX.IPv4.IHL is - (RFLX.IPv4.IHL'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.IPv4.IHL_Base) return Boolean is (Val >= 5); @@ -69,16 +49,6 @@ is Size => 6; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_DCSP return RFLX.IPv4.DCSP is - (RFLX.IPv4.DCSP'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -103,16 +73,6 @@ is Size => 2; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_ECN return RFLX.IPv4.ECN is - (RFLX.IPv4.ECN'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -137,16 +97,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_Total_Length return RFLX.IPv4.Total_Length is - (RFLX.IPv4.Total_Length'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -171,16 +121,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_Identification return RFLX.IPv4.Identification is - (RFLX.IPv4.Identification'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -205,16 +145,6 @@ is Size => 13; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_Fragment_Offset return RFLX.IPv4.Fragment_Offset is - (RFLX.IPv4.Fragment_Offset'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -239,16 +169,6 @@ is Size => 8; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_TTL return RFLX.IPv4.TTL is - (RFLX.IPv4.TTL'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -286,16 +206,6 @@ is end case; end record; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_Protocol return RFLX.IPv4.Protocol is - ((False, RFLX.IPv4.Protocol_Base'First)) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -341,16 +251,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_Header_Checksum return RFLX.IPv4.Header_Checksum is - (RFLX.IPv4.Header_Checksum'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -375,16 +275,6 @@ is Size => 32; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_Address return RFLX.IPv4.Address is - (RFLX.IPv4.Address'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -412,16 +302,6 @@ is 2; for Option_Class use (Control => 0, Debugging_And_Measurement => 2); - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_Option_Class return RFLX.IPv4.Option_Class is - (RFLX.IPv4.Option_Class'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.IPv4.Option_Class_Base) return Boolean is ((case Val is when 0 | 2 => @@ -445,7 +325,7 @@ is when 2 => Debugging_And_Measurement, when others => - Unreachable_IPv4_Option_Class)) + raise Program_Error)) with Pre => Valid (Val); @@ -456,16 +336,6 @@ is Size => 5; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_Option_Number return RFLX.IPv4.Option_Number is - (RFLX.IPv4.Option_Number'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -494,16 +364,6 @@ is Size => 8; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_IPv4_Option_Length return RFLX.IPv4.Option_Length is - (RFLX.IPv4.Option_Length'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.IPv4.Option_Length_Base) return Boolean is (Val >= 2); diff --git a/tests/spark/generated/rflx-rflx_generic_types.ads b/tests/spark/generated/rflx-rflx_generic_types.ads index dc5624a21..693ddb9df 100644 --- a/tests/spark/generated/rflx-rflx_generic_types.ads +++ b/tests/spark/generated/rflx-rflx_generic_types.ads @@ -74,14 +74,4 @@ is Pre => (Offset'Pos (Off) + Value'Size - 1) / Byte'Size < Data'Length; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Bit_Length return Bit_Length is - (Bit_Length'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - end RFLX.RFLX_Generic_Types; diff --git a/tests/spark/generated/rflx-sequence-inner_message.ads b/tests/spark/generated/rflx-sequence-inner_message.ads index b6746c891..03f1bca44 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.ads +++ b/tests/spark/generated/rflx-sequence-inner_message.ads @@ -536,13 +536,13 @@ private when F_Length => RFLX.Sequence.Length'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Length => (case Fld is when F_Payload => RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Payload | F_Final => 0)); @@ -556,7 +556,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length))); + raise Program_Error))); function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); diff --git a/tests/spark/generated/rflx-sequence-message.ads b/tests/spark/generated/rflx-sequence-message.ads index 545f5f5ac..4721c2216 100644 --- a/tests/spark/generated/rflx-sequence-message.ads +++ b/tests/spark/generated/rflx-sequence-message.ads @@ -961,31 +961,31 @@ private when F_Length => RFLX.Sequence.Length'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Length => (case Fld is when F_Modular_Vector => RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Modular_Vector => (case Fld is when F_Range_Vector => 16, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Range_Vector => (case Fld is when F_Enumeration_Vector => 16, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Enumeration_Vector => (case Fld is when F_AV_Enumeration_Vector => 16, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_AV_Enumeration_Vector | F_Final => 0)); @@ -999,28 +999,28 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Range_Vector => (if Ctx.Cursors (Fld).Predecessor = F_Modular_Vector then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Enumeration_Vector => (if Ctx.Cursors (Fld).Predecessor = F_Range_Vector then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_AV_Enumeration_Vector => (if Ctx.Cursors (Fld).Predecessor = F_Enumeration_Vector then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length))); + raise Program_Error))); function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); diff --git a/tests/spark/generated/rflx-sequence-messages_message.ads b/tests/spark/generated/rflx-sequence-messages_message.ads index a54378f87..c2b1a52f8 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.ads +++ b/tests/spark/generated/rflx-sequence-messages_message.ads @@ -552,13 +552,13 @@ private when F_Length => RFLX.Sequence.Length'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Length => (case Fld is when F_Messages => RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Messages | F_Final => 0)); @@ -572,7 +572,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length))); + raise Program_Error))); function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads index 9bc0c1aa7..e45376deb 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads @@ -552,13 +552,13 @@ private when F_Header => RFLX.Sequence.Enumeration_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Header => (case Fld is when F_Vector => RFLX_Types.Bit_Length (Ctx.Last - Ctx.First + 1) - RFLX_Types.Bit_Length (Ctx.Cursors (F_Header).Last - Ctx.Cursors (F_Header).First + 1), when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Vector | F_Final => 0)); @@ -572,7 +572,7 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length))); + raise Program_Error))); function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); diff --git a/tests/spark/generated/rflx-sequence.ads b/tests/spark/generated/rflx-sequence.ads index 9aa176666..117ca6c1c 100644 --- a/tests/spark/generated/rflx-sequence.ads +++ b/tests/spark/generated/rflx-sequence.ads @@ -9,16 +9,6 @@ is Size => 8; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Sequence_Length return RFLX.Sequence.Length is - (RFLX.Sequence.Length'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -43,16 +33,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Sequence_Modular_Integer return RFLX.Sequence.Modular_Integer is - (RFLX.Sequence.Modular_Integer'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -81,16 +61,6 @@ is Size => 8; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Sequence_Range_Integer return RFLX.Sequence.Range_Integer is - (RFLX.Sequence.Range_Integer'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.Sequence.Range_Integer_Base) return Boolean is (Val >= 1 and Val <= 100); @@ -111,16 +81,6 @@ is 8; for Enumeration use (Zero => 0, One => 1, Two => 2); - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Sequence_Enumeration return RFLX.Sequence.Enumeration is - (RFLX.Sequence.Enumeration'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.Sequence.Enumeration_Base) return Boolean is ((case Val is when 0 | 1 | 2 => @@ -148,7 +108,7 @@ is when 2 => Two, when others => - Unreachable_Sequence_Enumeration)) + raise Program_Error)) with Pre => Valid (Val); @@ -172,16 +132,6 @@ is end case; end record; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_Sequence_AV_Enumeration return RFLX.Sequence.AV_Enumeration is - ((False, RFLX.Sequence.AV_Enumeration_Base'First)) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index e11e4e333..a3f329717 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -609,19 +609,19 @@ private when F_Tag => RFLX.TLV.Tag_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Tag => (case Fld is when F_Length => RFLX.TLV.Length'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Length => (case Fld is when F_Value => RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) * 8, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Value | F_Final => 0)); @@ -636,14 +636,14 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Value => (if Ctx.Cursors (Fld).Predecessor = F_Length then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length))); + raise Program_Error))); function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); diff --git a/tests/spark/generated/rflx-tlv.ads b/tests/spark/generated/rflx-tlv.ads index d38df6ea9..63dd45bd2 100644 --- a/tests/spark/generated/rflx-tlv.ads +++ b/tests/spark/generated/rflx-tlv.ads @@ -12,16 +12,6 @@ is 8; for Tag use (Msg_Data => 1, Msg_Error => 3); - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_TLV_Tag return RFLX.TLV.Tag is - (RFLX.TLV.Tag'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.TLV.Tag_Base) return Boolean is ((case Val is when 1 | 3 => @@ -45,7 +35,7 @@ is when 3 => Msg_Error, when others => - Unreachable_TLV_Tag)) + raise Program_Error)) with Pre => Valid (Val); @@ -56,16 +46,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_TLV_Length return RFLX.TLV.Length is - (RFLX.TLV.Length'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); diff --git a/tests/spark/generated/rflx-udp-datagram.ads b/tests/spark/generated/rflx-udp-datagram.ads index 3bf648b31..e5eebcac5 100644 --- a/tests/spark/generated/rflx-udp-datagram.ads +++ b/tests/spark/generated/rflx-udp-datagram.ads @@ -722,31 +722,31 @@ private when F_Source_Port => RFLX.UDP.Port'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Source_Port => (case Fld is when F_Destination_Port => RFLX.UDP.Port'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Destination_Port => (case Fld is when F_Length => RFLX.UDP.Length_Base'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Length => (case Fld is when F_Checksum => RFLX.UDP.Checksum'Size, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Checksum => (case Fld is when F_Payload => (RFLX_Types.Bit_Length (Ctx.Cursors (F_Length).Value.Length_Value) - 8) * 8, when others => - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Payload | F_Final => 0)); @@ -760,28 +760,28 @@ private then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Length => (if Ctx.Cursors (Fld).Predecessor = F_Destination_Port then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Checksum => (if Ctx.Cursors (Fld).Predecessor = F_Length then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length), + raise Program_Error), when F_Payload => (if Ctx.Cursors (Fld).Predecessor = F_Checksum then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else - RFLX_Types.Unreachable_Bit_Length))); + raise Program_Error))); function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); diff --git a/tests/spark/generated/rflx-udp.ads b/tests/spark/generated/rflx-udp.ads index c2ada8f3b..650f356b0 100644 --- a/tests/spark/generated/rflx-udp.ads +++ b/tests/spark/generated/rflx-udp.ads @@ -9,16 +9,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_UDP_Port return RFLX.UDP.Port is - (RFLX.UDP.Port'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); @@ -47,16 +37,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_UDP_Length return RFLX.UDP.Length is - (RFLX.UDP.Length'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - function Valid (Val : RFLX.UDP.Length_Base) return Boolean is (Val >= 8); @@ -73,16 +53,6 @@ is Size => 16; - pragma Warnings (Off, "precondition is * false"); - - function Unreachable_UDP_Checksum return RFLX.UDP.Checksum is - (RFLX.UDP.Checksum'First) - with - Pre => - False; - - pragma Warnings (On, "precondition is * false"); - pragma Warnings (Off, "unused variable ""Val"""); pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); diff --git a/tests/unit/ada_test.py b/tests/unit/ada_test.py index 623247288..f88344541 100644 --- a/tests/unit/ada_test.py +++ b/tests/unit/ada_test.py @@ -219,6 +219,11 @@ def test_string_str() -> None: assert str(ada.String("X Y")) == '"X Y"' +def test_raise_str() -> None: + assert str(ada.Raise("X")) == "raise X" + assert str(ada.Raise("X", ada.String("Y"))) == 'raise X with "Y"' + + def test_expr_str() -> None: assert_equal( str( From 0be5d10414027b6ffc4b882e9b01b0a479b196a8 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Wed, 12 May 2021 15:04:32 +0200 Subject: [PATCH 07/43] Use default proof switches for example apps Ref. #659 --- examples/apps/ping/ping.gpr | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/examples/apps/ping/ping.gpr b/examples/apps/ping/ping.gpr index 845eb8bac..5795c6122 100644 --- a/examples/apps/ping/ping.gpr +++ b/examples/apps/ping/ping.gpr @@ -30,18 +30,7 @@ project Ping is package Prove is for Proof_Dir use "proof"; - - for Proof_Switches ("Ada") use ( - "-j0", - "--prover=cvc4,z3,altergo", - "--steps=0", - "--timeout=90", - "--memlimit=1000", - "--checks-as-errors", - "--warnings=error", - "--proof-warnings", - "--no-axiom-guard" - ); + for Proof_Switches ("Ada") use Defaults.Proof_Switches; end Prove; end Ping; From bf0931daffe56f7360a0c37975c3c4b3bbb117c0 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Mon, 11 Jan 2021 15:52:34 +0100 Subject: [PATCH 08/43] Enable deallocation of Bytes_Ptr Ref. #292 --- examples/apps/ping/src/icmpv4.adb | 12 ++-- rflx/templates/rflx_generic_types.ads | 3 + .../generated/rflx-rflx_generic_types.ads | 3 + tests/spark/rflx-derivation_tests.adb | 6 +- tests/spark/rflx-enumeration_tests.adb | 8 +-- tests/spark/rflx-ethernet_tests.adb | 32 +++++----- tests/spark/rflx-expression_tests.adb | 5 +- tests/spark/rflx-in_ethernet_tests.adb | 6 +- tests/spark/rflx-in_ipv4_tests.adb | 8 +-- tests/spark/rflx-in_tlv_tests.adb | 3 +- tests/spark/rflx-ipv4_tests.adb | 12 ++-- tests/spark/rflx-sequence_tests.adb | 64 +++++++++---------- tests/spark/rflx-tlv_tests.adb | 26 ++++---- tests/spark/spark.ads | 6 -- 14 files changed, 96 insertions(+), 98 deletions(-) diff --git a/examples/apps/ping/src/icmpv4.adb b/examples/apps/ping/src/icmpv4.adb index 770926ed7..f48891689 100644 --- a/examples/apps/ping/src/icmpv4.adb +++ b/examples/apps/ping/src/icmpv4.adb @@ -1,4 +1,3 @@ -with Ada.Unchecked_Deallocation; with Basalt.Strings_Generic; with Interfaces; with RFLX.IPv4.Packet; @@ -44,9 +43,6 @@ is & Img (Address (1)); end Image; - procedure Free_Bytes_Ptr is new Ada.Unchecked_Deallocation (Object => RFLX.RFLX_Builtin_Types.Bytes, - Name => RFLX.RFLX_Builtin_Types.Bytes_Ptr); - procedure Ping (Addr : String) is package Socket is new Generic_Socket (RFLX.RFLX_Builtin_Types.Byte, @@ -66,13 +62,13 @@ is or else Addr'Length > 15 or else Buffer = null then - Free_Bytes_Ptr (Buffer); + RFLX.RFLX_Types.Free (Buffer); return; end if; ICMPv4.Get_Address (Addr, Address, Success); if not Success then Ada.Text_IO.Put_Line ("Failed to parse IP Address: " & Addr); - Free_Bytes_Ptr (Buffer); + RFLX.RFLX_Types.Free (Buffer); return; end if; Ada.Text_IO.Put_Line ("PING " & Addr); @@ -84,14 +80,14 @@ is Socket.Send (Buffer.all (Buffer'First .. Last), Address, Success); if not Success then Ada.Text_IO.Put_Line ("Failed to send packet"); - Free_Bytes_Ptr (Buffer); + RFLX.RFLX_Types.Free (Buffer); return; end if; Buffer.all := (others => 0); Socket.Receive (Buffer.all, Ignore_Last, Success); if not Success then Ada.Text_IO.Put_Line ("Receive failed"); - Free_Bytes_Ptr (Buffer); + RFLX.RFLX_Types.Free (Buffer); return; end if; ICMPv4.Print (Buffer); diff --git a/rflx/templates/rflx_generic_types.ads b/rflx/templates/rflx_generic_types.ads index a591c8b09..f284d6896 100644 --- a/rflx/templates/rflx_generic_types.ads +++ b/rflx/templates/rflx_generic_types.ads @@ -1,5 +1,6 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); +with Ada.Unchecked_Deallocation; with {prefix}RFLX_Arithmetic; generic @@ -74,4 +75,6 @@ is Pre => (Offset'Pos (Off) + Value'Size - 1) / Byte'Size < Data'Length; + procedure Free is new Ada.Unchecked_Deallocation (Object => Bytes, Name => Bytes_Ptr); + end {prefix}RFLX_Generic_Types; diff --git a/tests/spark/generated/rflx-rflx_generic_types.ads b/tests/spark/generated/rflx-rflx_generic_types.ads index 693ddb9df..cc6972181 100644 --- a/tests/spark/generated/rflx-rflx_generic_types.ads +++ b/tests/spark/generated/rflx-rflx_generic_types.ads @@ -1,5 +1,6 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); +with Ada.Unchecked_Deallocation; with RFLX.RFLX_Arithmetic; generic @@ -74,4 +75,6 @@ is Pre => (Offset'Pos (Off) + Value'Size - 1) / Byte'Size < Data'Length; + procedure Free is new Ada.Unchecked_Deallocation (Object => Bytes, Name => Bytes_Ptr); + end RFLX.RFLX_Generic_Types; diff --git a/tests/spark/rflx-derivation_tests.adb b/tests/spark/rflx-derivation_tests.adb index 85be8ba8b..e07411a89 100644 --- a/tests/spark/rflx-derivation_tests.adb +++ b/tests/spark/rflx-derivation_tests.adb @@ -70,7 +70,7 @@ package body RFLX.Derivation_Tests is Assert (not Derivation.Message.Valid_Message (Context), "Valid Message"); Derivation.Message.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (56)'Image, "Invalid Context.Last"); end Test_Parsing; @@ -101,8 +101,8 @@ package body RFLX.Derivation_Tests is Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating; overriding diff --git a/tests/spark/rflx-enumeration_tests.adb b/tests/spark/rflx-enumeration_tests.adb index d13c1c16b..82445b222 100644 --- a/tests/spark/rflx-enumeration_tests.adb +++ b/tests/spark/rflx-enumeration_tests.adb @@ -40,7 +40,7 @@ package body RFLX.Enumeration_Tests is Assert (Enumeration.Message.Valid_Message (Context), "Invalid Message"); Enumeration.Message.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (16)'Image, "Invalid Context.Last"); end Test_Parsing_Enumeration_Known; @@ -70,7 +70,7 @@ package body RFLX.Enumeration_Tests is Assert (Enumeration.Message.Valid_Message (Context), "Invalid Message"); Enumeration.Message.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (16)'Image, "Invalid Context.Last"); end Test_Parsing_Enumeration_Unknown; @@ -103,8 +103,8 @@ package body RFLX.Enumeration_Tests is Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_Enumeration; overriding diff --git a/tests/spark/rflx-ethernet_tests.adb b/tests/spark/rflx-ethernet_tests.adb index eafd68397..58ff57f4a 100644 --- a/tests/spark/rflx-ethernet_tests.adb +++ b/tests/spark/rflx-ethernet_tests.adb @@ -87,7 +87,7 @@ package body RFLX.Ethernet_Tests is Assert (not Ethernet.Frame.Valid_Message (Context), "Valid frame"); Ethernet.Frame.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (480)'Image, "Invalid Context.Last"); end Test_Parsing_Ethernet_II; @@ -142,7 +142,7 @@ package body RFLX.Ethernet_Tests is Assert (not Ethernet.Frame.Valid_Message (Context), "Valid frame"); Ethernet.Frame.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (480)'Image, "Invalid Context.Last"); end Test_Parsing_IEEE_802_3; @@ -193,7 +193,7 @@ package body RFLX.Ethernet_Tests is Assert (not Ethernet.Frame.Valid_Message (Context), "Valid frame"); Ethernet.Frame.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (520)'Image, "Invalid Context.Last"); end Test_Parsing_Ethernet_II_VLAN; @@ -214,7 +214,7 @@ package body RFLX.Ethernet_Tests is Assert (not Ethernet.Frame.Incomplete_Message (Context), "Incomplete frame"); Ethernet.Frame.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (456)'Image, "Invalid Context.Last"); end Test_Parsing_Invalid_Ethernet_II_Too_Short; @@ -235,7 +235,7 @@ package body RFLX.Ethernet_Tests is Assert (not Ethernet.Frame.Incomplete_Message (Context), "Incomplete frame"); Ethernet.Frame.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (12168)'Image, "Invalid Context.Last"); end Test_Parsing_Invalid_Ethernet_II_Too_Long; @@ -256,7 +256,7 @@ package body RFLX.Ethernet_Tests is Assert (not Ethernet.Frame.Incomplete_Message (Context), "Incomplete frame"); Ethernet.Frame.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (272)'Image, "Invalid Context.Last"); end Test_Parsing_Invalid_Ethernet_II_Undefined_Type; @@ -277,7 +277,7 @@ package body RFLX.Ethernet_Tests is Assert (Ethernet.Frame.Incomplete_Message (Context), "Not incomplete frame"); Ethernet.Frame.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (480)'Image, "Invalid Context.Last"); end Test_Parsing_Invalid_IEEE_802_3_Invalid_Length; @@ -304,7 +304,7 @@ package body RFLX.Ethernet_Tests is Assert (Ethernet.Frame.Incomplete_Message (Context), "Not incomplete frame"); Ethernet.Frame.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (96)'Image, "Invalid Context.Last"); end Test_Parsing_Incomplete; @@ -339,8 +339,8 @@ package body RFLX.Ethernet_Tests is Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_Ethernet_II; procedure Test_Generating_IEEE_802_3 (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -376,8 +376,8 @@ package body RFLX.Ethernet_Tests is Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_IEEE_802_3; procedure Test_Generating_Ethernet_II_VLAN (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -414,8 +414,8 @@ package body RFLX.Ethernet_Tests is Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_Ethernet_II_VLAN; procedure Test_Generating_Ethernet_II_VLAN_Dynamic (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -466,8 +466,8 @@ package body RFLX.Ethernet_Tests is Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_Ethernet_II_VLAN_Dynamic; overriding diff --git a/tests/spark/rflx-expression_tests.adb b/tests/spark/rflx-expression_tests.adb index 85287a5fa..07f7e83bc 100644 --- a/tests/spark/rflx-expression_tests.adb +++ b/tests/spark/rflx-expression_tests.adb @@ -2,6 +2,7 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Bytes, RFLX.RFLX_Builtin_Types.Length; +with RFLX.RFLX_Types; with RFLX.Expression.Message; @@ -43,7 +44,7 @@ package body RFLX.Expression_Tests is Assert (Expression.Message.Structural_Valid_Message (Context), "Invalid Message"); Expression.Message.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (16)'Image, "Invalid Context.Last"); end Test_Expression_Valid; @@ -64,7 +65,7 @@ package body RFLX.Expression_Tests is Assert (not Expression.Message.Structural_Valid_Message (Context), "Structural Valid Message"); Expression.Message.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (16)'Image, "Invalid Context.Last"); end Test_Expression_Invalid; diff --git a/tests/spark/rflx-in_ethernet_tests.adb b/tests/spark/rflx-in_ethernet_tests.adb index 0a1f70ba9..61729590b 100644 --- a/tests/spark/rflx-in_ethernet_tests.adb +++ b/tests/spark/rflx-in_ethernet_tests.adb @@ -58,7 +58,7 @@ package body RFLX.In_Ethernet_Tests is end if; IPv4.Packet.Take_Buffer (IPv4_Packet_Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Ethernet_Frame_Context.Last'Image, RFLX_Builtin_Types.Bit_Length (480)'Image, "Invalid Ethernet_Frame_Context.Last"); @@ -136,8 +136,8 @@ package body RFLX.In_Ethernet_Tests is "Invalid binary representation"); end if; - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); Assert (Ethernet_Frame_Context.Last'Image, RFLX_Builtin_Types.Bit_Length (480)'Image, "Invalid Ethernet_Frame_Context.Last"); diff --git a/tests/spark/rflx-in_ipv4_tests.adb b/tests/spark/rflx-in_ipv4_tests.adb index 10c5c398c..ea9c72856 100644 --- a/tests/spark/rflx-in_ipv4_tests.adb +++ b/tests/spark/rflx-in_ipv4_tests.adb @@ -59,7 +59,7 @@ package body RFLX.In_IPv4_Tests is end if; UDP.Datagram.Take_Buffer (UDP_Datagram_Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (IPv4_Packet_Context.Last'Image, RFLX_Builtin_Types.Bit_Length (352)'Image, "Invalid IPv4_Packet_Context.Last"); @@ -104,7 +104,7 @@ package body RFLX.In_IPv4_Tests is end if; UDP.Datagram.Take_Buffer (UDP_Datagram_Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Ethernet_Frame_Context.Last'Image, RFLX_Builtin_Types.Bit_Length (480)'Image, "Invalid Ethernet_Frame_Context.Last"); @@ -203,8 +203,8 @@ package body RFLX.In_IPv4_Tests is if IPv4.Packet.Has_Buffer (IPv4_Packet_Context) then IPv4.Packet.Take_Buffer (IPv4_Packet_Context, Buffer); end if; - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); Assert (Ethernet_Frame_Context.Last'Image, RFLX_Builtin_Types.Bit_Length (480)'Image, "Invalid Ethernet_Frame_Context.Last"); diff --git a/tests/spark/rflx-in_tlv_tests.adb b/tests/spark/rflx-in_tlv_tests.adb index e1e53d9c3..9c64327e5 100644 --- a/tests/spark/rflx-in_tlv_tests.adb +++ b/tests/spark/rflx-in_tlv_tests.adb @@ -2,6 +2,7 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Length; +with RFLX.RFLX_Types; with RFLX.TLV.Message; with RFLX.In_TLV.Contains; @@ -33,7 +34,7 @@ package body RFLX.In_TLV_Tests is end if; TLV.Message.Take_Buffer (TLV_Message_Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (TLV_Message_Context.Last'Image, RFLX_Builtin_Types.Bit_Length (24)'Image, "Invalid Context.Last"); end Test_Null_In_TLV; diff --git a/tests/spark/rflx-ipv4_tests.adb b/tests/spark/rflx-ipv4_tests.adb index b07f484b1..e92293d4e 100644 --- a/tests/spark/rflx-ipv4_tests.adb +++ b/tests/spark/rflx-ipv4_tests.adb @@ -187,7 +187,7 @@ package body RFLX.IPv4_Tests is Assert (Valid, "Invalid packet"); IPv4.Packet.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (352)'Image, "Invalid Context.Last"); end Test_Parsing_IPv4; @@ -245,7 +245,7 @@ package body RFLX.IPv4_Tests is Assert (Valid, "Invalid option"); IPv4.Option.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (24)'Image, "Invalid Context.Last"); end Test_Parsing_IPv4_Option; @@ -338,8 +338,8 @@ package body RFLX.IPv4_Tests is Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_IPv4; procedure Test_Generating_IPv4_Option (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -374,8 +374,8 @@ package body RFLX.IPv4_Tests is Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_IPv4_Option; overriding diff --git a/tests/spark/rflx-sequence_tests.adb b/tests/spark/rflx-sequence_tests.adb index 97256d8c3..5186bc35a 100644 --- a/tests/spark/rflx-sequence_tests.adb +++ b/tests/spark/rflx-sequence_tests.adb @@ -234,7 +234,7 @@ package body RFLX.Sequence_Tests is Assert (Message.Valid_Message (Context), "Invalid Message after complete parsing"); Message.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (88)'Image, "Invalid Context.Last"); end Test_Parsing_Scalar_Sequence_Sequential; @@ -487,7 +487,7 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); pragma Warnings (On, """Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""Context"""); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); end Test_Parsing_Scalar_Sequence_Loop; procedure Test_Generating_Scalar_Sequence (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -634,8 +634,8 @@ package body RFLX.Sequence_Tests is Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_Scalar_Sequence; procedure Test_Generating_Scalar_Sequence_Independent (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -738,12 +738,12 @@ package body RFLX.Sequence_Tests is Sequence.AV_Enumeration_Vector.Take_Buffer (AV_Enumeration_Vector_Context, AV_Enumeration_Vector_Buffer); pragma Warnings (On, "unused assignment to ""*_Context"""); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); - Free_Bytes_Ptr (Modular_Vector_Buffer); - Free_Bytes_Ptr (Range_Vector_Buffer); - Free_Bytes_Ptr (Enumeration_Vector_Buffer); - Free_Bytes_Ptr (AV_Enumeration_Vector_Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); + RFLX_Types.Free (Modular_Vector_Buffer); + RFLX_Types.Free (Range_Vector_Buffer); + RFLX_Types.Free (Enumeration_Vector_Buffer); + RFLX_Types.Free (AV_Enumeration_Vector_Buffer); end Test_Generating_Scalar_Sequence_Independent; procedure Test_Generating_Scalar_Sequence_Independent_Empty (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -844,12 +844,12 @@ package body RFLX.Sequence_Tests is Sequence.AV_Enumeration_Vector.Take_Buffer (AV_Enumeration_Vector_Context, AV_Enumeration_Vector_Buffer); pragma Warnings (On, "unused assignment to ""*_Context"""); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); - Free_Bytes_Ptr (Modular_Vector_Buffer); - Free_Bytes_Ptr (Range_Vector_Buffer); - Free_Bytes_Ptr (Enumeration_Vector_Buffer); - Free_Bytes_Ptr (AV_Enumeration_Vector_Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); + RFLX_Types.Free (Modular_Vector_Buffer); + RFLX_Types.Free (Range_Vector_Buffer); + RFLX_Types.Free (Enumeration_Vector_Buffer); + RFLX_Types.Free (AV_Enumeration_Vector_Buffer); end Test_Generating_Scalar_Sequence_Independent_Empty; procedure Test_Parsing_Message_Sequence_Sequential (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -945,7 +945,7 @@ package body RFLX.Sequence_Tests is pragma Warnings (On, """Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""Context"""); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); end Test_Parsing_Message_Sequence_Sequential; procedure Test_Parsing_Message_Sequence_Loop (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -1025,7 +1025,7 @@ package body RFLX.Sequence_Tests is pragma Warnings (On, """Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""Context"""); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); end Test_Parsing_Message_Sequence_Loop; procedure Test_Generating_Message_Sequence (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -1102,8 +1102,8 @@ package body RFLX.Sequence_Tests is Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_Message_Sequence; procedure Test_Generating_Message_Sequence_Independent (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -1183,9 +1183,9 @@ package body RFLX.Sequence_Tests is pragma Warnings (On, """Sequence_Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""Sequence_Context"""); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); - Free_Bytes_Ptr (Sequence_Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); + RFLX_Types.Free (Sequence_Buffer); end Test_Generating_Message_Sequence_Independent; procedure Test_Generating_Message_Sequence_Independent_Empty (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -1226,9 +1226,9 @@ package body RFLX.Sequence_Tests is pragma Warnings (On, """Sequence_Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""Sequence_Context"""); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); - Free_Bytes_Ptr (Sequence_Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); + RFLX_Types.Free (Sequence_Buffer); end Test_Generating_Message_Sequence_Independent_Empty; procedure Test_Parsing_Sequence_Size_Defined_By_Message_Size (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -1299,7 +1299,7 @@ package body RFLX.Sequence_Tests is pragma Warnings (On, """Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""Context"""); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); end Test_Parsing_Sequence_Size_Defined_By_Message_Size; procedure Test_Parsing_Sequence_Size_Defined_By_Message_Size_Empty (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -1330,7 +1330,7 @@ package body RFLX.Sequence_Tests is pragma Warnings (On, """Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""Context"""); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); end Test_Parsing_Sequence_Size_Defined_By_Message_Size_Empty; procedure Test_Generating_Sequence_Size_Defined_By_Message_Size (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -1376,8 +1376,8 @@ package body RFLX.Sequence_Tests is Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Buffer); - Free_Bytes_Ptr (Expected); + RFLX_Types.Free (Buffer); + RFLX_Types.Free (Expected); end Test_Generating_Sequence_Size_Defined_By_Message_Size; procedure Test_Generating_Sequence_Size_Defined_By_Message_Size_Empty @@ -1408,8 +1408,8 @@ package body RFLX.Sequence_Tests is Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Buffer); - Free_Bytes_Ptr (Expected); + RFLX_Types.Free (Buffer); + RFLX_Types.Free (Expected); end Test_Generating_Sequence_Size_Defined_By_Message_Size_Empty; overriding diff --git a/tests/spark/rflx-tlv_tests.adb b/tests/spark/rflx-tlv_tests.adb index b04038a72..398503d56 100644 --- a/tests/spark/rflx-tlv_tests.adb +++ b/tests/spark/rflx-tlv_tests.adb @@ -70,7 +70,7 @@ package body RFLX.TLV_Tests is Assert (TLV.Message.Byte_Size (Context)'Image, RFLX_Builtin_Types.Length'Image (7), "Invalid message size"); TLV.Message.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (56)'Image, "Invalid Context.Last"); end Test_Parsing_TLV_Data; @@ -102,7 +102,7 @@ package body RFLX.TLV_Tests is Assert (TLV.Message.Byte_Size (Context)'Image, RFLX_Builtin_Types.Length'Image (3), "Invalid message size"); TLV.Message.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (24)'Image, "Invalid Context.Last"); end Test_Parsing_TLV_Data_Zero; @@ -126,7 +126,7 @@ package body RFLX.TLV_Tests is Assert (TLV.Message.Valid_Message (Context), "Invalid Message"); TLV.Message.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (8)'Image, "Invalid Context.Last"); end Test_Parsing_TLV_Error; @@ -144,7 +144,7 @@ package body RFLX.TLV_Tests is Assert (not TLV.Message.Valid_Message (Context), "Valid message"); TLV.Message.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (16)'Image, "Invalid Context.Last"); end Test_Parsing_Invalid_TLV_Invalid_Tag; @@ -174,8 +174,8 @@ package body RFLX.TLV_Tests is Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_TLV_Data; procedure Test_Generating_TLV_Data_Generic (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -204,8 +204,8 @@ package body RFLX.TLV_Tests is Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_TLV_Data_Generic; procedure Test_Generating_TLV_Data_Zero (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -232,8 +232,8 @@ package body RFLX.TLV_Tests is Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_TLV_Data_Zero; procedure Test_Generating_TLV_Error (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -259,8 +259,8 @@ package body RFLX.TLV_Tests is Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, "Invalid binary representation"); - Free_Bytes_Ptr (Expected); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Expected); + RFLX_Types.Free (Buffer); end Test_Generating_TLV_Error; procedure Test_Read_Write_Reset (T : in out AUnit.Test_Cases.Test_Case'Class) with @@ -317,7 +317,7 @@ package body RFLX.TLV_Tests is Assert (TLV.Message.Get_Length (Context)'Image, TLV.Length (2)'Image, "Invalid length after writing"); TLV.Message.Take_Buffer (Context, Buffer); - Free_Bytes_Ptr (Buffer); + RFLX_Types.Free (Buffer); Assert (Context.Last'Image, RFLX_Builtin_Types.Bit_Length (56)'Image, "Invalid Context.Last"); end Test_Read_Write_Reset; diff --git a/tests/spark/spark.ads b/tests/spark/spark.ads index 6dbe342d6..9acb2b651 100644 --- a/tests/spark/spark.ads +++ b/tests/spark/spark.ads @@ -1,9 +1,3 @@ -with Ada.Unchecked_Deallocation; -with RFLX.RFLX_Builtin_Types; - package SPARK is - procedure Free_Bytes_Ptr is new Ada.Unchecked_Deallocation (Object => RFLX.RFLX_Builtin_Types.Bytes, - Name => RFLX.RFLX_Builtin_Types.Bytes_Ptr); - end SPARK; From 1ea5f09bbd46ac0225936b831b5107e9c87c4dc1 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 22 Jan 2021 11:51:45 +0100 Subject: [PATCH 09/43] Add calculation of message size based on field values Ref. #292 --- rflx/model/message.py | 134 ++++++++++++++++++++++++++++--- stubs/z3.pyi | 16 ++++ tests/unit/model/message_test.py | 121 ++++++++++++++++++++++++++++ 3 files changed, 262 insertions(+), 9 deletions(-) diff --git a/rflx/model/message.py b/rflx/model/message.py index a27b19922..7d37fedba 100644 --- a/rflx/model/message.py +++ b/rflx/model/message.py @@ -371,11 +371,6 @@ def get_constraints(aggregate: expr.Aggregate, field: expr.Variable) -> Sequence if isinstance(r.left, expr.Variable) and isinstance(r.right, expr.Aggregate): aggregate_constraints.extend(get_constraints(r.right, r.left)) - message_constraints: List[expr.Expr] = [ - expr.Equal(expr.Mod(expr.First("Message"), expr.Number(8)), expr.Number(1)), - expr.Equal(expr.Mod(expr.Size("Message"), expr.Number(8)), expr.Number(0)), - ] - scalar_constraints = [ c for n, t in scalar_types @@ -389,12 +384,18 @@ def get_constraints(aggregate: expr.Aggregate, field: expr.Variable) -> Sequence ] return [ - *message_constraints, *aggregate_constraints, *scalar_constraints, *type_size_constraints, ] + @classmethod + def message_constraints(cls) -> List[expr.Expr]: + return [ + expr.Equal(expr.Mod(expr.First("Message"), expr.Number(8)), expr.Number(1)), + expr.Equal(expr.Mod(expr.Size("Message"), expr.Number(8)), expr.Number(0)), + ] + def __validate(self) -> None: # pylint: disable=too-many-branches, too-many-locals @@ -638,6 +639,110 @@ def is_possibly_empty(self, field: Field) -> bool: return False + def size(self, field_values: Mapping[Field, expr.Expr]) -> expr.Expr: + def to_mapping(facts: Sequence[expr.Expr]) -> Dict[expr.Name, expr.Expr]: + return { + f.left: f.right + for f in facts + if isinstance(f, (expr.Equal, expr.GreaterEqual)) and isinstance(f.left, expr.Name) + } + + def remove_variable_prefix(expression: expr.Expr) -> expr.Expr: + if isinstance(expression, expr.Variable) and expression.name.startswith("RFLX_"): + return expr.Variable( + expression.name[5:], + expression.negative, + expression.immutable, + expression.type_, + location=expression.location, + ) + return expression + + fields = set(field_values) + values = [ + expr.Equal(expr.Variable(f.name), v, location=v.location) + for f, v in field_values.items() + ] + aggregate_sizes = [ + expr.Equal(expr.Size(f.name), expr.Number(len(v.elements) * 8), location=v.location) + for f, v in field_values.items() + if isinstance(v, expr.Aggregate) + ] + composite_sizes = [ + expr.Equal( + expr.Size(f.name), + expr.Size( + expr.Variable( + "RFLX_" + v.identifier, + type_=v.type_, + location=v.location, + ) + ), + ) + for f, v in field_values.items() + if isinstance(self.types[f], mty.Composite) and isinstance(v, expr.Variable) + ] + failures = [] + + for path in self.paths(FINAL): + if fields != set(l.target for l in path if l.target != FINAL): + continue + message_size = expr.Add( + *[ + expr.Size(link.target.name) + for link in path + if link.target != FINAL and link.first == expr.UNDEFINED + ] + ) + link_expressions = [fact for link in path for fact in self.__link_expression(link)] + proof = expr.Equal(expr.Size("Message"), message_size).check( + [ + *aggregate_sizes, + *composite_sizes, + *link_expressions, + *values, + *self.type_constraints(expr.TRUE), + ] + ) + + if proof.result == expr.ProofResult.SAT: + return ( + message_size.substituted(mapping=to_mapping(aggregate_sizes + composite_sizes)) + .substituted(mapping=to_mapping(link_expressions)) + .substituted(mapping=to_mapping(values)) + .substituted(mapping=to_mapping(self.type_constraints(expr.TRUE))) + .substituted(remove_variable_prefix) + .simplified() + ) + + failures.append((path, proof.error)) + + error = RecordFluxError() + error.append( + f"unable to calculate size for message \"{self.identifier}'(" + + ", ".join(f"{f.identifier} => {v}" for f, v in field_values.items()) + + ')"', + Subsystem.MODEL, + Severity.ERROR, + self.location, + ) + for path, proof_error in failures: + error.append( + "on path " + " -> ".join([l.target.name for l in path]), + Subsystem.MODEL, + Severity.INFO, + self.location, + ) + error.extend( + [ + (f'unsatisfied "{m}"', Subsystem.MODEL, Severity.INFO, locn) + for m, locn in proof_error + ] + ) + error.propagate() + + assert False + def __verify_expression_types(self) -> None: types: Dict[ID, mty.Type] = {} @@ -945,7 +1050,7 @@ def __prove_contradictions(self) -> None: for c in self.outgoing(f): paths += 1 contradiction = c.condition - constraints = self.type_constraints(contradiction) + constraints = self.message_constraints() + self.type_constraints(contradiction) proof = contradiction.check([*constraints, *facts]) if proof.result == expr.ProofResult.SAT: continue @@ -1134,7 +1239,13 @@ def __prove_field_positions(self) -> None: last.location, ) ) - proof = start_aligned.check([*facts, *self.type_constraints(start_aligned)]) + proof = start_aligned.check( + [ + *facts, + *self.message_constraints(), + *self.type_constraints(start_aligned), + ] + ) if proof.result != expr.ProofResult.UNSAT: path_message = " -> ".join([p.target.name for p in path]) self.error.append( @@ -1154,7 +1265,11 @@ def __prove_field_positions(self) -> None: ) ) proof = is_multiple_of_element_size.check( - [*facts, *self.type_constraints(is_multiple_of_element_size)] + [ + *facts, + *self.message_constraints(), + *self.type_constraints(is_multiple_of_element_size), + ] ) if proof.result != expr.ProofResult.UNSAT: path_message = " -> ".join([p.target.name for p in path]) @@ -1421,6 +1536,7 @@ def prune_dangling_fields( merged_condition = expr.And(link.condition, final_link.condition) proof = merged_condition.check( [ + *inner_message.message_constraints(), *inner_message.type_constraints(merged_condition), inner_message.field_condition(final_link.source), ] diff --git a/stubs/z3.pyi b/stubs/z3.pyi index fb6b7d78f..5504aa72f 100644 --- a/stubs/z3.pyi +++ b/stubs/z3.pyi @@ -23,6 +23,11 @@ class ArithRef(ExprRef): def __le__(self, other: "ArithRef") -> BoolRef: ... def __neg__(self) -> "ArithRef": ... +class IntNumRef(ArithRef): + def as_long(self) -> int: ... + def as_string(self) -> str: ... + def as_binary_string(self) -> bytes: ... + def Int(name: str, ctx: Optional[Context] = None) -> ArithRef: ... def IntVal(val: int, ctx: Optional[Context] = None) -> ArithRef: ... def Sum(*args: ArithRef) -> ArithRef: ... @@ -53,3 +58,14 @@ class Solver: class SolverFor(Solver): def __init__(self, logic: str) -> None: ... + +class OptimizeObjective: + def lower(self) -> ExprRef: ... + def upper(self) -> ExprRef: ... + def value(self) -> ExprRef: ... + +class Optimize: + def add(self, *args: ExprRef) -> None: ... + def maximize(self, arg: ExprRef) -> OptimizeObjective: ... + def minimize(self, arg: ExprRef) -> OptimizeObjective: ... + def check(self, *assumptions: ExprRef) -> CheckSatResult: ... diff --git a/tests/unit/model/message_test.py b/tests/unit/model/message_test.py index 3d9069c47..5c4d25d70 100644 --- a/tests/unit/model/message_test.py +++ b/tests/unit/model/message_test.py @@ -59,6 +59,7 @@ MODULAR_INTEGER, RANGE_INTEGER, SEQUENCE_MODULAR_VECTOR, + TLV_MESSAGE, ) from tests.utils import assert_equal, assert_message_model_error, assert_type_error, multilinestr @@ -2479,6 +2480,126 @@ def test_is_possibly_empty() -> None: assert message.is_possibly_empty(c) +def test_size() -> None: + assert TLV_MESSAGE.size({Field("Tag"): Variable("Msg_Error")}) == Number(8) + assert ( + TLV_MESSAGE.size( + { + Field("Tag"): Variable("Msg_Data"), + Field("Length"): Number(4), + Field("Value"): Aggregate(*[Number(0)] * 4), + } + ) + == Number(56) + ) + assert ( + TLV_MESSAGE.size( + { + Field("Tag"): Variable("Msg_Data"), + Field("Length"): Div(Add(Size("Tag"), Size("TLV::Length")), Number(8)), + Field("Value"): Aggregate(*[Number(0)] * 3), + } + ) + == Number(48) + ) + assert ( + TLV_MESSAGE.size( + { + Field("Tag"): Variable("Msg_Data"), + Field("Length"): Add(Div(Size("X"), Number(8)), Variable("Y")), + Field("Value"): Variable("Z"), + } + ) + == Add(Size("Z"), Number(24)) + ) + + assert ( + ETHERNET_FRAME.size( + { + Field("Destination"): Number(0), + Field("Source"): Number(0), + Field("Type_Length_TPID"): Number(46), + Field("Type_Length"): Number(46), + Field("Payload"): Aggregate(*[Number(0)] * 46), + } + ) + == Number(480) + ) + assert ( + ETHERNET_FRAME.size( + { + Field("Destination"): Number(0), + Field("Source"): Number(0), + Field("Type_Length_TPID"): Number(0x8100), + Field("TPID"): Number(0x8100), + Field("TCI"): Number(0), + Field("Type_Length"): Number(46), + Field("Payload"): Aggregate(*[Number(0)] * 46), + } + ) + == Number(512) + ) + assert ( + ETHERNET_FRAME.size( + { + Field("Destination"): Number(0), + Field("Source"): Number(0), + Field("Type_Length_TPID"): Number(1536), + Field("Type_Length"): Number(1536), + Field("Payload"): Aggregate(*[Number(0)] * 46), + } + ) + == Number(480) + ) + assert ( + ETHERNET_FRAME.size( + { + Field("Destination"): Number(0), + Field("Source"): Number(0), + Field("Type_Length_TPID"): Number(1536), + Field("Type_Length"): Number(1536), + Field("Payload"): Variable("Payload"), + } + ) + == Add(Size("Payload"), Number(112)) + ) + + +def test_size_error() -> None: + with pytest.raises( + RecordFluxError, + match=r'^model: error: unable to calculate size for message "TLV::Message\'\(\)"$', + ): + TLV_MESSAGE.size({}) + with pytest.raises( + RecordFluxError, + match=( + r"^" + r'model: error: unable to calculate size for message "Ethernet::Frame\'' + r"\(Destination => 0, Source => 0, Type_Length_TPID => 0, Type_Length => 0," + r' Payload => \[\]\)"\n' + r"model: info: on path Destination -> Source -> Type_Length_TPID -> Type_Length" + r" -> Payload -> Final\n" + r'model: info: unsatisfied "Type_Length = 0"\n' + r'model: info: unsatisfied "Type_Length >= 46"\n' + r"model: info: on path Destination -> Source -> Type_Length_TPID -> Type_Length" + r" -> Payload -> Final\n" + r'model: info: unsatisfied "Type_Length = 0"\n' + r'model: info: unsatisfied "Type_Length >= 46"' + r"$" + ), + ): + ETHERNET_FRAME.size( + { + Field("Destination"): Number(0), + Field("Source"): Number(0), + Field("Type_Length_TPID"): Number(0), + Field("Type_Length"): Number(0), + Field("Payload"): Aggregate(), + } + ) + + def test_derived_message_incorrect_base_name() -> None: with pytest.raises( RecordFluxError, From 8a08d2c0f3e39f8860bcb9ce58482f2088897279 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 6 Apr 2021 11:45:07 +0200 Subject: [PATCH 10/43] Improve error messages for incorrect identifiers --- rflx/identifier.py | 13 ++++++++++--- tests/unit/generator_test.py | 2 +- tests/unit/identifier_test.py | 16 ++++++++++------ 3 files changed, 21 insertions(+), 10 deletions(-) diff --git a/rflx/identifier.py b/rflx/identifier.py index 13993c1a6..6e1cd203b 100644 --- a/rflx/identifier.py +++ b/rflx/identifier.py @@ -24,13 +24,20 @@ def __init__( error = RecordFluxError() if not self._parts: - error.append("empty identifier", Subsystem.ID, Severity.ERROR) + error.append("empty identifier", Subsystem.ID, Severity.ERROR, location) elif "" in self._parts: - error.append("empty part in identifier", Subsystem.ID, Severity.ERROR) + error.append( + f'empty part in identifier "{self}"', Subsystem.ID, Severity.ERROR, location + ) else: for c in [" ", ".", ":"]: if any(c in part for part in self._parts): - error.append(f'"{c}" in identifier parts', Subsystem.ID, Severity.ERROR) + error.append( + f'"{c}" in identifier parts of "{self}"', + Subsystem.ID, + Severity.ERROR, + location, + ) error.propagate() def __eq__(self, other: object) -> bool: diff --git a/tests/unit/generator_test.py b/tests/unit/generator_test.py index 617303c18..b84466201 100644 --- a/tests/unit/generator_test.py +++ b/tests/unit/generator_test.py @@ -33,7 +33,7 @@ def generate(model: Model) -> Generator: def test_invalid_prefix() -> None: - with pytest.raises(RecordFluxError, match=r"^id: error: empty part in identifier$"): + with pytest.raises(RecordFluxError, match=r'^id: error: empty part in identifier "A..B"$'): Generator(Model(), "A..B") diff --git a/tests/unit/identifier_test.py b/tests/unit/identifier_test.py index 5745bc158..ed1b5ad6e 100644 --- a/tests/unit/identifier_test.py +++ b/tests/unit/identifier_test.py @@ -25,32 +25,36 @@ def test_id_invalid_empty() -> None: def test_id_invalid_empty_string() -> None: - with pytest.raises(RecordFluxError, match=r"^id: error: empty part in identifier$"): + with pytest.raises(RecordFluxError, match=r'^id: error: empty part in identifier ""$'): ID("") def test_id_invalid_empty_part() -> None: - with pytest.raises(RecordFluxError, match=r"^id: error: empty part in identifier$"): + with pytest.raises(RecordFluxError, match=r'^id: error: empty part in identifier "A::::B"$'): ID("A::::B") def test_id_invalid_empty_first_part() -> None: - with pytest.raises(RecordFluxError, match=r"^id: error: empty part in identifier$"): + with pytest.raises(RecordFluxError, match=r'^id: error: empty part in identifier "::A::B"$'): ID("::A::B") def test_id_invalid_empty_last_part() -> None: - with pytest.raises(RecordFluxError, match=r"^id: error: empty part in identifier$"): + with pytest.raises(RecordFluxError, match=r'^id: error: empty part in identifier "A::B::"$'): ID("A::B::") def test_id_invalid_whitespace() -> None: - with pytest.raises(RecordFluxError, match=r'^id: error: " " in identifier parts$'): + with pytest.raises( + RecordFluxError, match=r'^id: error: " " in identifier parts of "A::B C::D"$' + ): ID("A::B C::D") def test_id_invalid_colon() -> None: - with pytest.raises(RecordFluxError, match=r'^id: error: ":" in identifier parts$'): + with pytest.raises( + RecordFluxError, match=r'^id: error: ":" in identifier parts of "A::B:C::D"$' + ): ID("A::B:C::D") From 6bda750743cb7f00091812b19fa263d4b70e7f44 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 6 Apr 2021 15:09:45 +0200 Subject: [PATCH 11/43] Enable determining all dependencies of type --- rflx/model/message.py | 9 ++++++++- rflx/model/type_.py | 15 +++++++++++++++ tests/unit/model/message_test.py | 22 ++++++++++++++++++++++ tests/unit/model/type_test.py | 20 ++++++++++++++++++++ 4 files changed, 65 insertions(+), 1 deletion(-) diff --git a/rflx/model/message.py b/rflx/model/message.py index 7d37fedba..35ca9f433 100644 --- a/rflx/model/message.py +++ b/rflx/model/message.py @@ -9,7 +9,7 @@ import rflx.typing_ as rty from rflx import expression as expr -from rflx.common import Base, indent, indent_next, verbose_repr +from rflx.common import Base, indent, indent_next, unique, verbose_repr from rflx.contract import ensure, invariant from rflx.error import Location, RecordFluxError, Severity, Subsystem, fail from rflx.identifier import ID, StrID @@ -135,6 +135,9 @@ def __init__( except RecordFluxError: pass + def __hash__(self) -> int: + return hash(self.identifier) + def __eq__(self, other: object) -> bool: if isinstance(other, self.__class__): return ( @@ -193,6 +196,10 @@ def refined_type(self, refinements: Sequence["Refinement"]) -> rty.Message: [(r.field.name, r.sdu.type_) for r in refinements], ) + @property + def all_types(self) -> List[mty.Type]: + return [self, *unique(a for t in self.types.values() for a in t.all_types)] + @abstractmethod def copy( self, diff --git a/rflx/model/type_.py b/rflx/model/type_.py index 7b4583568..b77c8ba19 100644 --- a/rflx/model/type_.py +++ b/rflx/model/type_.py @@ -29,6 +29,9 @@ def __init__( self.identifier = identifier self.location = location + def __hash__(self) -> int: + return hash(self.identifier) + @property def full_name(self) -> str: return str(self.identifier) @@ -45,6 +48,14 @@ def package(self) -> ID: def type_(self) -> rty.Type: return rty.Undefined() + @property + def all_types(self) -> ty.List["Type"]: + """ + Return a list consisting of the type and all types on which the type depends. The + dependencies are determined recursively. + """ + return [self] + class Scalar(Type): def __init__(self, identifier: StrID, size: expr.Expr, location: Location = None) -> None: @@ -509,6 +520,10 @@ def type_(self) -> rty.Type: def element_size(self) -> expr.Expr: return expr.Size(self.element_type.name) + @property + def all_types(self) -> ty.List["Type"]: + return [self, *self.element_type.all_types] + class Opaque(Composite): def __init__(self, location: Location = None) -> None: diff --git a/tests/unit/model/message_test.py b/tests/unit/model/message_test.py index 5c4d25d70..8f1cebfc4 100644 --- a/tests/unit/model/message_test.py +++ b/tests/unit/model/message_test.py @@ -58,8 +58,14 @@ ETHERNET_FRAME, MODULAR_INTEGER, RANGE_INTEGER, + SEQUENCE_INNER_MESSAGE, + SEQUENCE_INNER_MESSAGES, + SEQUENCE_LENGTH, + SEQUENCE_MESSAGES_MESSAGE, SEQUENCE_MODULAR_VECTOR, + TLV_LENGTH, TLV_MESSAGE, + TLV_TAG, ) from tests.utils import assert_equal, assert_message_model_error, assert_type_error, multilinestr @@ -3008,6 +3014,22 @@ def test_paths() -> None: } +def test_message_all_types() -> None: + assert TLV_MESSAGE.all_types == [ + TLV_MESSAGE, + TLV_TAG, + TLV_LENGTH, + OPAQUE, + ] + assert SEQUENCE_MESSAGES_MESSAGE.all_types == [ + SEQUENCE_MESSAGES_MESSAGE, + SEQUENCE_LENGTH, + SEQUENCE_INNER_MESSAGES, + SEQUENCE_INNER_MESSAGE, + OPAQUE, + ] + + def test_message_str() -> None: message = Message( "P::M", diff --git a/tests/unit/model/type_test.py b/tests/unit/model/type_test.py index 7a53e48ff..bbdf05d0e 100644 --- a/tests/unit/model/type_test.py +++ b/tests/unit/model/type_test.py @@ -39,6 +39,13 @@ class NewType(Type): assert NewType("P::T").type_ == rty.Undefined() +def test_type_all_types() -> None: + class NewType(Type): + pass + + assert NewType("P::T").all_types == [NewType("P::T")] + + def test_modular_size() -> None: assert ModularInteger("P::T", Pow(Number(2), Number(32))).size == Number(32) assert ModularInteger("P::T", Pow(Number(2), Number(32))).size_expr == Number(32) @@ -288,6 +295,19 @@ def test_enumeration_invalid_multiple_duplicate_elements() -> None: ) +def test_sequence_all_types() -> None: + assert models.SEQUENCE_MODULAR_VECTOR.all_types == [ + models.SEQUENCE_MODULAR_VECTOR, + models.SEQUENCE_MODULAR_INTEGER, + ] + assert models.SEQUENCE_INNER_MESSAGES.all_types == [ + models.SEQUENCE_INNER_MESSAGES, + models.SEQUENCE_INNER_MESSAGE, + models.SEQUENCE_LENGTH, + OPAQUE, + ] + + def test_sequence_invalid_element_type() -> None: assert_type_error( Sequence( From 9b13a14d46e420ad24b44940bcbc21cbf46f9d0c Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 30 Apr 2021 11:57:54 +0200 Subject: [PATCH 12/43] Allow use of sequence element types in messages This allows e.g. using the size of a sequence element in a size aspect. --- rflx/model/message.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rflx/model/message.py b/rflx/model/message.py index 35ca9f433..712ad1cc1 100644 --- a/rflx/model/message.py +++ b/rflx/model/message.py @@ -121,8 +121,8 @@ def __init__( assert len(self.identifier.parts) > 1, "type identifier must contain package" - self._enum_literals = mty.qualified_enum_literals(self.types.values(), self.package) - self._type_literals = mty.qualified_type_literals(self.types.values()) + self._enum_literals = mty.qualified_enum_literals(self.all_types, self.package) + self._type_literals = mty.qualified_type_literals(self.all_types) if not state and (structure or types): try: From d6cc0ddacbe3996764fa0dfd877574ac38aab7d3 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 6 Apr 2021 17:35:56 +0200 Subject: [PATCH 13/43] Enable changing bounds when resetting message context --- rflx/generator/generator.py | 74 +++++++++++++++++++ .../generated/rflx-derivation-message.adb | 5 ++ .../generated/rflx-derivation-message.ads | 18 +++++ .../generated/rflx-enumeration-message.adb | 5 ++ .../generated/rflx-enumeration-message.ads | 18 +++++ tests/spark/generated/rflx-ethernet-frame.adb | 5 ++ tests/spark/generated/rflx-ethernet-frame.ads | 18 +++++ .../generated/rflx-expression-message.adb | 5 ++ .../generated/rflx-expression-message.ads | 18 +++++ tests/spark/generated/rflx-icmp-message.adb | 5 ++ tests/spark/generated/rflx-icmp-message.ads | 18 +++++ tests/spark/generated/rflx-ipv4-option.adb | 5 ++ tests/spark/generated/rflx-ipv4-option.ads | 18 +++++ tests/spark/generated/rflx-ipv4-packet.adb | 5 ++ tests/spark/generated/rflx-ipv4-packet.ads | 18 +++++ .../generated/rflx-sequence-inner_message.adb | 5 ++ .../generated/rflx-sequence-inner_message.ads | 18 +++++ .../spark/generated/rflx-sequence-message.adb | 5 ++ .../spark/generated/rflx-sequence-message.ads | 18 +++++ .../rflx-sequence-messages_message.adb | 5 ++ .../rflx-sequence-messages_message.ads | 18 +++++ ...-sequence_size_defined_by_message_size.adb | 5 ++ ...-sequence_size_defined_by_message_size.ads | 18 +++++ tests/spark/generated/rflx-tlv-message.adb | 5 ++ tests/spark/generated/rflx-tlv-message.ads | 18 +++++ tests/spark/generated/rflx-udp-datagram.adb | 5 ++ tests/spark/generated/rflx-udp-datagram.ads | 18 +++++ 27 files changed, 373 insertions(+) diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index e2e6fefa1..fcff462d4 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -330,6 +330,7 @@ def __create_message(self, message: Message) -> None: unit += self.__create_restricted_initialize_procedure(message) unit += self.__create_initialized_function(message) unit += self.__create_reset_procedure(message) + unit += self.__create_restricted_reset_procedure(message) unit += self.__create_take_buffer_procedure() unit += self.__create_copy_procedure() unit += self.__create_read_procedure() @@ -905,6 +906,79 @@ def __create_reset_procedure(message: Message) -> UnitPart: ], ) + @staticmethod + def __create_restricted_reset_procedure(message: Message) -> UnitPart: + specification = ProcedureSpecification( + "Reset", + [ + InOutParameter(["Ctx"], "Context"), + Parameter(["First", "Last"], const.TYPES_BIT_INDEX), + ], + ) + + return UnitPart( + [ + SubprogramDeclaration( + specification, + [ + Precondition( + And( + Not(Constrained("Ctx")), + Call("Has_Buffer", [Variable("Ctx")]), + GreaterEqual( + Call(const.TYPES_BYTE_INDEX, [Variable("First")]), + Variable("Ctx.Buffer_First"), + ), + LessEqual( + Call(const.TYPES_BYTE_INDEX, [Variable("Last")]), + Variable("Ctx.Buffer_Last"), + ), + LessEqual(Variable("First"), Variable("Last")), + Less(Variable("Last"), Last(const.TYPES_BIT_INDEX)), + Equal(Mod(Variable("First"), Size(const.TYPES_BYTE)), Number(1)), + Equal(Mod(Variable("Last"), Size(const.TYPES_BYTE)), Number(0)), + ) + ), + Postcondition( + And( + Call("Has_Buffer", [Variable("Ctx")]), + *[ + Equal(e, Old(e)) + for e in [ + Variable("Ctx.Buffer_First"), + Variable("Ctx.Buffer_Last"), + ] + ], + Equal(Variable("Ctx.First"), Variable("First")), + Equal(Variable("Ctx.Last"), Variable("Last")), + Call("Initialized", [Variable("Ctx")]), + ) + ), + ], + ) + ], + [ + SubprogramBody( + specification, + [], + [ + Assignment( + "Ctx", + Aggregate( + Variable("Ctx.Buffer_First"), + Variable("Ctx.Buffer_Last"), + Variable("First"), + Variable("Last"), + Sub(Variable("First"), Number(1)), + Variable("Ctx.Buffer"), + context_cursors_initialization(message), + ), + ), + ], + ) + ], + ) + @staticmethod def __create_take_buffer_procedure() -> UnitPart: specification = ProcedureSpecification( diff --git a/tests/spark/generated/rflx-derivation-message.adb b/tests/spark/generated/rflx-derivation-message.adb index 4c8e0a052..93e47971d 100644 --- a/tests/spark/generated/rflx-derivation-message.adb +++ b/tests/spark/generated/rflx-derivation-message.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Tag => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-derivation-message.ads b/tests/spark/generated/rflx-derivation-message.ads index b2932c18f..7fe8f7602 100644 --- a/tests/spark/generated/rflx-derivation-message.ads +++ b/tests/spark/generated/rflx-derivation-message.ads @@ -106,6 +106,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-enumeration-message.adb b/tests/spark/generated/rflx-enumeration-message.adb index bc8f51db5..5d2ba9022 100644 --- a/tests/spark/generated/rflx-enumeration-message.adb +++ b/tests/spark/generated/rflx-enumeration-message.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Priority => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-enumeration-message.ads b/tests/spark/generated/rflx-enumeration-message.ads index c48ca7d6d..55a2fb7a8 100644 --- a/tests/spark/generated/rflx-enumeration-message.ads +++ b/tests/spark/generated/rflx-enumeration-message.ads @@ -102,6 +102,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-ethernet-frame.adb b/tests/spark/generated/rflx-ethernet-frame.adb index ce5087d17..c1313fa87 100644 --- a/tests/spark/generated/rflx-ethernet-frame.adb +++ b/tests/spark/generated/rflx-ethernet-frame.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Destination => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-ethernet-frame.ads b/tests/spark/generated/rflx-ethernet-frame.ads index 5b459ffd3..ac171c415 100644 --- a/tests/spark/generated/rflx-ethernet-frame.ads +++ b/tests/spark/generated/rflx-ethernet-frame.ads @@ -112,6 +112,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-expression-message.adb b/tests/spark/generated/rflx-expression-message.adb index fd97d4733..35a296846 100644 --- a/tests/spark/generated/rflx-expression-message.adb +++ b/tests/spark/generated/rflx-expression-message.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Payload => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-expression-message.ads b/tests/spark/generated/rflx-expression-message.ads index f3702b6c7..26a6c39b1 100644 --- a/tests/spark/generated/rflx-expression-message.ads +++ b/tests/spark/generated/rflx-expression-message.ads @@ -100,6 +100,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-icmp-message.adb b/tests/spark/generated/rflx-icmp-message.adb index 1d55f4933..c2b38343c 100644 --- a/tests/spark/generated/rflx-icmp-message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Tag => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index 2e11c2a93..b8e4a0c3a 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -130,6 +130,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-ipv4-option.adb b/tests/spark/generated/rflx-ipv4-option.adb index 3881d56fd..6e2510a29 100644 --- a/tests/spark/generated/rflx-ipv4-option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Copied => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index 8090c1b13..cf8563ae0 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -111,6 +111,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-ipv4-packet.adb b/tests/spark/generated/rflx-ipv4-packet.adb index a43efe69b..239df192a 100644 --- a/tests/spark/generated/rflx-ipv4-packet.adb +++ b/tests/spark/generated/rflx-ipv4-packet.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Version => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-ipv4-packet.ads b/tests/spark/generated/rflx-ipv4-packet.ads index 960aaaac6..1b2c24fcd 100644 --- a/tests/spark/generated/rflx-ipv4-packet.ads +++ b/tests/spark/generated/rflx-ipv4-packet.ads @@ -134,6 +134,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-sequence-inner_message.adb b/tests/spark/generated/rflx-sequence-inner_message.adb index 4c86f9860..286fbaf5c 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.adb +++ b/tests/spark/generated/rflx-sequence-inner_message.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Length => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-sequence-inner_message.ads b/tests/spark/generated/rflx-sequence-inner_message.ads index 03f1bca44..000a1c869 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.ads +++ b/tests/spark/generated/rflx-sequence-inner_message.ads @@ -102,6 +102,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-sequence-message.adb b/tests/spark/generated/rflx-sequence-message.adb index 18aa55944..3a3d9bfe7 100644 --- a/tests/spark/generated/rflx-sequence-message.adb +++ b/tests/spark/generated/rflx-sequence-message.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Length => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-sequence-message.ads b/tests/spark/generated/rflx-sequence-message.ads index 4721c2216..3fdbe1817 100644 --- a/tests/spark/generated/rflx-sequence-message.ads +++ b/tests/spark/generated/rflx-sequence-message.ads @@ -106,6 +106,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-sequence-messages_message.adb b/tests/spark/generated/rflx-sequence-messages_message.adb index 48720caac..81b39c075 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.adb +++ b/tests/spark/generated/rflx-sequence-messages_message.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Length => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-sequence-messages_message.ads b/tests/spark/generated/rflx-sequence-messages_message.ads index c2b1a52f8..9d79205a8 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.ads +++ b/tests/spark/generated/rflx-sequence-messages_message.ads @@ -103,6 +103,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb index 0bef5486f..6fb587d07 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Header => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads index e45376deb..87fd7d121 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads @@ -103,6 +103,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-tlv-message.adb b/tests/spark/generated/rflx-tlv-message.adb index 23f4a6184..9daf3a214 100644 --- a/tests/spark/generated/rflx-tlv-message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Tag => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index a3f329717..f00e6836c 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -104,6 +104,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), diff --git a/tests/spark/generated/rflx-udp-datagram.adb b/tests/spark/generated/rflx-udp-datagram.adb index 11d448ab7..f3fc851ae 100644 --- a/tests/spark/generated/rflx-udp-datagram.adb +++ b/tests/spark/generated/rflx-udp-datagram.adb @@ -24,6 +24,11 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Source_Port => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is begin Buffer := Ctx.Buffer; diff --git a/tests/spark/generated/rflx-udp-datagram.ads b/tests/spark/generated/rflx-udp-datagram.ads index e5eebcac5..f0b68593a 100644 --- a/tests/spark/generated/rflx-udp-datagram.ads +++ b/tests/spark/generated/rflx-udp-datagram.ads @@ -108,6 +108,24 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); + procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First + and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and First <= Last + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with Pre => Has_Buffer (Ctx), From be3ee08cf1840525412c4ab1e7fa6716d7736d6e Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Wed, 7 Apr 2021 12:11:09 +0200 Subject: [PATCH 14/43] Add length parameter to write procedure of messages --- rflx/generator/generator.py | 43 ++++++++++++------- .../generated/rflx-derivation-message.adb | 5 ++- .../generated/rflx-derivation-message.ads | 6 +-- .../generated/rflx-enumeration-message.adb | 5 ++- .../generated/rflx-enumeration-message.ads | 6 +-- tests/spark/generated/rflx-ethernet-frame.adb | 5 ++- tests/spark/generated/rflx-ethernet-frame.ads | 6 +-- .../generated/rflx-expression-message.adb | 5 ++- .../generated/rflx-expression-message.ads | 6 +-- tests/spark/generated/rflx-icmp-message.adb | 5 ++- tests/spark/generated/rflx-icmp-message.ads | 6 +-- tests/spark/generated/rflx-ipv4-option.adb | 5 ++- tests/spark/generated/rflx-ipv4-option.ads | 6 +-- tests/spark/generated/rflx-ipv4-packet.adb | 5 ++- tests/spark/generated/rflx-ipv4-packet.ads | 6 +-- .../generated/rflx-sequence-inner_message.adb | 5 ++- .../generated/rflx-sequence-inner_message.ads | 6 +-- .../spark/generated/rflx-sequence-message.adb | 5 ++- .../spark/generated/rflx-sequence-message.ads | 6 +-- .../rflx-sequence-messages_message.adb | 5 ++- .../rflx-sequence-messages_message.ads | 6 +-- ...-sequence_size_defined_by_message_size.adb | 5 ++- ...-sequence_size_defined_by_message_size.ads | 6 +-- tests/spark/generated/rflx-tlv-message.adb | 5 ++- tests/spark/generated/rflx-tlv-message.ads | 6 +-- tests/spark/generated/rflx-udp-datagram.adb | 5 ++- tests/spark/generated/rflx-udp-datagram.ads | 6 +-- tests/spark/rflx-tlv_tests.adb | 3 +- 28 files changed, 107 insertions(+), 82 deletions(-) diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index fcff462d4..58f270956 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -1152,7 +1152,8 @@ def __create_write_procedure() -> UnitPart: specification, [ Precondition( - AndThen( + And( + Not(Constrained("Ctx")), Call("Has_Buffer", [Variable("Ctx")]), ) ), @@ -1165,7 +1166,6 @@ def __create_write_procedure() -> UnitPart: Variable("Ctx.Buffer_First"), Variable("Ctx.Buffer_Last"), Variable("Ctx.First"), - Variable("Ctx.Last"), ] ], Call("Initialized", [Variable("Ctx")]), @@ -1176,7 +1176,10 @@ def __create_write_procedure() -> UnitPart: FormalSubprogramDeclaration( ProcedureSpecification( "Write", - [OutParameter(["Buffer"], const.TYPES_BYTES)], + [ + OutParameter(["Buffer"], const.TYPES_BYTES), + OutParameter(["Length"], const.TYPES_LENGTH), + ], ) ), ], @@ -1185,14 +1188,8 @@ def __create_write_procedure() -> UnitPart: [ SubprogramBody( specification, - [], + [ObjectDeclaration(["Length"], const.TYPES_LENGTH)], [ - CallStatement( - "Reset", - [ - Variable("Ctx"), - ], - ), CallStatement( "Write", [ @@ -1202,7 +1199,25 @@ def __create_write_procedure() -> UnitPart: Call(const.TYPES_BYTE_INDEX, [Variable("Ctx.First")]), Call(const.TYPES_BYTE_INDEX, [Variable("Ctx.Last")]), ), - ) + ), + Variable("Length"), + ], + ), + CallStatement( + "Reset", + [ + Variable("Ctx"), + Variable("Ctx.First"), + Call( + const.TYPES_LAST_BIT_INDEX, + [ + Add( + Call(const.TYPES_BYTE_INDEX, [Variable("Ctx.First")]), + Call(const.TYPES_INDEX, [Variable("Length")]), + -Number(1), + ), + ], + ), ], ), ], @@ -2646,11 +2661,7 @@ def __create_refinement(self, refinement: Refinement) -> None: else: unit = self.__create_unit( unit_name, - [ - WithClause(self.__prefix * const.TYPES_PACKAGE), - ] - if not null_sdu - else [], + [WithClause(self.__prefix * const.TYPES_PACKAGE)] if not null_sdu else [], ) assert isinstance(unit, PackageUnit), "unexpected unit type" diff --git a/tests/spark/generated/rflx-derivation-message.adb b/tests/spark/generated/rflx-derivation-message.adb index 93e47971d..30233fdfa 100644 --- a/tests/spark/generated/rflx-derivation-message.adb +++ b/tests/spark/generated/rflx-derivation-message.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-derivation-message.ads b/tests/spark/generated/rflx-derivation-message.ads index 7fe8f7602..46241e0b5 100644 --- a/tests/spark/generated/rflx-derivation-message.ads +++ b/tests/spark/generated/rflx-derivation-message.ads @@ -154,16 +154,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-enumeration-message.adb b/tests/spark/generated/rflx-enumeration-message.adb index 5d2ba9022..e8858de7c 100644 --- a/tests/spark/generated/rflx-enumeration-message.adb +++ b/tests/spark/generated/rflx-enumeration-message.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-enumeration-message.ads b/tests/spark/generated/rflx-enumeration-message.ads index 55a2fb7a8..9aee1d9da 100644 --- a/tests/spark/generated/rflx-enumeration-message.ads +++ b/tests/spark/generated/rflx-enumeration-message.ads @@ -150,16 +150,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-ethernet-frame.adb b/tests/spark/generated/rflx-ethernet-frame.adb index c1313fa87..ffe70f901 100644 --- a/tests/spark/generated/rflx-ethernet-frame.adb +++ b/tests/spark/generated/rflx-ethernet-frame.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-ethernet-frame.ads b/tests/spark/generated/rflx-ethernet-frame.ads index ac171c415..d65d93496 100644 --- a/tests/spark/generated/rflx-ethernet-frame.ads +++ b/tests/spark/generated/rflx-ethernet-frame.ads @@ -160,16 +160,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-expression-message.adb b/tests/spark/generated/rflx-expression-message.adb index 35a296846..69b0b98b9 100644 --- a/tests/spark/generated/rflx-expression-message.adb +++ b/tests/spark/generated/rflx-expression-message.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-expression-message.ads b/tests/spark/generated/rflx-expression-message.ads index 26a6c39b1..df5288497 100644 --- a/tests/spark/generated/rflx-expression-message.ads +++ b/tests/spark/generated/rflx-expression-message.ads @@ -148,16 +148,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-icmp-message.adb b/tests/spark/generated/rflx-icmp-message.adb index c2b38343c..e1b1f7554 100644 --- a/tests/spark/generated/rflx-icmp-message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index b8e4a0c3a..b0be5d051 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -178,16 +178,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-ipv4-option.adb b/tests/spark/generated/rflx-ipv4-option.adb index 6e2510a29..2b6a75d9c 100644 --- a/tests/spark/generated/rflx-ipv4-option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index cf8563ae0..dd7066117 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -159,16 +159,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-ipv4-packet.adb b/tests/spark/generated/rflx-ipv4-packet.adb index 239df192a..b9dea2076 100644 --- a/tests/spark/generated/rflx-ipv4-packet.adb +++ b/tests/spark/generated/rflx-ipv4-packet.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-ipv4-packet.ads b/tests/spark/generated/rflx-ipv4-packet.ads index 1b2c24fcd..3fedf8ac7 100644 --- a/tests/spark/generated/rflx-ipv4-packet.ads +++ b/tests/spark/generated/rflx-ipv4-packet.ads @@ -182,16 +182,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-sequence-inner_message.adb b/tests/spark/generated/rflx-sequence-inner_message.adb index 286fbaf5c..884dc3d76 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.adb +++ b/tests/spark/generated/rflx-sequence-inner_message.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-sequence-inner_message.ads b/tests/spark/generated/rflx-sequence-inner_message.ads index 000a1c869..c629107cc 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.ads +++ b/tests/spark/generated/rflx-sequence-inner_message.ads @@ -150,16 +150,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-sequence-message.adb b/tests/spark/generated/rflx-sequence-message.adb index 3a3d9bfe7..24451c36e 100644 --- a/tests/spark/generated/rflx-sequence-message.adb +++ b/tests/spark/generated/rflx-sequence-message.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-sequence-message.ads b/tests/spark/generated/rflx-sequence-message.ads index 3fdbe1817..5ffd77fce 100644 --- a/tests/spark/generated/rflx-sequence-message.ads +++ b/tests/spark/generated/rflx-sequence-message.ads @@ -154,16 +154,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-sequence-messages_message.adb b/tests/spark/generated/rflx-sequence-messages_message.adb index 81b39c075..f8c70e4e7 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.adb +++ b/tests/spark/generated/rflx-sequence-messages_message.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-sequence-messages_message.ads b/tests/spark/generated/rflx-sequence-messages_message.ads index 9d79205a8..edd25f753 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.ads +++ b/tests/spark/generated/rflx-sequence-messages_message.ads @@ -151,16 +151,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb index 6fb587d07..24b2013bf 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads index 87fd7d121..101bc407b 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads @@ -151,16 +151,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-tlv-message.adb b/tests/spark/generated/rflx-tlv-message.adb index 9daf3a214..a666f83ab 100644 --- a/tests/spark/generated/rflx-tlv-message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index f00e6836c..28a9c776c 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -152,16 +152,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/generated/rflx-udp-datagram.adb b/tests/spark/generated/rflx-udp-datagram.adb index f3fc851ae..25b6a564e 100644 --- a/tests/spark/generated/rflx-udp-datagram.adb +++ b/tests/spark/generated/rflx-udp-datagram.adb @@ -50,9 +50,10 @@ is end Read; procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; begin - Reset (Ctx); - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last))); + Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-udp-datagram.ads b/tests/spark/generated/rflx-udp-datagram.ads index f0b68593a..6a0dade59 100644 --- a/tests/spark/generated/rflx-udp-datagram.ads +++ b/tests/spark/generated/rflx-udp-datagram.ads @@ -156,16 +156,16 @@ is and then Structural_Valid_Message (Ctx); generic - with procedure Write (Buffer : out RFLX_Types.Bytes); + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); procedure Write (Ctx : in out Context) with Pre => - Has_Buffer (Ctx), + not Ctx'Constrained + and Has_Buffer (Ctx), Post => Has_Buffer (Ctx) and Ctx.Buffer_First = Ctx.Buffer_First'Old and Ctx.Buffer_Last = Ctx.Buffer_Last'Old and Ctx.First = Ctx.First'Old - and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); function Has_Buffer (Ctx : Context) return Boolean; diff --git a/tests/spark/rflx-tlv_tests.adb b/tests/spark/rflx-tlv_tests.adb index 398503d56..9b55c1ec8 100644 --- a/tests/spark/rflx-tlv_tests.adb +++ b/tests/spark/rflx-tlv_tests.adb @@ -298,10 +298,11 @@ package body RFLX.TLV_Tests is Assert (not TLV.Message.Structural_Valid_Message (Context), "Structural valid message after reset"); declare - procedure Write (Buffer : out RFLX_Builtin_Types.Bytes) is + procedure Write (Buffer : out RFLX_Builtin_Types.Bytes; Length : out RFLX_Builtin_Types.Length) is begin Assert (Buffer'Length = 7, "Invalid buffer length"); Buffer := (1, 0, 2, 0, 0, 0, 0); + Length := Buffer'Length; end Write; procedure Message_Write is new TLV.Message.Write (Write); begin From eb40fd2016b538c4511bf2e12cd13b7c76ae7b31 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 9 Apr 2021 19:20:56 +0200 Subject: [PATCH 15/43] Allow empty range in contexts Ref. #292 --- examples/apps/ping/src/icmpv4.ads | 1 + rflx/generator/common.py | 2 +- rflx/generator/generator.py | 33 ++++++++++++------- rflx/templates/rflx_builtin_types.ads | 2 +- rflx/templates/rflx_generic_types.ads | 5 ++- rflx/templates/rflx_message_sequence.adb | 2 +- rflx/templates/rflx_message_sequence.ads | 22 ++++++------- rflx/templates/rflx_scalar_sequence.adb | 2 +- rflx/templates/rflx_scalar_sequence.ads | 18 +++++----- .../generated/rflx-derivation-message.adb | 6 ++-- .../generated/rflx-derivation-message.ads | 20 +++++------ .../generated/rflx-enumeration-message.adb | 6 ++-- .../generated/rflx-enumeration-message.ads | 20 +++++------ tests/spark/generated/rflx-ethernet-frame.adb | 6 ++-- tests/spark/generated/rflx-ethernet-frame.ads | 20 +++++------ .../generated/rflx-expression-message.adb | 6 ++-- .../generated/rflx-expression-message.ads | 20 +++++------ tests/spark/generated/rflx-icmp-message.adb | 6 ++-- tests/spark/generated/rflx-icmp-message.ads | 20 +++++------ .../generated/rflx-in_ethernet-contains.adb | 2 +- .../spark/generated/rflx-in_ipv4-contains.adb | 4 +-- tests/spark/generated/rflx-ipv4-option.adb | 6 ++-- tests/spark/generated/rflx-ipv4-option.ads | 20 +++++------ tests/spark/generated/rflx-ipv4-packet.adb | 6 ++-- tests/spark/generated/rflx-ipv4-packet.ads | 20 +++++------ .../generated/rflx-rflx_builtin_types.ads | 2 +- .../generated/rflx-rflx_generic_types.ads | 5 ++- .../generated/rflx-rflx_message_sequence.adb | 2 +- .../generated/rflx-rflx_message_sequence.ads | 22 ++++++------- .../generated/rflx-rflx_scalar_sequence.adb | 2 +- .../generated/rflx-rflx_scalar_sequence.ads | 18 +++++----- .../generated/rflx-sequence-inner_message.adb | 6 ++-- .../generated/rflx-sequence-inner_message.ads | 20 +++++------ .../spark/generated/rflx-sequence-message.adb | 6 ++-- .../spark/generated/rflx-sequence-message.ads | 20 +++++------ .../rflx-sequence-messages_message.adb | 6 ++-- .../rflx-sequence-messages_message.ads | 20 +++++------ ...-sequence_size_defined_by_message_size.adb | 6 ++-- ...-sequence_size_defined_by_message_size.ads | 20 +++++------ tests/spark/generated/rflx-tlv-message.adb | 6 ++-- tests/spark/generated/rflx-tlv-message.ads | 20 +++++------ tests/spark/generated/rflx-udp-datagram.adb | 6 ++-- tests/spark/generated/rflx-udp-datagram.ads | 20 +++++------ tests/spark/rflx-derivation_tests.adb | 6 ++-- tests/spark/rflx-enumeration_tests.adb | 6 ++-- tests/spark/rflx-ethernet_tests.adb | 12 ++++--- tests/spark/rflx-expression_tests.adb | 4 ++- tests/spark/rflx-in_ethernet_tests.adb | 6 ++-- tests/spark/rflx-in_ipv4_tests.adb | 6 ++-- tests/spark/rflx-in_tlv_tests.adb | 2 +- tests/spark/rflx-ipv4_tests.adb | 8 +++-- tests/spark/rflx-sequence_tests.adb | 20 ++++++----- tests/spark/rflx-tlv_tests.adb | 12 ++++--- tests/spark/spark-assertions.adb | 16 +++++---- tests/spark/spark-assertions.ads | 4 ++- tests/spark/spark-file_io.adb | 4 +-- 56 files changed, 314 insertions(+), 274 deletions(-) diff --git a/examples/apps/ping/src/icmpv4.ads b/examples/apps/ping/src/icmpv4.ads index 506da0b06..d1d17435e 100644 --- a/examples/apps/ping/src/icmpv4.ads +++ b/examples/apps/ping/src/icmpv4.ads @@ -13,6 +13,7 @@ is use type RFLX.RFLX_Builtin_Types.Bytes_Ptr; use type RFLX.RFLX_Builtin_Types.Length; + use type RFLX.RFLX_Builtin_Types.Index; procedure Get_Address (Str : String; Addr : out RFLX.IPv4.Address; diff --git a/rflx/generator/common.py b/rflx/generator/common.py index 4f0f57ee8..271ad2973 100644 --- a/rflx/generator/common.py +++ b/rflx/generator/common.py @@ -495,7 +495,7 @@ def public_context_predicate() -> ada.Expr: ada.LessEqual( ada.Call(const.TYPES_BYTE_INDEX, [ada.Variable("Last")]), ada.Variable("Buffer_Last") ), - ada.LessEqual(ada.Variable("First"), ada.Variable("Last")), + ada.LessEqual(ada.Variable("First"), ada.Add(ada.Variable("Last"), ada.Number(1))), ada.Less(ada.Variable("Last"), ada.Last(const.TYPES_BIT_INDEX)), ada.Equal(ada.Mod(ada.Variable("First"), ada.Size(const.TYPES_BYTE)), ada.Number(1)), ada.Equal(ada.Mod(ada.Variable("Last"), ada.Size(const.TYPES_BYTE)), ada.Number(0)), diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 58f270956..3f8b469a8 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -574,9 +574,7 @@ def __create_context_type() -> UnitPart: ["Buffer_First", "Buffer_Last"], const.TYPES_INDEX, First(const.TYPES_INDEX) ), Discriminant(["First"], const.TYPES_BIT_INDEX, First(const.TYPES_BIT_INDEX)), - Discriminant( - ["Last"], const.TYPES_BIT_INDEX, Add(First(const.TYPES_BIT_INDEX), Number(7)) - ), + Discriminant(["Last"], const.TYPES_BIT_LENGTH, First(const.TYPES_BIT_LENGTH)), ] return UnitPart( @@ -739,7 +737,8 @@ def __create_restricted_initialize_procedure(message: Message) -> UnitPart: [ OutParameter(["Ctx"], "Context"), InOutParameter(["Buffer"], const.TYPES_BYTES_PTR), - Parameter(["First", "Last"], const.TYPES_BIT_INDEX), + Parameter(["First"], const.TYPES_BIT_INDEX), + Parameter(["Last"], const.TYPES_BIT_LENGTH), ], ) @@ -761,7 +760,7 @@ def __create_restricted_initialize_procedure(message: Message) -> UnitPart: Call(const.TYPES_BYTE_INDEX, [Variable("Last")]), Last("Buffer"), ), - LessEqual(Variable("First"), Variable("Last")), + LessEqual(Variable("First"), Add(Variable("Last"), Number(1))), Less(Variable("Last"), Last(const.TYPES_BIT_INDEX)), Equal(Mod(Variable("First"), Size(const.TYPES_BYTE)), Number(1)), Equal(Mod(Variable("Last"), Size(const.TYPES_BYTE)), Number(0)), @@ -912,7 +911,8 @@ def __create_restricted_reset_procedure(message: Message) -> UnitPart: "Reset", [ InOutParameter(["Ctx"], "Context"), - Parameter(["First", "Last"], const.TYPES_BIT_INDEX), + Parameter(["First"], const.TYPES_BIT_INDEX), + Parameter(["Last"], const.TYPES_BIT_LENGTH), ], ) @@ -933,8 +933,8 @@ def __create_restricted_reset_procedure(message: Message) -> UnitPart: Call(const.TYPES_BYTE_INDEX, [Variable("Last")]), Variable("Ctx.Buffer_Last"), ), - LessEqual(Variable("First"), Variable("Last")), - Less(Variable("Last"), Last(const.TYPES_BIT_INDEX)), + LessEqual(Variable("First"), Add(Variable("Last"), Number(1))), + Less(Variable("Last"), Last(const.TYPES_BIT_LENGTH)), Equal(Mod(Variable("First"), Size(const.TYPES_BYTE)), Number(1)), Equal(Mod(Variable("Last"), Size(const.TYPES_BYTE)), Number(0)), ) @@ -1212,8 +1212,16 @@ def __create_write_procedure() -> UnitPart: const.TYPES_LAST_BIT_INDEX, [ Add( - Call(const.TYPES_BYTE_INDEX, [Variable("Ctx.First")]), - Call(const.TYPES_INDEX, [Variable("Length")]), + Call( + const.TYPES_LENGTH, + [ + Call( + const.TYPES_BYTE_INDEX, + [Variable("Ctx.First")], + ) + ], + ), + Variable("Length"), -Number(1), ), ], @@ -2577,7 +2585,8 @@ def __create_valid_context_function( "Boolean", [ Parameter(["Buffer_First", "Buffer_Last"], const.TYPES_INDEX), - Parameter(["First", "Last"], const.TYPES_BIT_INDEX), + Parameter(["First"], const.TYPES_BIT_INDEX), + Parameter(["Last"], const.TYPES_BIT_LENGTH), Parameter(["Message_Last"], const.TYPES_BIT_LENGTH), Parameter(["Buffer"], const.TYPES_BYTES_PTR), Parameter(["Cursors"], "Field_Cursors"), @@ -3070,7 +3079,7 @@ def __create_switch_procedure( ), ObjectDeclaration( ["Last"], - const.TYPES_BIT_INDEX, + const.TYPES_BIT_LENGTH, Call( pdu_identifier * "Field_Last", [ diff --git a/rflx/templates/rflx_builtin_types.ads b/rflx/templates/rflx_builtin_types.ads index 1ce628c9c..a7a0ea055 100644 --- a/rflx/templates/rflx_builtin_types.ads +++ b/rflx/templates/rflx_builtin_types.ads @@ -6,7 +6,7 @@ is type Length is new Natural; - subtype Index is Length range 1 .. Length'Last; + type Index is new Length range 1 .. Length'Last; type Byte is mod 2**8; diff --git a/rflx/templates/rflx_generic_types.ads b/rflx/templates/rflx_generic_types.ads index f284d6896..9b91ce900 100644 --- a/rflx/templates/rflx_generic_types.ads +++ b/rflx/templates/rflx_generic_types.ads @@ -47,7 +47,7 @@ is subtype U64 is {prefix}RFLX_Arithmetic.U64; - function Byte_Index (Bit_Idx : Bit_Index) return Index is + function Byte_Index (Bit_Idx : Bit_Length) return Index is (Index (Length ((Bit_Idx - 1) / 8) + 1)); function First_Bit_Index (Idx : Index) return Bit_Index is @@ -56,6 +56,9 @@ is function Last_Bit_Index (Idx : Index) return Bit_Index is ((Bit_Length (Idx) - 1) * 8 + 8); + function Last_Bit_Index (Idx : Length) return Bit_Length is + ((Bit_Length (Idx) - 1) * 8 + 8); + type Offset is mod 8; generic diff --git a/rflx/templates/rflx_message_sequence.adb b/rflx/templates/rflx_message_sequence.adb index 2169a0ed4..fd1f2a317 100644 --- a/rflx/templates/rflx_message_sequence.adb +++ b/rflx/templates/rflx_message_sequence.adb @@ -9,7 +9,7 @@ is Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Buffer_First => Buffer_First, Buffer_Last => Buffer_Last, First => First, Last => Last, Buffer => Buffer, Sequence_Last => First - 1, State => S_Valid); Buffer := null; diff --git a/rflx/templates/rflx_message_sequence.ads b/rflx/templates/rflx_message_sequence.ads index fa3a1cda3..b17105661 100644 --- a/rflx/templates/rflx_message_sequence.ads +++ b/rflx/templates/rflx_message_sequence.ads @@ -2,8 +2,8 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); with {prefix}RFLX_Types; generic - type Element_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is private; - with procedure Element_Initialize (Ctx : out Element_Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index); + type Element_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is private; + with procedure Element_Initialize (Ctx : out Element_Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length); with procedure Element_Take_Buffer (Ctx : in out Element_Context; Buffer : out RFLX_Types.Bytes_Ptr); with function Element_Has_Buffer (Ctx : Element_Context) return Boolean; with function Element_Last (Ctx : Element_Context) return RFLX_Types.Bit_Index; @@ -23,12 +23,12 @@ is pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last <= RFLX_Types.Bit_Index'Last - 1 + and First <= Last + 1 + and Last <= RFLX_Types.Bit_Length'Last - 1 and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -50,7 +50,7 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => (not Ctx'Constrained and then Buffer /= null @@ -58,8 +58,8 @@ is and then Buffer'Last = Buffer_Last and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last <= RFLX_Types.Bit_Index'Last - 1 + and then First <= Last + 1 + and then Last <= RFLX_Types.Bit_Length'Last - 1 and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0), Post => @@ -183,7 +183,7 @@ private type Context_State is (S_Valid, S_Invalid); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Sequence_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; @@ -195,8 +195,8 @@ private and Buffer'Last = Buffer_Last)) and RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last <= RFLX_Types.Bit_Index'Last - 1 + and First <= Last + 1 + and Last <= RFLX_Types.Bit_Length'Last - 1 and First - 1 <= Sequence_Last and Sequence_Last <= Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/rflx/templates/rflx_scalar_sequence.adb b/rflx/templates/rflx_scalar_sequence.adb index 197043c5e..bf9582bb2 100644 --- a/rflx/templates/rflx_scalar_sequence.adb +++ b/rflx/templates/rflx_scalar_sequence.adb @@ -9,7 +9,7 @@ is Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Buffer_First => Buffer_First, Buffer_Last => Buffer_Last, First => First, Last => Last, Buffer => Buffer, Sequence_Last => First - 1, State => S_Valid, First_Element => Element_Base_Type'First, Next_Element => Element_Base_Type'First); Buffer := null; diff --git a/rflx/templates/rflx_scalar_sequence.ads b/rflx/templates/rflx_scalar_sequence.ads index 0ec0bc521..958101411 100644 --- a/rflx/templates/rflx_scalar_sequence.ads +++ b/rflx/templates/rflx_scalar_sequence.ads @@ -19,13 +19,13 @@ is pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First, Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last and First mod RFLX_Types.Byte'Size = 1 - and First <= Last - and Last <= RFLX_Types.Bit_Index'Last - 1; + and First <= Last + 1 + and Last <= RFLX_Types.Bit_Length'Last - 1; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with Pre => @@ -45,7 +45,7 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => (not Ctx'Constrained and then Buffer /= null @@ -54,8 +54,8 @@ is and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last and then First mod RFLX_Types.Byte'Size = 1 - and then First <= Last - and then Last <= RFLX_Types.Bit_Index'Last - 1), + and then First <= Last + 1 + and then Last <= RFLX_Types.Bit_Length'Last - 1), Post => (Buffer = null and Has_Buffer (Ctx) @@ -164,7 +164,7 @@ private type Context_State is (S_Valid, S_Invalid); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First, Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Sequence_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; @@ -179,8 +179,8 @@ private and RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last and First mod RFLX_Types.Byte'Size = 1 - and First <= Last - and Last <= RFLX_Types.Bit_Index'Last - 1 + and First <= Last + 1 + and Last <= RFLX_Types.Bit_Length'Last - 1 and Sequence_Last >= First - 1 and Sequence_Last <= Last and (if Sequence_Last > First - 1 and State = S_Valid then Valid (First_Element))); diff --git a/tests/spark/generated/rflx-derivation-message.adb b/tests/spark/generated/rflx-derivation-message.adb index 30233fdfa..04be1429b 100644 --- a/tests/spark/generated/rflx-derivation-message.adb +++ b/tests/spark/generated/rflx-derivation-message.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Tag => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-derivation-message.ads b/tests/spark/generated/rflx-derivation-message.ads index 46241e0b5..e750ea65b 100644 --- a/tests/spark/generated/rflx-derivation-message.ads +++ b/tests/spark/generated/rflx-derivation-message.ads @@ -32,11 +32,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -70,14 +70,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -106,14 +106,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -497,7 +497,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -505,7 +505,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -563,7 +563,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-enumeration-message.adb b/tests/spark/generated/rflx-enumeration-message.adb index e8858de7c..c54b3b84c 100644 --- a/tests/spark/generated/rflx-enumeration-message.adb +++ b/tests/spark/generated/rflx-enumeration-message.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Priority => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-enumeration-message.ads b/tests/spark/generated/rflx-enumeration-message.ads index 9aee1d9da..67607e646 100644 --- a/tests/spark/generated/rflx-enumeration-message.ads +++ b/tests/spark/generated/rflx-enumeration-message.ads @@ -30,11 +30,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -66,14 +66,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -102,14 +102,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -332,7 +332,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -340,7 +340,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -368,7 +368,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-ethernet-frame.adb b/tests/spark/generated/rflx-ethernet-frame.adb index ffe70f901..9dd61e038 100644 --- a/tests/spark/generated/rflx-ethernet-frame.adb +++ b/tests/spark/generated/rflx-ethernet-frame.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Destination => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-ethernet-frame.ads b/tests/spark/generated/rflx-ethernet-frame.ads index d65d93496..d5ee4712b 100644 --- a/tests/spark/generated/rflx-ethernet-frame.ads +++ b/tests/spark/generated/rflx-ethernet-frame.ads @@ -30,11 +30,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -76,14 +76,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -112,14 +112,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -641,7 +641,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -649,7 +649,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -804,7 +804,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-expression-message.adb b/tests/spark/generated/rflx-expression-message.adb index 69b0b98b9..7333c12d9 100644 --- a/tests/spark/generated/rflx-expression-message.adb +++ b/tests/spark/generated/rflx-expression-message.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Payload => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-expression-message.ads b/tests/spark/generated/rflx-expression-message.ads index df5288497..3c6161043 100644 --- a/tests/spark/generated/rflx-expression-message.ads +++ b/tests/spark/generated/rflx-expression-message.ads @@ -30,11 +30,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -64,14 +64,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -100,14 +100,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -392,7 +392,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -400,7 +400,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -428,7 +428,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-icmp-message.adb b/tests/spark/generated/rflx-icmp-message.adb index e1b1f7554..72d1e4bbd 100644 --- a/tests/spark/generated/rflx-icmp-message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Tag => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index b0be5d051..e3e4341d6 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -30,11 +30,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -94,14 +94,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -130,14 +130,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -1190,7 +1190,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -1198,7 +1198,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -1834,7 +1834,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-in_ethernet-contains.adb b/tests/spark/generated/rflx-in_ethernet-contains.adb index a033d379f..fc239c897 100644 --- a/tests/spark/generated/rflx-in_ethernet-contains.adb +++ b/tests/spark/generated/rflx-in_ethernet-contains.adb @@ -7,7 +7,7 @@ is procedure Switch_To_Payload (Ethernet_Frame_PDU_Context : in out Ethernet.Frame.Context; IPv4_Packet_SDU_Context : out IPv4.Packet.Context) is First : constant RFLX_Types.Bit_Index := Ethernet.Frame.Field_First (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload); - Last : constant RFLX_Types.Bit_Index := Ethernet.Frame.Field_Last (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload); + Last : constant RFLX_Types.Bit_Length := Ethernet.Frame.Field_Last (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload); Buffer : RFLX_Types.Bytes_Ptr; begin Ethernet.Frame.Take_Buffer (Ethernet_Frame_PDU_Context, Buffer); diff --git a/tests/spark/generated/rflx-in_ipv4-contains.adb b/tests/spark/generated/rflx-in_ipv4-contains.adb index 345a3fe96..ea1ed288d 100644 --- a/tests/spark/generated/rflx-in_ipv4-contains.adb +++ b/tests/spark/generated/rflx-in_ipv4-contains.adb @@ -7,7 +7,7 @@ is procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4.Packet.Context; UDP_Datagram_SDU_Context : out UDP.Datagram.Context) is First : constant RFLX_Types.Bit_Index := IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); - Last : constant RFLX_Types.Bit_Index := IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); + Last : constant RFLX_Types.Bit_Length := IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); Buffer : RFLX_Types.Bytes_Ptr; begin IPv4.Packet.Take_Buffer (IPv4_Packet_PDU_Context, Buffer); @@ -18,7 +18,7 @@ is procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4.Packet.Context; ICMP_Message_SDU_Context : out ICMP.Message.Context) is First : constant RFLX_Types.Bit_Index := IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); - Last : constant RFLX_Types.Bit_Index := IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); + Last : constant RFLX_Types.Bit_Length := IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); Buffer : RFLX_Types.Bytes_Ptr; begin IPv4.Packet.Take_Buffer (IPv4_Packet_PDU_Context, Buffer); diff --git a/tests/spark/generated/rflx-ipv4-option.adb b/tests/spark/generated/rflx-ipv4-option.adb index 2b6a75d9c..3d4195f4f 100644 --- a/tests/spark/generated/rflx-ipv4-option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Copied => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index dd7066117..4e2a89860 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -33,11 +33,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -75,14 +75,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -111,14 +111,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -595,7 +595,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -603,7 +603,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -715,7 +715,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-ipv4-packet.adb b/tests/spark/generated/rflx-ipv4-packet.adb index b9dea2076..0e6874430 100644 --- a/tests/spark/generated/rflx-ipv4-packet.adb +++ b/tests/spark/generated/rflx-ipv4-packet.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Version => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-ipv4-packet.ads b/tests/spark/generated/rflx-ipv4-packet.ads index 3fedf8ac7..c46a283c6 100644 --- a/tests/spark/generated/rflx-ipv4-packet.ads +++ b/tests/spark/generated/rflx-ipv4-packet.ads @@ -34,11 +34,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -98,14 +98,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -134,14 +134,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -1431,7 +1431,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -1439,7 +1439,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -1709,7 +1709,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-rflx_builtin_types.ads b/tests/spark/generated/rflx-rflx_builtin_types.ads index ce8cf3d7f..52dc6a1b3 100644 --- a/tests/spark/generated/rflx-rflx_builtin_types.ads +++ b/tests/spark/generated/rflx-rflx_builtin_types.ads @@ -6,7 +6,7 @@ is type Length is new Natural; - subtype Index is Length range 1 .. Length'Last; + type Index is new Length range 1 .. Length'Last; type Byte is mod 2**8; diff --git a/tests/spark/generated/rflx-rflx_generic_types.ads b/tests/spark/generated/rflx-rflx_generic_types.ads index cc6972181..debd71940 100644 --- a/tests/spark/generated/rflx-rflx_generic_types.ads +++ b/tests/spark/generated/rflx-rflx_generic_types.ads @@ -47,7 +47,7 @@ is subtype U64 is RFLX.RFLX_Arithmetic.U64; - function Byte_Index (Bit_Idx : Bit_Index) return Index is + function Byte_Index (Bit_Idx : Bit_Length) return Index is (Index (Length ((Bit_Idx - 1) / 8) + 1)); function First_Bit_Index (Idx : Index) return Bit_Index is @@ -56,6 +56,9 @@ is function Last_Bit_Index (Idx : Index) return Bit_Index is ((Bit_Length (Idx) - 1) * 8 + 8); + function Last_Bit_Index (Idx : Length) return Bit_Length is + ((Bit_Length (Idx) - 1) * 8 + 8); + type Offset is mod 8; generic diff --git a/tests/spark/generated/rflx-rflx_message_sequence.adb b/tests/spark/generated/rflx-rflx_message_sequence.adb index 30147ecfb..509d8cc66 100644 --- a/tests/spark/generated/rflx-rflx_message_sequence.adb +++ b/tests/spark/generated/rflx-rflx_message_sequence.adb @@ -9,7 +9,7 @@ is Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Buffer_First => Buffer_First, Buffer_Last => Buffer_Last, First => First, Last => Last, Buffer => Buffer, Sequence_Last => First - 1, State => S_Valid); Buffer := null; diff --git a/tests/spark/generated/rflx-rflx_message_sequence.ads b/tests/spark/generated/rflx-rflx_message_sequence.ads index 5471ad244..36e0a50c7 100644 --- a/tests/spark/generated/rflx-rflx_message_sequence.ads +++ b/tests/spark/generated/rflx-rflx_message_sequence.ads @@ -2,8 +2,8 @@ pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); with RFLX.RFLX_Types; generic - type Element_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is private; - with procedure Element_Initialize (Ctx : out Element_Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index); + type Element_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is private; + with procedure Element_Initialize (Ctx : out Element_Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length); with procedure Element_Take_Buffer (Ctx : in out Element_Context; Buffer : out RFLX_Types.Bytes_Ptr); with function Element_Has_Buffer (Ctx : Element_Context) return Boolean; with function Element_Last (Ctx : Element_Context) return RFLX_Types.Bit_Index; @@ -23,12 +23,12 @@ is pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last <= RFLX_Types.Bit_Index'Last - 1 + and First <= Last + 1 + and Last <= RFLX_Types.Bit_Length'Last - 1 and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -50,7 +50,7 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => (not Ctx'Constrained and then Buffer /= null @@ -58,8 +58,8 @@ is and then Buffer'Last = Buffer_Last and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last - and then Last <= RFLX_Types.Bit_Index'Last - 1 + and then First <= Last + 1 + and then Last <= RFLX_Types.Bit_Length'Last - 1 and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0), Post => @@ -183,7 +183,7 @@ private type Context_State is (S_Valid, S_Invalid); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Sequence_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; @@ -195,8 +195,8 @@ private and Buffer'Last = Buffer_Last)) and RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last - and Last <= RFLX_Types.Bit_Index'Last - 1 + and First <= Last + 1 + and Last <= RFLX_Types.Bit_Length'Last - 1 and First - 1 <= Sequence_Last and Sequence_Last <= Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-rflx_scalar_sequence.adb b/tests/spark/generated/rflx-rflx_scalar_sequence.adb index 01234906e..0b44a21fe 100644 --- a/tests/spark/generated/rflx-rflx_scalar_sequence.adb +++ b/tests/spark/generated/rflx-rflx_scalar_sequence.adb @@ -9,7 +9,7 @@ is Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Buffer_First => Buffer_First, Buffer_Last => Buffer_Last, First => First, Last => Last, Buffer => Buffer, Sequence_Last => First - 1, State => S_Valid, First_Element => Element_Base_Type'First, Next_Element => Element_Base_Type'First); Buffer := null; diff --git a/tests/spark/generated/rflx-rflx_scalar_sequence.ads b/tests/spark/generated/rflx-rflx_scalar_sequence.ads index a4774b1c5..84b49a918 100644 --- a/tests/spark/generated/rflx-rflx_scalar_sequence.ads +++ b/tests/spark/generated/rflx-rflx_scalar_sequence.ads @@ -19,13 +19,13 @@ is pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First, Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last and First mod RFLX_Types.Byte'Size = 1 - and First <= Last - and Last <= RFLX_Types.Bit_Index'Last - 1; + and First <= Last + 1 + and Last <= RFLX_Types.Bit_Length'Last - 1; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with Pre => @@ -45,7 +45,7 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => (not Ctx'Constrained and then Buffer /= null @@ -54,8 +54,8 @@ is and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last and then First mod RFLX_Types.Byte'Size = 1 - and then First <= Last - and then Last <= RFLX_Types.Bit_Index'Last - 1), + and then First <= Last + 1 + and then Last <= RFLX_Types.Bit_Length'Last - 1), Post => (Buffer = null and Has_Buffer (Ctx) @@ -164,7 +164,7 @@ private type Context_State is (S_Valid, S_Invalid); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First, Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Sequence_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; @@ -179,8 +179,8 @@ private and RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last and First mod RFLX_Types.Byte'Size = 1 - and First <= Last - and Last <= RFLX_Types.Bit_Index'Last - 1 + and First <= Last + 1 + and Last <= RFLX_Types.Bit_Length'Last - 1 and Sequence_Last >= First - 1 and Sequence_Last <= Last and (if Sequence_Last > First - 1 and State = S_Valid then Valid (First_Element))); diff --git a/tests/spark/generated/rflx-sequence-inner_message.adb b/tests/spark/generated/rflx-sequence-inner_message.adb index 884dc3d76..4f7aaf7bf 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.adb +++ b/tests/spark/generated/rflx-sequence-inner_message.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Length => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-sequence-inner_message.ads b/tests/spark/generated/rflx-sequence-inner_message.ads index c629107cc..029ab8062 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.ads +++ b/tests/spark/generated/rflx-sequence-inner_message.ads @@ -30,11 +30,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -66,14 +66,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -102,14 +102,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -451,7 +451,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -459,7 +459,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -500,7 +500,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-sequence-message.adb b/tests/spark/generated/rflx-sequence-message.adb index 24451c36e..6205a8b76 100644 --- a/tests/spark/generated/rflx-sequence-message.adb +++ b/tests/spark/generated/rflx-sequence-message.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Length => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-sequence-message.ads b/tests/spark/generated/rflx-sequence-message.ads index 5ffd77fce..dadd46f05 100644 --- a/tests/spark/generated/rflx-sequence-message.ads +++ b/tests/spark/generated/rflx-sequence-message.ads @@ -34,11 +34,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -70,14 +70,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -106,14 +106,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -810,7 +810,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -818,7 +818,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -904,7 +904,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-sequence-messages_message.adb b/tests/spark/generated/rflx-sequence-messages_message.adb index f8c70e4e7..10f7aa041 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.adb +++ b/tests/spark/generated/rflx-sequence-messages_message.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Length => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-sequence-messages_message.ads b/tests/spark/generated/rflx-sequence-messages_message.ads index edd25f753..e3d0a06fb 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.ads +++ b/tests/spark/generated/rflx-sequence-messages_message.ads @@ -31,11 +31,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -67,14 +67,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -103,14 +103,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -467,7 +467,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -475,7 +475,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -516,7 +516,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb index 24b2013bf..f3dd11722 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Header => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads index 101bc407b..db78d0bf0 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads @@ -31,11 +31,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -67,14 +67,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -103,14 +103,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -467,7 +467,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -475,7 +475,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -516,7 +516,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-tlv-message.adb b/tests/spark/generated/rflx-tlv-message.adb index a666f83ab..df7968a09 100644 --- a/tests/spark/generated/rflx-tlv-message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Tag => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index 28a9c776c..2018f8f52 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -30,11 +30,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -68,14 +68,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -104,14 +104,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -495,7 +495,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -503,7 +503,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -561,7 +561,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/generated/rflx-udp-datagram.adb b/tests/spark/generated/rflx-udp-datagram.adb index 25b6a564e..6dbb1d7a9 100644 --- a/tests/spark/generated/rflx-udp-datagram.adb +++ b/tests/spark/generated/rflx-udp-datagram.adb @@ -10,7 +10,7 @@ is Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); end Initialize; - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) is + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is Buffer_First : constant RFLX_Types.Index := Buffer'First; Buffer_Last : constant RFLX_Types.Index := Buffer'Last; begin @@ -24,7 +24,7 @@ is Ctx.Message_Last := Ctx.First - 1; end Reset; - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) is + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is begin Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Source_Port => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); end Reset; @@ -53,7 +53,7 @@ is Length : RFLX_Types.Length; begin Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Byte_Index (Ctx.First) + RFLX_Types.Index (Length) - 1)); + Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is diff --git a/tests/spark/generated/rflx-udp-datagram.ads b/tests/spark/generated/rflx-udp-datagram.ads index 6a0dade59..0b446119b 100644 --- a/tests/spark/generated/rflx-udp-datagram.ads +++ b/tests/spark/generated/rflx-udp-datagram.ads @@ -30,11 +30,11 @@ is Default_Initial_Condition => False; - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is private with + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0; @@ -72,14 +72,14 @@ is Depends => (Ctx => Buffer, Buffer => null); - procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First, Last : RFLX_Types.Bit_Index) with + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 and then RFLX_Types.Byte_Index (First) >= Buffer'First and then RFLX_Types.Byte_Index (Last) <= Buffer'Last - and then First <= Last + and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 and then Last mod RFLX_Types.Byte'Size = 0, @@ -108,14 +108,14 @@ is and Ctx.Last = Ctx.Last'Old and Initialized (Ctx); - procedure Reset (Ctx : in out Context; First, Last : RFLX_Types.Bit_Index) with + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with Pre => not Ctx'Constrained and Has_Buffer (Ctx) and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last - and First <= Last - and Last < RFLX_Types.Bit_Index'Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0, Post => @@ -571,7 +571,7 @@ private pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); - function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First, Last : RFLX_Types.Bit_Index; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is ((if Buffer /= null then @@ -579,7 +579,7 @@ private and Buffer'Last = Buffer_Last) and then (RFLX_Types.Byte_Index (First) >= Buffer_First and RFLX_Types.Byte_Index (Last) <= Buffer_Last - and First <= Last + and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 and Last mod RFLX_Types.Byte'Size = 0) @@ -665,7 +665,7 @@ private pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); - type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First + 7) is + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is record Message_Last : RFLX_Types.Bit_Length := First - 1; Buffer : RFLX_Types.Bytes_Ptr := null; diff --git a/tests/spark/rflx-derivation_tests.adb b/tests/spark/rflx-derivation_tests.adb index e07411a89..44a94192d 100644 --- a/tests/spark/rflx-derivation_tests.adb +++ b/tests/spark/rflx-derivation_tests.adb @@ -1,7 +1,7 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Bit_Length; +with RFLX.RFLX_Builtin_Types; with RFLX.RFLX_Types; with RFLX.Derivation.Message; @@ -9,6 +9,8 @@ with RFLX.TLV; use type RFLX.TLV.Tag_Base; package body RFLX.Derivation_Tests is + use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Index, RFLX.RFLX_Builtin_Types.Bit_Length; + overriding function Name (T : Test) return AUnit.Message_String is pragma Unreferenced (T); @@ -95,7 +97,7 @@ package body RFLX.Derivation_Tests is Derivation.Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, diff --git a/tests/spark/rflx-enumeration_tests.adb b/tests/spark/rflx-enumeration_tests.adb index 82445b222..b9d302701 100644 --- a/tests/spark/rflx-enumeration_tests.adb +++ b/tests/spark/rflx-enumeration_tests.adb @@ -1,13 +1,15 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Bit_Length; +with RFLX.RFLX_Builtin_Types; with RFLX.RFLX_Types; with RFLX.Enumeration.Message; package body RFLX.Enumeration_Tests is + use type RFLX.RFLX_Builtin_Types.Index, RFLX.RFLX_Builtin_Types.Bit_Length; + overriding function Name (T : Test) return AUnit.Message_String is pragma Unreferenced (T); @@ -95,7 +97,7 @@ package body RFLX.Enumeration_Tests is Enumeration.Message.Take_Buffer (Context, Buffer); Assert (Message_Last >= RFLX_Types.Bit_Index'First, "Invalid range for Message_Last"); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Message_Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); diff --git a/tests/spark/rflx-ethernet_tests.adb b/tests/spark/rflx-ethernet_tests.adb index 58ff57f4a..0a1908791 100644 --- a/tests/spark/rflx-ethernet_tests.adb +++ b/tests/spark/rflx-ethernet_tests.adb @@ -2,13 +2,15 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; with SPARK.File_IO; use SPARK.File_IO; -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Bit_Length; +with RFLX.RFLX_Builtin_Types; with RFLX.RFLX_Types; with RFLX.Ethernet.Frame; package body RFLX.Ethernet_Tests is + use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Index, RFLX.RFLX_Builtin_Types.Bit_Length; + overriding function Name (T : Test) return AUnit.Message_String is pragma Unreferenced (T); @@ -333,7 +335,7 @@ package body RFLX.Ethernet_Tests is Ethernet.Frame.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, @@ -369,7 +371,7 @@ package body RFLX.Ethernet_Tests is Message_Last := Ethernet.Frame.Message_Last (Context); Ethernet.Frame.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Message_Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Message_Last)), @@ -408,7 +410,7 @@ package body RFLX.Ethernet_Tests is Message_Last := Ethernet.Frame.Message_Last (Context); Ethernet.Frame.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Message_Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Message_Last)), Expected.all, @@ -459,7 +461,7 @@ package body RFLX.Ethernet_Tests is Message_Last := Ethernet.Frame.Message_Last (Context); Ethernet.Frame.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Message_Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Message_Last)), diff --git a/tests/spark/rflx-expression_tests.adb b/tests/spark/rflx-expression_tests.adb index 07f7e83bc..4ec916ab0 100644 --- a/tests/spark/rflx-expression_tests.adb +++ b/tests/spark/rflx-expression_tests.adb @@ -1,13 +1,15 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Bytes, RFLX.RFLX_Builtin_Types.Length; +with RFLX.RFLX_Builtin_Types; with RFLX.RFLX_Types; with RFLX.Expression.Message; package body RFLX.Expression_Tests is + use type RFLX.RFLX_Builtin_Types.Bytes, RFLX.RFLX_Builtin_Types.Index; + overriding function Name (T : Test) return AUnit.Message_String is pragma Unreferenced (T); diff --git a/tests/spark/rflx-in_ethernet_tests.adb b/tests/spark/rflx-in_ethernet_tests.adb index 61729590b..230ffae2a 100644 --- a/tests/spark/rflx-in_ethernet_tests.adb +++ b/tests/spark/rflx-in_ethernet_tests.adb @@ -2,7 +2,7 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; with SPARK.File_IO; use SPARK.File_IO; -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Bit_Length; +with RFLX.RFLX_Builtin_Types; with RFLX.RFLX_Types; with RFLX.IPv4.Packet; @@ -11,6 +11,8 @@ with RFLX.In_Ethernet.Contains; package body RFLX.In_Ethernet_Tests is + use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Index, RFLX.RFLX_Builtin_Types.Bit_Length; + overriding function Name (T : Test) return AUnit.Message_String is pragma Unreferenced (T); @@ -128,7 +130,7 @@ package body RFLX.In_Ethernet_Tests is pragma Warnings (On, """IPv4_Packet_Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""IPv4_Packet_Context"""); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Message_Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - RFLX_Types.Byte_Index (Ethernet_Frame_Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Ethernet_Frame_Context.First) diff --git a/tests/spark/rflx-in_ipv4_tests.adb b/tests/spark/rflx-in_ipv4_tests.adb index ea9c72856..e63d520de 100644 --- a/tests/spark/rflx-in_ipv4_tests.adb +++ b/tests/spark/rflx-in_ipv4_tests.adb @@ -2,7 +2,7 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; with SPARK.File_IO; use SPARK.File_IO; -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Bit_Length; +with RFLX.RFLX_Builtin_Types; with RFLX.RFLX_Types; with RFLX.UDP.Datagram; @@ -13,6 +13,8 @@ with RFLX.In_IPv4.Contains; package body RFLX.In_IPv4_Tests is + use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Index, RFLX.RFLX_Builtin_Types.Bit_Length; + overriding function Name (T : Test) return AUnit.Message_String is pragma Unreferenced (T); @@ -189,7 +191,7 @@ package body RFLX.In_IPv4_Tests is pragma Warnings (On, """UDP_Datagram_Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""UDP_Datagram_Context"""); - Assert (RFLX_Builtin_Types.Length'Image + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - RFLX_Types.Byte_Index (Ethernet_Frame_Context.First) + 1), Expected'Length'Img, diff --git a/tests/spark/rflx-in_tlv_tests.adb b/tests/spark/rflx-in_tlv_tests.adb index 9c64327e5..35346dbc9 100644 --- a/tests/spark/rflx-in_tlv_tests.adb +++ b/tests/spark/rflx-in_tlv_tests.adb @@ -1,7 +1,7 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Length; +with RFLX.RFLX_Builtin_Types; with RFLX.RFLX_Types; with RFLX.TLV.Message; diff --git a/tests/spark/rflx-ipv4_tests.adb b/tests/spark/rflx-ipv4_tests.adb index e92293d4e..b8faa0f86 100644 --- a/tests/spark/rflx-ipv4_tests.adb +++ b/tests/spark/rflx-ipv4_tests.adb @@ -4,7 +4,7 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; with SPARK.File_IO; use SPARK.File_IO; -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Length; +with RFLX.RFLX_Builtin_Types; with RFLX.RFLX_Types; with RFLX.IPv4.Packet; @@ -12,6 +12,8 @@ with RFLX.IPv4.Option; package body RFLX.IPv4_Tests is + use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Index; + overriding function Name (T : Test) return AUnit.Message_String is pragma Unreferenced (T); @@ -330,7 +332,7 @@ package body RFLX.IPv4_Tests is Message_Last := IPv4.Packet.Message_Last (Context); IPv4.Packet.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Message_Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); @@ -366,7 +368,7 @@ package body RFLX.IPv4_Tests is Message_Last := IPv4.Option.Message_Last (Context); IPv4.Option.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Message_Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); diff --git a/tests/spark/rflx-sequence_tests.adb b/tests/spark/rflx-sequence_tests.adb index 5186bc35a..e16ada18d 100644 --- a/tests/spark/rflx-sequence_tests.adb +++ b/tests/spark/rflx-sequence_tests.adb @@ -1,7 +1,7 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Bit_Length; +with RFLX.RFLX_Builtin_Types; with RFLX.RFLX_Types; with RFLX.Sequence.Message; @@ -16,6 +16,8 @@ with RFLX.Sequence.Sequence_Size_Defined_By_Message_Size; package body RFLX.Sequence_Tests is + use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Index, RFLX.RFLX_Builtin_Types.Bit_Length; + overriding function Name (T : Test) return AUnit.Message_String is pragma Unreferenced (T); @@ -628,7 +630,7 @@ package body RFLX.Sequence_Tests is pragma Warnings (On, """Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""Context"""); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, @@ -723,7 +725,7 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, @@ -829,7 +831,7 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, @@ -1096,7 +1098,7 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, @@ -1170,7 +1172,7 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, @@ -1213,7 +1215,7 @@ package body RFLX.Sequence_Tests is "Invalid Messages after setting field"); Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, @@ -1370,7 +1372,7 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, @@ -1402,7 +1404,7 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, diff --git a/tests/spark/rflx-tlv_tests.adb b/tests/spark/rflx-tlv_tests.adb index 9b55c1ec8..82629677d 100644 --- a/tests/spark/rflx-tlv_tests.adb +++ b/tests/spark/rflx-tlv_tests.adb @@ -1,13 +1,15 @@ with SPARK; use SPARK; with SPARK.Assertions; use SPARK.Assertions; -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Length; +with RFLX.RFLX_Builtin_Types; with RFLX.RFLX_Types; with RFLX.TLV.Message; use type RFLX.TLV.Tag_Base; package body RFLX.TLV_Tests is + use type RFLX.RFLX_Builtin_Types.Length, RFLX.RFLX_Builtin_Types.Index; + overriding function Name (T : Test) return AUnit.Message_String is pragma Unreferenced (T); @@ -168,7 +170,7 @@ package body RFLX.TLV_Tests is TLV.Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, @@ -198,7 +200,7 @@ package body RFLX.TLV_Tests is TLV.Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, @@ -226,7 +228,7 @@ package body RFLX.TLV_Tests is TLV.Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, @@ -253,7 +255,7 @@ package body RFLX.TLV_Tests is TLV.Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Length'Image (RFLX_Types.Byte_Index (Context.Last) + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, diff --git a/tests/spark/spark-assertions.adb b/tests/spark/spark-assertions.adb index 3ed440e01..cb2c894d8 100644 --- a/tests/spark/spark-assertions.adb +++ b/tests/spark/spark-assertions.adb @@ -1,37 +1,41 @@ with AUnit.Assertions; -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Length; package body SPARK.Assertions with SPARK_Mode => Off is procedure Assert (Condition : Boolean; - Message : String) is + Message : String) + is begin AUnit.Assertions.Assert (Condition, Message); end Assert; function Assert (Condition : Boolean; - Message : String) return Boolean is + Message : String) return Boolean + is begin return AUnit.Assertions.Assert (Condition, Message); end Assert; procedure Assert (Actual : String; Expected : String; - Message : String) is + Message : String) + is begin AUnit.Assertions.Assert (Actual, Expected, Message); end Assert; procedure Assert (Actual : RFLX.RFLX_Builtin_Types.Bytes; Expected : RFLX.RFLX_Builtin_Types.Bytes; - Message : String) is + Message : String) + is + use type RFLX.RFLX_Builtin_Types.Index; begin if Actual'Length /= Expected'Length then Assert (False, Message & ": lengths different"); end if; - for I in RFLX.RFLX_Builtin_Types.Length range 1 .. Actual'Length loop + for I in RFLX.RFLX_Builtin_Types.Index range 1 .. Actual'Length loop Assert (Actual (Actual'First + I - 1)'Image, Expected (Expected'First + I - 1)'Image, Message & ": byte" & I'Image); diff --git a/tests/spark/spark-assertions.ads b/tests/spark/spark-assertions.ads index a31a69682..2be576cd7 100644 --- a/tests/spark/spark-assertions.ads +++ b/tests/spark/spark-assertions.ads @@ -1,9 +1,11 @@ -with RFLX.RFLX_Builtin_Types; use type RFLX.RFLX_Builtin_Types.Bytes; +with RFLX.RFLX_Builtin_Types; package SPARK.Assertions with SPARK_Mode is + use type RFLX.RFLX_Builtin_Types.Bytes; + pragma Warnings (Off, "postcondition does not check the outcome of calling ""Assert"""); procedure Assert (Condition : Boolean; diff --git a/tests/spark/spark-file_io.adb b/tests/spark/spark-file_io.adb index 5456aeb1f..98f25c648 100644 --- a/tests/spark/spark-file_io.adb +++ b/tests/spark/spark-file_io.adb @@ -15,13 +15,13 @@ is Input_File : Byte_IO.File_Type; Buffer : constant Bytes_Ptr := new Bytes (1 .. Index (Ada.Directories.Size (Name))); Value : Byte := 0; - I : Length := 0; + I : Index := 1; begin Byte_IO.Open (Input_File, Byte_IO.In_File, Name); while not Byte_IO.End_Of_File (Input_File) loop - I := I + 1; Byte_IO.Read (Input_File, Value); Buffer.all (I) := Value; + I := I + 1; end loop; Byte_IO.Close (Input_File); return Buffer; From 892357df857faf9403e61d2b0fcb2f85e42ab465 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 30 Apr 2021 12:13:38 +0200 Subject: [PATCH 16/43] Add universal test message --- tests/data/models.py | 149 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 149 insertions(+) diff --git a/tests/data/models.py b/tests/data/models.py index 7139d50f6..e80b571ec 100644 --- a/tests/data/models.py +++ b/tests/data/models.py @@ -313,6 +313,155 @@ ) REFINEMENT = Refinement("In_Message", MESSAGE, Field("F"), MESSAGE) +UNIVERSAL_MESSAGE_TYPE = Enumeration( + "Universal::Message_Type", + [ + ("MT_Null", Number(0)), + ("MT_Data", Number(1)), + ("MT_Value", Number(2)), + ("MT_Values", Number(3)), + ("MT_Option_Types", Number(4)), + ("MT_Options", Number(5)), + ("MT_Unconstrained_Data", Number(6)), + ("MT_Unconstrained_Options", Number(7)), + ], + size=Number(8), + always_valid=False, +) +UNIVERSAL_LENGTH = ModularInteger("Universal::Length", Pow(Number(2), Number(16))) +UNIVERSAL_VALUE = RangeInteger("Universal::Value", Number(0), Number(100), Number(8)) +UNIVERSAL_VALUES = Array("Universal::Values", UNIVERSAL_VALUE) +UNIVERSAL_OPTION_TYPE = Enumeration( + "Universal::Option_Type", + [ + ("OT_Null", Number(0)), + ("OT_Data", Number(1)), + ], + size=Number(8), + always_valid=True, +) +UNIVERSAL_OPTION_TYPES = Array("Universal::Option_Types", UNIVERSAL_OPTION_TYPE) +UNIVERSAL_OPTION = Message( + "Universal::Option", + [ + Link(INITIAL, Field("Option_Type")), + Link( + Field("Option_Type"), + FINAL, + condition=Equal(Variable("Option_Type"), Variable("OT_Null")), + ), + Link( + Field("Option_Type"), + Field("Length"), + condition=Equal(Variable("Option_Type"), Variable("OT_Data")), + ), + Link( + Field("Length"), + Field("Data"), + size=Mul(Variable("Length"), Number(8)), + ), + Link(Field("Data"), FINAL), + ], + { + Field("Option_Type"): UNIVERSAL_OPTION_TYPE, + Field("Length"): UNIVERSAL_LENGTH, + Field("Data"): Opaque(), + }, +) +UNIVERSAL_OPTIONS = Array("Universal::Options", UNIVERSAL_OPTION) +UNIVERSAL_MESSAGE = Message( + "Universal::Message", + [ + Link(INITIAL, Field("Message_Type")), + Link( + Field("Message_Type"), + FINAL, + condition=Equal(Variable("Message_Type"), Variable("MT_Null")), + ), + Link( + Field("Message_Type"), + Field("Data"), + condition=Equal(Variable("Message_Type"), Variable("MT_Unconstrained_Data")), + size=Sub(Last("Message"), Last("Message_Type")), + ), + Link( + Field("Message_Type"), + Field("Options"), + condition=Equal(Variable("Message_Type"), Variable("MT_Unconstrained_Options")), + size=Sub(Last("Message"), Last("Message_Type")), + ), + Link( + Field("Message_Type"), + Field("Length"), + condition=And( + NotEqual(Variable("Message_Type"), Variable("MT_Null")), + NotEqual(Variable("Message_Type"), Variable("MT_Unconstrained_Data")), + NotEqual(Variable("Message_Type"), Variable("MT_Unconstrained_Options")), + ), + ), + Link( + Field("Length"), + Field("Data"), + condition=Equal(Variable("Message_Type"), Variable("MT_Data")), + size=Mul(Variable("Length"), Number(8)), + ), + Link(Field("Data"), FINAL), + Link( + Field("Length"), + Field("Value"), + condition=And( + Equal(Variable("Message_Type"), Variable("MT_Value")), + Equal(Variable("Length"), Div(Size("Universal::Value"), Number(8))), + ), + ), + Link(Field("Value"), FINAL), + Link( + Field("Length"), + Field("Values"), + condition=Equal(Variable("Message_Type"), Variable("MT_Values")), + size=Mul(Variable("Length"), Number(8)), + ), + Link(Field("Values"), FINAL), + Link( + Field("Length"), + Field("Option_Types"), + condition=Equal(Variable("Message_Type"), Variable("MT_Option_Types")), + size=Mul(Variable("Length"), Number(8)), + ), + Link(Field("Option_Types"), FINAL), + Link( + Field("Length"), + Field("Options"), + condition=Equal(Variable("Message_Type"), Variable("MT_Options")), + size=Mul(Variable("Length"), Number(8)), + ), + Link(Field("Options"), FINAL), + ], + { + Field("Message_Type"): UNIVERSAL_MESSAGE_TYPE, + Field("Length"): UNIVERSAL_LENGTH, + Field("Data"): Opaque(), + Field("Value"): UNIVERSAL_VALUE, + Field("Values"): UNIVERSAL_VALUES, + Field("Option_Types"): UNIVERSAL_OPTION_TYPES, + Field("Options"): UNIVERSAL_OPTIONS, + }, +) +UNIVERSAL_MESSAGES = Array("Universal::Messages", UNIVERSAL_MESSAGE) +UNIVERSAL_MODEL = Model( + [ + UNIVERSAL_MESSAGE_TYPE, + UNIVERSAL_VALUE, + UNIVERSAL_VALUES, + UNIVERSAL_OPTION_TYPE, + UNIVERSAL_OPTION_TYPES, + UNIVERSAL_OPTION, + UNIVERSAL_OPTIONS, + UNIVERSAL_LENGTH, + UNIVERSAL_MESSAGE, + ] +) + SESSION = Session( identifier="P::S", initial="A", From 727efbef7747e43ca0619fc2befd8765867c5595 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 30 Apr 2021 12:08:27 +0200 Subject: [PATCH 17/43] Improve size calculation of fixed size messages Ref. #292, #650 --- rflx/model/message.py | 18 ++++++++++++-- tests/data/models.py | 40 ++++++++++++++++++++++++++++---- tests/unit/model/message_test.py | 13 +++++++++++ 3 files changed, 65 insertions(+), 6 deletions(-) diff --git a/rflx/model/message.py b/rflx/model/message.py index 712ad1cc1..391b168f4 100644 --- a/rflx/model/message.py +++ b/rflx/model/message.py @@ -646,7 +646,16 @@ def is_possibly_empty(self, field: Field) -> bool: return False - def size(self, field_values: Mapping[Field, expr.Expr]) -> expr.Expr: + @property + def has_fixed_size(self) -> bool: + return len(self.paths(FINAL)) <= 1 and not ( + {v.identifier for l in self.structure for v in l.size.variables()} + - set(self._type_literals.keys()) + ) + + def size(self, field_values: Mapping[Field, expr.Expr] = None) -> expr.Expr: + field_values = field_values if field_values else {} + def to_mapping(facts: Sequence[expr.Expr]) -> Dict[expr.Name, expr.Expr]: return { f.left: f.right @@ -665,6 +674,9 @@ def remove_variable_prefix(expression: expr.Expr) -> expr.Expr: ) return expression + if not self.structure: + return expr.Number(0) + fields = set(field_values) values = [ expr.Equal(expr.Variable(f.name), v, location=v.location) @@ -692,7 +704,9 @@ def remove_variable_prefix(expression: expr.Expr) -> expr.Expr: failures = [] for path in self.paths(FINAL): - if fields != set(l.target for l in path if l.target != FINAL): + if not self.has_fixed_size and fields != set( + l.target for l in path if l.target != FINAL + ): continue message_size = expr.Add( *[ diff --git a/tests/data/models.py b/tests/data/models.py index e80b571ec..d574ac76d 100644 --- a/tests/data/models.py +++ b/tests/data/models.py @@ -330,7 +330,7 @@ ) UNIVERSAL_LENGTH = ModularInteger("Universal::Length", Pow(Number(2), Number(16))) UNIVERSAL_VALUE = RangeInteger("Universal::Value", Number(0), Number(100), Number(8)) -UNIVERSAL_VALUES = Array("Universal::Values", UNIVERSAL_VALUE) +UNIVERSAL_VALUES = Sequence("Universal::Values", UNIVERSAL_VALUE) UNIVERSAL_OPTION_TYPE = Enumeration( "Universal::Option_Type", [ @@ -340,7 +340,7 @@ size=Number(8), always_valid=True, ) -UNIVERSAL_OPTION_TYPES = Array("Universal::Option_Types", UNIVERSAL_OPTION_TYPE) +UNIVERSAL_OPTION_TYPES = Sequence("Universal::Option_Types", UNIVERSAL_OPTION_TYPE) UNIVERSAL_OPTION = Message( "Universal::Option", [ @@ -368,7 +368,7 @@ Field("Data"): Opaque(), }, ) -UNIVERSAL_OPTIONS = Array("Universal::Options", UNIVERSAL_OPTION) +UNIVERSAL_OPTIONS = Sequence("Universal::Options", UNIVERSAL_OPTION) UNIVERSAL_MESSAGE = Message( "Universal::Message", [ @@ -447,7 +447,7 @@ Field("Options"): UNIVERSAL_OPTIONS, }, ) -UNIVERSAL_MESSAGES = Array("Universal::Messages", UNIVERSAL_MESSAGE) +UNIVERSAL_MESSAGES = Sequence("Universal::Messages", UNIVERSAL_MESSAGE) UNIVERSAL_MODEL = Model( [ UNIVERSAL_MESSAGE_TYPE, @@ -462,6 +462,38 @@ ] ) +FIXED_SIZE_MESSAGE = Message( + "Fixed_Size::Message", + [ + Link(INITIAL, Field("Message_Type")), + Link( + Field("Message_Type"), + Field("Data"), + size=Number(64), + ), + Link( + Field("Data"), + Field("Values"), + size=Mul(Number(8), Size("Universal::Value")), + ), + Link( + Field("Values"), + Field("Options"), + size=Number(64), + ), + Link( + Field("Options"), + FINAL, + ), + ], + { + Field("Message_Type"): UNIVERSAL_MESSAGE_TYPE, + Field("Data"): Opaque(), + Field("Values"): UNIVERSAL_VALUES, + Field("Options"): UNIVERSAL_OPTIONS, + }, +) + SESSION = Session( identifier="P::S", initial="A", diff --git a/tests/unit/model/message_test.py b/tests/unit/model/message_test.py index 8f1cebfc4..5d58f6a52 100644 --- a/tests/unit/model/message_test.py +++ b/tests/unit/model/message_test.py @@ -56,11 +56,14 @@ from tests.data.models import ( ENUMERATION, ETHERNET_FRAME, + FIXED_SIZE_MESSAGE, MODULAR_INTEGER, + NULL_MESSAGE, RANGE_INTEGER, SEQUENCE_INNER_MESSAGE, SEQUENCE_INNER_MESSAGES, SEQUENCE_LENGTH, + SEQUENCE_MESSAGE, SEQUENCE_MESSAGES_MESSAGE, SEQUENCE_MODULAR_VECTOR, TLV_LENGTH, @@ -2486,7 +2489,17 @@ def test_is_possibly_empty() -> None: assert message.is_possibly_empty(c) +def test_has_fixed_size() -> None: + assert NULL_MESSAGE.has_fixed_size + assert FIXED_SIZE_MESSAGE.has_fixed_size + assert not TLV_MESSAGE.has_fixed_size + assert not ETHERNET_FRAME.has_fixed_size + assert not SEQUENCE_MESSAGE.has_fixed_size + + def test_size() -> None: + assert NULL_MESSAGE.size() == Number(0) + assert FIXED_SIZE_MESSAGE.size() == Number(200) assert TLV_MESSAGE.size({Field("Tag"): Variable("Msg_Error")}) == Number(8) assert ( TLV_MESSAGE.size( From 7c06431f0961ac9fec62890387cf54ed36bc48e8 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 4 May 2021 16:21:14 +0200 Subject: [PATCH 18/43] Improve accessing and setting opaque fields in SPARK Ref. #292, #650 --- rflx/generator/const.py | 1 + rflx/generator/generator.py | 1 + rflx/generator/parser.py | 103 +++++++++++++++++- rflx/generator/serializer.py | 42 ++----- rflx/templates/rflx_generic_types.ads | 3 + .../generated/rflx-derivation-message.adb | 15 ++- .../generated/rflx-derivation-message.ads | 13 ++- tests/spark/generated/rflx-ethernet-frame.adb | 15 ++- tests/spark/generated/rflx-ethernet-frame.ads | 13 ++- .../generated/rflx-expression-message.adb | 15 ++- .../generated/rflx-expression-message.ads | 13 ++- tests/spark/generated/rflx-icmp-message.adb | 15 ++- tests/spark/generated/rflx-icmp-message.ads | 13 ++- tests/spark/generated/rflx-ipv4-option.adb | 15 ++- tests/spark/generated/rflx-ipv4-option.ads | 13 ++- tests/spark/generated/rflx-ipv4-packet.adb | 26 ++++- tests/spark/generated/rflx-ipv4-packet.ads | 22 +++- .../generated/rflx-rflx_generic_types.ads | 3 + .../generated/rflx-sequence-inner_message.adb | 15 ++- .../generated/rflx-sequence-inner_message.ads | 13 ++- .../spark/generated/rflx-sequence-message.adb | 44 ++++++-- .../spark/generated/rflx-sequence-message.ads | 36 +++++- .../rflx-sequence-messages_message.adb | 11 +- .../rflx-sequence-messages_message.ads | 9 +- ...-sequence_size_defined_by_message_size.adb | 11 +- ...-sequence_size_defined_by_message_size.ads | 9 +- tests/spark/generated/rflx-tlv-message.adb | 15 ++- tests/spark/generated/rflx-tlv-message.ads | 13 ++- tests/spark/generated/rflx-udp-datagram.adb | 15 ++- tests/spark/generated/rflx-udp-datagram.ads | 13 ++- tests/spark/rflx-builtin_types_tests.adb | 31 ++++-- tests/spark/rflx-derivation_tests.adb | 2 +- tests/spark/rflx-ethernet_tests.adb | 6 +- tests/spark/rflx-expression_tests.adb | 2 +- tests/spark/rflx-ipv4_tests.adb | 4 +- tests/spark/rflx-tlv_tests.adb | 11 +- 36 files changed, 467 insertions(+), 134 deletions(-) diff --git a/rflx/generator/const.py b/rflx/generator/const.py index 1be9963e7..f2ac55790 100644 --- a/rflx/generator/const.py +++ b/rflx/generator/const.py @@ -43,6 +43,7 @@ TYPES_BIT_INDEX = TYPES * "Bit_Index" TYPES_BIT_LENGTH = TYPES * "Bit_Length" TYPES_BYTE_INDEX = TYPES * "Byte_Index" +TYPES_BYTE_LENGTH = TYPES * "Byte_Length" TYPES_FIRST_BIT_INDEX = TYPES * "First_Bit_Index" TYPES_LAST_BIT_INDEX = TYPES * "Last_Bit_Index" TYPES_OFFSET = TYPES * "Offset" diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 3f8b469a8..362715421 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -367,6 +367,7 @@ def __create_message(self, message: Message) -> None: unit += self.__parser.create_incomplete_message_function(message) unit += self.__parser.create_scalar_accessor_functions(scalar_fields) unit += self.__parser.create_composite_accessor_procedures(composite_fields) + unit += self.__parser.create_generic_composite_accessor_procedures(composite_fields) unit += self.__serializer.create_internal_functions(message, scalar_fields) unit += self.__serializer.create_scalar_setter_procedures(message, scalar_fields) diff --git a/rflx/generator/parser.py b/rflx/generator/parser.py index 70cd68f08..0808a18ca 100644 --- a/rflx/generator/parser.py +++ b/rflx/generator/parser.py @@ -1,3 +1,5 @@ +# pylint: disable = too-many-lines + from typing import List, Mapping, Sequence, Tuple import rflx.expression as expr @@ -23,6 +25,7 @@ IfStatement, Indexed, InOutParameter, + Length, Less, Mod, Mul, @@ -31,6 +34,7 @@ ObjectDeclaration, Old, Or, + OutParameter, Parameter, Postcondition, Pragma, @@ -717,7 +721,104 @@ def result(field: Field) -> Expr: @staticmethod def create_composite_accessor_procedures(composite_fields: Sequence[Field]) -> UnitPart: def specification(field: Field) -> ProcedureSpecification: - return ProcedureSpecification(f"Get_{field.name}", [Parameter(["Ctx"], "Context")]) + return ProcedureSpecification( + f"Get_{field.name}", + [Parameter(["Ctx"], "Context"), OutParameter(["Data"], const.TYPES_BYTES)], + ) + + return UnitPart( + [ + SubprogramDeclaration( + specification(f), + [ + Precondition( + AndThen( + Call("Has_Buffer", [Variable("Ctx")]), + Call( + "Present", + [Variable("Ctx"), Variable(f.affixed_name)], + ), + Call( + "Valid_Next", + [Variable("Ctx"), Variable(f.affixed_name)], + ), + Equal( + Length("Data"), + Call( + const.TYPES_BYTE_LENGTH, + [ + Call( + "Field_Size", + [ + Variable("Ctx"), + Variable(f.affixed_name), + ], + ) + ], + ), + ), + ) + ) + ], + ) + for f in composite_fields + ], + [ + SubprogramBody( + specification(f), + [ + ObjectDeclaration( + ["First"], + const.TYPES_INDEX, + Call( + const.TYPES_BYTE_INDEX, + [ + Selected( + Indexed( + Variable("Ctx.Cursors"), + Variable(f.affixed_name), + ), + "First", + ) + ], + ), + True, + ), + ObjectDeclaration( + ["Last"], + const.TYPES_INDEX, + Call( + const.TYPES_BYTE_INDEX, + [ + Selected( + Indexed( + Variable("Ctx.Cursors"), + Variable(f.affixed_name), + ), + "Last", + ) + ], + ), + True, + ), + ], + [ + Assignment( + "Data", + Slice(Variable("Ctx.Buffer.all"), Variable("First"), Variable("Last")), + ) + ], + ) + for f in composite_fields + ], + ) + + @staticmethod + def create_generic_composite_accessor_procedures(composite_fields: Sequence[Field]) -> UnitPart: + def specification(field: Field) -> ProcedureSpecification: + return ProcedureSpecification( + f"Generic_Get_{field.name}", [Parameter(["Ctx"], "Context")] + ) return UnitPart( [ diff --git a/rflx/generator/serializer.py b/rflx/generator/serializer.py index 03c19cf2b..6be6004f8 100644 --- a/rflx/generator/serializer.py +++ b/rflx/generator/serializer.py @@ -1,5 +1,3 @@ -# pylint: disable=too-many-lines - from typing import Mapping, Sequence from rflx.ada import ( @@ -49,7 +47,6 @@ Size, Slice, Statement, - Sub, Subprogram, SubprogramBody, SubprogramDeclaration, @@ -564,7 +561,7 @@ def create_opaque_setter_procedures(self, message: Message) -> UnitPart: def specification(field: Field) -> ProcedureSpecification: return ProcedureSpecification( f"Set_{field.name}", - [InOutParameter(["Ctx"], "Context"), Parameter(["Value"], const.TYPES_BYTES)], + [InOutParameter(["Ctx"], "Context"), Parameter(["Data"], const.TYPES_BYTES)], ) return UnitPart( @@ -577,35 +574,18 @@ def specification(field: Field) -> ProcedureSpecification: *self.setter_preconditions(f), *self.composite_setter_preconditions(message, f), Equal( - Length("Value"), - Add( - Sub( - Call( - const.TYPES_BYTE_INDEX, - [ - Call( - "Field_Last", - [ - Variable("Ctx"), - Variable(f.affixed_name), - ], - ) - ], - ), + Length("Data"), + Call( + const.TYPES_BYTE_LENGTH, + [ Call( - const.TYPES_BYTE_INDEX, + "Field_Size", [ - Call( - "Field_First", - [ - Variable("Ctx"), - Variable(f.affixed_name), - ], - ) + Variable("Ctx"), + Variable(f.affixed_name), ], - ), - ), - Number(1), + ) + ], ), ), ) @@ -636,7 +616,7 @@ def specification(field: Field) -> ProcedureSpecification: Variable("Buffer_First"), Variable("Buffer_Last"), ), - Variable("Value"), + Variable("Data"), ), ], ) diff --git a/rflx/templates/rflx_generic_types.ads b/rflx/templates/rflx_generic_types.ads index 9b91ce900..d05643e05 100644 --- a/rflx/templates/rflx_generic_types.ads +++ b/rflx/templates/rflx_generic_types.ads @@ -50,6 +50,9 @@ is function Byte_Index (Bit_Idx : Bit_Length) return Index is (Index (Length ((Bit_Idx - 1) / 8) + 1)); + function Byte_Length (Bit_Len : Bit_Length) return Length is + (Length ((Bit_Len + 7) / 8)); + function First_Bit_Index (Idx : Index) return Bit_Index is ((Bit_Length (Idx) - 1) * 8 + 1); diff --git a/tests/spark/generated/rflx-derivation-message.adb b/tests/spark/generated/rflx-derivation-message.adb index 04be1429b..699f3985d 100644 --- a/tests/spark/generated/rflx-derivation-message.adb +++ b/tests/spark/generated/rflx-derivation-message.adb @@ -264,13 +264,20 @@ is Verify (Ctx, F_Value); end Verify_Message; - procedure Get_Value (Ctx : Context) is + procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).Last); begin - Process_Value (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Value; + procedure Generic_Get_Value (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).Last); + begin + Process_Value (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Value; + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained @@ -395,7 +402,7 @@ is Initialize_Value_Private (Ctx); end Initialize_Value; - procedure Set_Value (Ctx : in out Context; Value : RFLX_Types.Bytes) is + procedure Set_Value (Ctx : in out Context; Data : RFLX_Types.Bytes) is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); function Buffer_First return RFLX_Types.Index is @@ -404,7 +411,7 @@ is (RFLX_Types.Byte_Index (Last)); begin Initialize_Value_Private (Ctx); - Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; + Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; end Set_Value; procedure Generic_Set_Value (Ctx : in out Context) is diff --git a/tests/spark/generated/rflx-derivation-message.ads b/tests/spark/generated/rflx-derivation-message.ads index e750ea65b..b4a04de44 100644 --- a/tests/spark/generated/rflx-derivation-message.ads +++ b/tests/spark/generated/rflx-derivation-message.ads @@ -267,9 +267,16 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Value) + and then Valid_Next (Ctx, F_Value) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Value)); + generic with procedure Process_Value (Value : RFLX_Types.Bytes); - procedure Get_Value (Ctx : Context) with + procedure Generic_Get_Value (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Value); @@ -381,7 +388,7 @@ is and Get_Tag (Ctx) = Get_Tag (Ctx)'Old and Get_Length (Ctx) = Get_Length (Ctx)'Old; - procedure Set_Value (Ctx : in out Context; Value : RFLX_Types.Bytes) with + procedure Set_Value (Ctx : in out Context; Data : RFLX_Types.Bytes) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -391,7 +398,7 @@ is and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 - and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Value)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Value)) + 1, + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Value)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Value) diff --git a/tests/spark/generated/rflx-ethernet-frame.adb b/tests/spark/generated/rflx-ethernet-frame.adb index 9dd61e038..f6e09b094 100644 --- a/tests/spark/generated/rflx-ethernet-frame.adb +++ b/tests/spark/generated/rflx-ethernet-frame.adb @@ -403,13 +403,20 @@ is Verify (Ctx, F_Payload); end Verify_Message; - procedure Get_Payload (Ctx : Context) is + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); begin - Process_Payload (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Payload; + procedure Generic_Get_Payload (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + begin + Process_Payload (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Payload; + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained @@ -580,7 +587,7 @@ is Initialize_Payload_Private (Ctx); end Initialize_Payload; - procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) is + procedure Set_Payload (Ctx : in out Context; Data : RFLX_Types.Bytes) is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is @@ -589,7 +596,7 @@ is (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); - Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; + Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; end Set_Payload; procedure Generic_Set_Payload (Ctx : in out Context) is diff --git a/tests/spark/generated/rflx-ethernet-frame.ads b/tests/spark/generated/rflx-ethernet-frame.ads index d5ee4712b..c5e4243a1 100644 --- a/tests/spark/generated/rflx-ethernet-frame.ads +++ b/tests/spark/generated/rflx-ethernet-frame.ads @@ -289,9 +289,16 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Payload) + and then Valid_Next (Ctx, F_Payload) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)); + generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); - procedure Get_Payload (Ctx : Context) with + procedure Generic_Get_Payload (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Payload); @@ -513,7 +520,7 @@ is and Get_Type_Length_TPID (Ctx) = Get_Type_Length_TPID (Ctx)'Old and Get_Type_Length (Ctx) = Get_Type_Length (Ctx)'Old; - procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) with + procedure Set_Payload (Ctx : in out Context; Data : RFLX_Types.Bytes) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -523,7 +530,7 @@ is and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Payload)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) diff --git a/tests/spark/generated/rflx-expression-message.adb b/tests/spark/generated/rflx-expression-message.adb index 7333c12d9..3812c41ab 100644 --- a/tests/spark/generated/rflx-expression-message.adb +++ b/tests/spark/generated/rflx-expression-message.adb @@ -177,13 +177,20 @@ is Verify (Ctx, F_Payload); end Verify_Message; - procedure Get_Payload (Ctx : Context) is + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); begin - Process_Payload (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Payload; + procedure Generic_Get_Payload (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + begin + Process_Payload (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Payload; + procedure Initialize_Payload_Private (Ctx : in out Context) with Pre => not Ctx'Constrained @@ -219,7 +226,7 @@ is Initialize_Payload_Private (Ctx); end Initialize_Payload; - procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) is + procedure Set_Payload (Ctx : in out Context; Data : RFLX_Types.Bytes) is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is @@ -228,7 +235,7 @@ is (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); - Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; + Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; end Set_Payload; procedure Generic_Set_Payload (Ctx : in out Context) is diff --git a/tests/spark/generated/rflx-expression-message.ads b/tests/spark/generated/rflx-expression-message.ads index 3c6161043..e5061ef35 100644 --- a/tests/spark/generated/rflx-expression-message.ads +++ b/tests/spark/generated/rflx-expression-message.ads @@ -253,9 +253,16 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Payload) + and then Valid_Next (Ctx, F_Payload) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)); + generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); - procedure Get_Payload (Ctx : Context) with + procedure Generic_Get_Payload (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Payload); @@ -284,7 +291,7 @@ is and Predecessor (Ctx, F_Payload) = Predecessor (Ctx, F_Payload)'Old and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old; - procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) with + procedure Set_Payload (Ctx : in out Context; Data : RFLX_Types.Bytes) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -294,7 +301,7 @@ is and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Payload)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) diff --git a/tests/spark/generated/rflx-icmp-message.adb b/tests/spark/generated/rflx-icmp-message.adb index 72d1e4bbd..e5c9d14d0 100644 --- a/tests/spark/generated/rflx-icmp-message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -900,13 +900,20 @@ is Verify (Ctx, F_Transmit_Timestamp); end Verify_Message; - procedure Get_Data (Ctx : Context) is + procedure Get_Data (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Data).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Data).Last); begin - Process_Data (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Data; + procedure Generic_Get_Data (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Data).Last); + begin + Process_Data (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Data; + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained @@ -1215,7 +1222,7 @@ is Initialize_Data_Private (Ctx); end Initialize_Data; - procedure Set_Data (Ctx : in out Context; Value : RFLX_Types.Bytes) is + procedure Set_Data (Ctx : in out Context; Data : RFLX_Types.Bytes) is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Data); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Data); function Buffer_First return RFLX_Types.Index is @@ -1224,7 +1231,7 @@ is (RFLX_Types.Byte_Index (Last)); begin Initialize_Data_Private (Ctx); - Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; + Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; end Set_Data; procedure Generic_Set_Data (Ctx : in out Context) is diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index e3e4341d6..76ad4bfe0 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -343,9 +343,16 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Data (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Data) + and then Valid_Next (Ctx, F_Data) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Data)); + generic with procedure Process_Data (Data : RFLX_Types.Bytes); - procedure Get_Data (Ctx : Context) with + procedure Generic_Get_Data (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Data); @@ -1044,7 +1051,7 @@ is and Get_Tag (Ctx) = Get_Tag (Ctx)'Old and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; - procedure Set_Data (Ctx : in out Context; Value : RFLX_Types.Bytes) with + procedure Set_Data (Ctx : in out Context; Data : RFLX_Types.Bytes) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -1054,7 +1061,7 @@ is and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 - and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Data)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Data)) + 1, + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Data)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Data) diff --git a/tests/spark/generated/rflx-ipv4-option.adb b/tests/spark/generated/rflx-ipv4-option.adb index 3d4195f4f..c78b54d38 100644 --- a/tests/spark/generated/rflx-ipv4-option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -338,13 +338,20 @@ is Verify (Ctx, F_Option_Data); end Verify_Message; - procedure Get_Option_Data (Ctx : Context) is + procedure Get_Option_Data (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Option_Data).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Option_Data).Last); begin - Process_Option_Data (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Option_Data; + procedure Generic_Get_Option_Data (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Option_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Option_Data).Last); + begin + Process_Option_Data (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Option_Data; + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained @@ -499,7 +506,7 @@ is Initialize_Option_Data_Private (Ctx); end Initialize_Option_Data; - procedure Set_Option_Data (Ctx : in out Context; Value : RFLX_Types.Bytes) is + procedure Set_Option_Data (Ctx : in out Context; Data : RFLX_Types.Bytes) is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Option_Data); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Option_Data); function Buffer_First return RFLX_Types.Index is @@ -508,7 +515,7 @@ is (RFLX_Types.Byte_Index (Last)); begin Initialize_Option_Data_Private (Ctx); - Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; + Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; end Set_Option_Data; procedure Generic_Set_Option_Data (Ctx : in out Context) is diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index 4e2a89860..9e7117c77 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -280,9 +280,16 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Option_Data (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Option_Data) + and then Valid_Next (Ctx, F_Option_Data) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Option_Data)); + generic with procedure Process_Option_Data (Option_Data : RFLX_Types.Bytes); - procedure Get_Option_Data (Ctx : Context) with + procedure Generic_Get_Option_Data (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Option_Data); @@ -471,7 +478,7 @@ is and Get_Option_Number (Ctx) = Get_Option_Number (Ctx)'Old and Get_Option_Length (Ctx) = Get_Option_Length (Ctx)'Old; - procedure Set_Option_Data (Ctx : in out Context; Value : RFLX_Types.Bytes) with + procedure Set_Option_Data (Ctx : in out Context; Data : RFLX_Types.Bytes) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -481,7 +488,7 @@ is and then Field_First (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 - and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Option_Data)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Option_Data)) + 1, + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Option_Data)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Option_Data) diff --git a/tests/spark/generated/rflx-ipv4-packet.adb b/tests/spark/generated/rflx-ipv4-packet.adb index 0e6874430..a66c7f780 100644 --- a/tests/spark/generated/rflx-ipv4-packet.adb +++ b/tests/spark/generated/rflx-ipv4-packet.adb @@ -911,20 +911,34 @@ is Verify (Ctx, F_Payload); end Verify_Message; - procedure Get_Options (Ctx : Context) is + procedure Get_Options (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Options).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Options).Last); begin - Process_Options (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Options; - procedure Get_Payload (Ctx : Context) is + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); begin - Process_Payload (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Payload; + procedure Generic_Get_Options (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Options).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Options).Last); + begin + Process_Options (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Options; + + procedure Generic_Get_Payload (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + begin + Process_Payload (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Payload; + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained @@ -1265,7 +1279,7 @@ is Initialize_Payload_Private (Ctx); end Initialize_Payload; - procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) is + procedure Set_Payload (Ctx : in out Context; Data : RFLX_Types.Bytes) is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is @@ -1274,7 +1288,7 @@ is (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); - Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; + Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; end Set_Payload; procedure Generic_Set_Payload (Ctx : in out Context) is diff --git a/tests/spark/generated/rflx-ipv4-packet.ads b/tests/spark/generated/rflx-ipv4-packet.ads index c46a283c6..b431b04db 100644 --- a/tests/spark/generated/rflx-ipv4-packet.ads +++ b/tests/spark/generated/rflx-ipv4-packet.ads @@ -347,16 +347,30 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Options (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Options) + and then Valid_Next (Ctx, F_Options) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Options)); + + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Payload) + and then Valid_Next (Ctx, F_Payload) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)); + generic with procedure Process_Options (Options : RFLX_Types.Bytes); - procedure Get_Options (Ctx : Context) with + procedure Generic_Get_Options (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Options); generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); - procedure Get_Payload (Ctx : Context) with + procedure Generic_Get_Payload (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Payload); @@ -1171,7 +1185,7 @@ is and Get_Source (Ctx) = Get_Source (Ctx)'Old and Get_Destination (Ctx) = Get_Destination (Ctx)'Old; - procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) with + procedure Set_Payload (Ctx : in out Context; Data : RFLX_Types.Bytes) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -1181,7 +1195,7 @@ is and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Payload)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) diff --git a/tests/spark/generated/rflx-rflx_generic_types.ads b/tests/spark/generated/rflx-rflx_generic_types.ads index debd71940..46aa47990 100644 --- a/tests/spark/generated/rflx-rflx_generic_types.ads +++ b/tests/spark/generated/rflx-rflx_generic_types.ads @@ -50,6 +50,9 @@ is function Byte_Index (Bit_Idx : Bit_Length) return Index is (Index (Length ((Bit_Idx - 1) / 8) + 1)); + function Byte_Length (Bit_Len : Bit_Length) return Length is + (Length ((Bit_Len + 7) / 8)); + function First_Bit_Index (Idx : Index) return Bit_Index is ((Bit_Length (Idx) - 1) * 8 + 1); diff --git a/tests/spark/generated/rflx-sequence-inner_message.adb b/tests/spark/generated/rflx-sequence-inner_message.adb index 4f7aaf7bf..d87e8d4c1 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.adb +++ b/tests/spark/generated/rflx-sequence-inner_message.adb @@ -230,13 +230,20 @@ is Verify (Ctx, F_Payload); end Verify_Message; - procedure Get_Payload (Ctx : Context) is + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); begin - Process_Payload (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Payload; + procedure Generic_Get_Payload (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + begin + Process_Payload (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Payload; + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained @@ -346,7 +353,7 @@ is Initialize_Payload_Private (Ctx); end Initialize_Payload; - procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) is + procedure Set_Payload (Ctx : in out Context; Data : RFLX_Types.Bytes) is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is @@ -355,7 +362,7 @@ is (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); - Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; + Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; end Set_Payload; procedure Generic_Set_Payload (Ctx : in out Context) is diff --git a/tests/spark/generated/rflx-sequence-inner_message.ads b/tests/spark/generated/rflx-sequence-inner_message.ads index 029ab8062..e9017f378 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.ads +++ b/tests/spark/generated/rflx-sequence-inner_message.ads @@ -259,9 +259,16 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Payload) + and then Valid_Next (Ctx, F_Payload) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)); + generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); - procedure Get_Payload (Ctx : Context) with + procedure Generic_Get_Payload (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Payload); @@ -339,7 +346,7 @@ is and Valid_Next (Ctx, F_Payload) = Valid_Next (Ctx, F_Payload)'Old and Get_Length (Ctx) = Get_Length (Ctx)'Old; - procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) with + procedure Set_Payload (Ctx : in out Context; Data : RFLX_Types.Bytes) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -349,7 +356,7 @@ is and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Payload)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) diff --git a/tests/spark/generated/rflx-sequence-message.adb b/tests/spark/generated/rflx-sequence-message.adb index 6205a8b76..769c28445 100644 --- a/tests/spark/generated/rflx-sequence-message.adb +++ b/tests/spark/generated/rflx-sequence-message.adb @@ -308,34 +308,62 @@ is Verify (Ctx, F_AV_Enumeration_Vector); end Verify_Message; - procedure Get_Modular_Vector (Ctx : Context) is + procedure Get_Modular_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).Last); begin - Process_Modular_Vector (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Modular_Vector; - procedure Get_Range_Vector (Ctx : Context) is + procedure Get_Range_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Range_Vector).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Range_Vector).Last); begin - Process_Range_Vector (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Range_Vector; - procedure Get_Enumeration_Vector (Ctx : Context) is + procedure Get_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).Last); begin - Process_Enumeration_Vector (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Enumeration_Vector; - procedure Get_AV_Enumeration_Vector (Ctx : Context) is + procedure Get_AV_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).Last); begin - Process_AV_Enumeration_Vector (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_AV_Enumeration_Vector; + procedure Generic_Get_Modular_Vector (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).Last); + begin + Process_Modular_Vector (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Modular_Vector; + + procedure Generic_Get_Range_Vector (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Range_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Range_Vector).Last); + begin + Process_Range_Vector (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Range_Vector; + + procedure Generic_Get_Enumeration_Vector (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).Last); + begin + Process_Enumeration_Vector (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Enumeration_Vector; + + procedure Generic_Get_AV_Enumeration_Vector (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).Last); + begin + Process_AV_Enumeration_Vector (Ctx.Buffer.all (First .. Last)); + end Generic_Get_AV_Enumeration_Vector; + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained diff --git a/tests/spark/generated/rflx-sequence-message.ads b/tests/spark/generated/rflx-sequence-message.ads index dadd46f05..78d7c9c01 100644 --- a/tests/spark/generated/rflx-sequence-message.ads +++ b/tests/spark/generated/rflx-sequence-message.ads @@ -263,30 +263,58 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Modular_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Modular_Vector) + and then Valid_Next (Ctx, F_Modular_Vector) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Modular_Vector)); + + procedure Get_Range_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Range_Vector) + and then Valid_Next (Ctx, F_Range_Vector) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Range_Vector)); + + procedure Get_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Enumeration_Vector) + and then Valid_Next (Ctx, F_Enumeration_Vector) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Enumeration_Vector)); + + procedure Get_AV_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_AV_Enumeration_Vector) + and then Valid_Next (Ctx, F_AV_Enumeration_Vector) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_AV_Enumeration_Vector)); + generic with procedure Process_Modular_Vector (Modular_Vector : RFLX_Types.Bytes); - procedure Get_Modular_Vector (Ctx : Context) with + procedure Generic_Get_Modular_Vector (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Modular_Vector); generic with procedure Process_Range_Vector (Range_Vector : RFLX_Types.Bytes); - procedure Get_Range_Vector (Ctx : Context) with + procedure Generic_Get_Range_Vector (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Range_Vector); generic with procedure Process_Enumeration_Vector (Enumeration_Vector : RFLX_Types.Bytes); - procedure Get_Enumeration_Vector (Ctx : Context) with + procedure Generic_Get_Enumeration_Vector (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Enumeration_Vector); generic with procedure Process_AV_Enumeration_Vector (AV_Enumeration_Vector : RFLX_Types.Bytes); - procedure Get_AV_Enumeration_Vector (Ctx : Context) with + procedure Generic_Get_AV_Enumeration_Vector (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_AV_Enumeration_Vector); diff --git a/tests/spark/generated/rflx-sequence-messages_message.adb b/tests/spark/generated/rflx-sequence-messages_message.adb index 10f7aa041..825433237 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.adb +++ b/tests/spark/generated/rflx-sequence-messages_message.adb @@ -230,13 +230,20 @@ is Verify (Ctx, F_Messages); end Verify_Message; - procedure Get_Messages (Ctx : Context) is + procedure Get_Messages (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Messages).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Messages).Last); begin - Process_Messages (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Messages; + procedure Generic_Get_Messages (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Messages).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Messages).Last); + begin + Process_Messages (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Messages; + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained diff --git a/tests/spark/generated/rflx-sequence-messages_message.ads b/tests/spark/generated/rflx-sequence-messages_message.ads index e3d0a06fb..f4cf3fdce 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.ads +++ b/tests/spark/generated/rflx-sequence-messages_message.ads @@ -260,9 +260,16 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Messages (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Messages) + and then Valid_Next (Ctx, F_Messages) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Messages)); + generic with procedure Process_Messages (Messages : RFLX_Types.Bytes); - procedure Get_Messages (Ctx : Context) with + procedure Generic_Get_Messages (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Messages); diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb index f3dd11722..d89192b5e 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb @@ -230,13 +230,20 @@ is Verify (Ctx, F_Vector); end Verify_Message; - procedure Get_Vector (Ctx : Context) is + procedure Get_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Vector).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Vector).Last); begin - Process_Vector (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Vector; + procedure Generic_Get_Vector (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Vector).Last); + begin + Process_Vector (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Vector; + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads index db78d0bf0..cd8b1c58b 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads @@ -260,9 +260,16 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Vector) + and then Valid_Next (Ctx, F_Vector) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Vector)); + generic with procedure Process_Vector (Vector : RFLX_Types.Bytes); - procedure Get_Vector (Ctx : Context) with + procedure Generic_Get_Vector (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Vector); diff --git a/tests/spark/generated/rflx-tlv-message.adb b/tests/spark/generated/rflx-tlv-message.adb index df7968a09..8cd71487a 100644 --- a/tests/spark/generated/rflx-tlv-message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -264,13 +264,20 @@ is Verify (Ctx, F_Value); end Verify_Message; - procedure Get_Value (Ctx : Context) is + procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).Last); begin - Process_Value (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Value; + procedure Generic_Get_Value (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).Last); + begin + Process_Value (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Value; + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained @@ -395,7 +402,7 @@ is Initialize_Value_Private (Ctx); end Initialize_Value; - procedure Set_Value (Ctx : in out Context; Value : RFLX_Types.Bytes) is + procedure Set_Value (Ctx : in out Context; Data : RFLX_Types.Bytes) is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); function Buffer_First return RFLX_Types.Index is @@ -404,7 +411,7 @@ is (RFLX_Types.Byte_Index (Last)); begin Initialize_Value_Private (Ctx); - Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; + Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; end Set_Value; procedure Generic_Set_Value (Ctx : in out Context) is diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index 2018f8f52..b06ecbf87 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -265,9 +265,16 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Value) + and then Valid_Next (Ctx, F_Value) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Value)); + generic with procedure Process_Value (Value : RFLX_Types.Bytes); - procedure Get_Value (Ctx : Context) with + procedure Generic_Get_Value (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Value); @@ -379,7 +386,7 @@ is and Get_Tag (Ctx) = Get_Tag (Ctx)'Old and Get_Length (Ctx) = Get_Length (Ctx)'Old; - procedure Set_Value (Ctx : in out Context; Value : RFLX_Types.Bytes) with + procedure Set_Value (Ctx : in out Context; Data : RFLX_Types.Bytes) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -389,7 +396,7 @@ is and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 - and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Value)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Value)) + 1, + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Value)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Value) diff --git a/tests/spark/generated/rflx-udp-datagram.adb b/tests/spark/generated/rflx-udp-datagram.adb index 6dbb1d7a9..710f56581 100644 --- a/tests/spark/generated/rflx-udp-datagram.adb +++ b/tests/spark/generated/rflx-udp-datagram.adb @@ -310,13 +310,20 @@ is Verify (Ctx, F_Payload); end Verify_Message; - procedure Get_Payload (Ctx : Context) is + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); begin - Process_Payload (Ctx.Buffer.all (First .. Last)); + Data := Ctx.Buffer.all (First .. Last); end Get_Payload; + procedure Generic_Get_Payload (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + begin + Process_Payload (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Payload; + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained @@ -470,7 +477,7 @@ is Initialize_Payload_Private (Ctx); end Initialize_Payload; - procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) is + procedure Set_Payload (Ctx : in out Context; Data : RFLX_Types.Bytes) is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is @@ -479,7 +486,7 @@ is (RFLX_Types.Byte_Index (Last)); begin Initialize_Payload_Private (Ctx); - Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Value; + Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; end Set_Payload; procedure Generic_Set_Payload (Ctx : in out Context) is diff --git a/tests/spark/generated/rflx-udp-datagram.ads b/tests/spark/generated/rflx-udp-datagram.ads index 0b446119b..a8e15a53c 100644 --- a/tests/spark/generated/rflx-udp-datagram.ads +++ b/tests/spark/generated/rflx-udp-datagram.ads @@ -277,9 +277,16 @@ is pragma Warnings (On, "precondition is always False"); + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Payload) + and then Valid_Next (Ctx, F_Payload) + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)); + generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); - procedure Get_Payload (Ctx : Context) with + procedure Generic_Get_Payload (Ctx : Context) with Pre => Has_Buffer (Ctx) and Present (Ctx, F_Payload); @@ -447,7 +454,7 @@ is and Get_Length (Ctx) = Get_Length (Ctx)'Old and Get_Checksum (Ctx) = Get_Checksum (Ctx)'Old; - procedure Set_Payload (Ctx : in out Context; Value : RFLX_Types.Bytes) with + procedure Set_Payload (Ctx : in out Context; Data : RFLX_Types.Bytes) with Pre => not Ctx'Constrained and then Has_Buffer (Ctx) @@ -457,7 +464,7 @@ is and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Value'Length = RFLX_Types.Byte_Index (Field_Last (Ctx, F_Payload)) - RFLX_Types.Byte_Index (Field_First (Ctx, F_Payload)) + 1, + and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) diff --git a/tests/spark/rflx-builtin_types_tests.adb b/tests/spark/rflx-builtin_types_tests.adb index 170883a16..dba847d68 100644 --- a/tests/spark/rflx-builtin_types_tests.adb +++ b/tests/spark/rflx-builtin_types_tests.adb @@ -39,6 +39,18 @@ package body RFLX.Builtin_Types_Tests is "Invalid byte index for Bit_Index'Last"); end Test_Index_Calculations; + procedure Test_Length_Calculations (T : in out AUnit.Test_Cases.Test_Case'Class) with + SPARK_Mode, Pre => True + is + pragma Unreferenced (T); + begin + Assert (RFLX_Types.Byte_Length (0)'Img, " 0", "Invalid conversion of 0"); + Assert (RFLX_Types.Byte_Length (1)'Img, " 1", "Invalid conversion of 1"); + Assert (RFLX_Types.Byte_Length (8)'Img, " 1", "Invalid conversion of 8"); + Assert (RFLX_Types.Byte_Length (9)'Img, " 2", "Invalid conversion of 9"); + Assert (RFLX_Types.Byte_Length (16)'Img, " 2", "Invalid conversion of 16"); + end Test_Length_Calculations; + generic type Offset_Type is (<>); function Identity (X : Offset_Type) return Offset_Type; @@ -460,15 +472,16 @@ package body RFLX.Builtin_Types_Tests is use AUnit.Test_Cases.Registration; begin Register_Routine (T, Test_Index_Calculations'Access, "Index calculations"); - Register_Routine (T, Test_Extract_Modular_Integer_1'Access, "RFLX_Types.Extract modular integer (1 bit)"); - Register_Routine (T, Test_Extract_Modular_Integer_8'Access, "RFLX_Types.Extract modular integer (8 bit)"); - Register_Routine (T, Test_Extract_Modular_Integer_13'Access, "RFLX_Types.Extract modular integer (13 bit)"); - Register_Routine (T, Test_Extract_Modular_Integer_62'Access, "RFLX_Types.Extract modular integer (62 bit)"); - Register_Routine (T, Test_Extract_Modular_Integer_64'Access, "RFLX_Types.Extract modular integer (64 bit)"); - Register_Routine (T, Test_Insert_Modular_Integer_1'Access, "RFLX_Types.Insert modular integer (1 bit)"); - Register_Routine (T, Test_Insert_Modular_Integer_2'Access, "RFLX_Types.Insert modular integer (2 bit)"); - Register_Routine (T, Test_Insert_Modular_Integer_13'Access, "RFLX_Types.Insert modular integer (13 bit)"); - Register_Routine (T, Test_Insert_Modular_Integer_64'Access, "RFLX_Types.Insert modular integer (64 bit)"); + Register_Routine (T, Test_Length_Calculations'Access, "Length calculations"); + Register_Routine (T, Test_Extract_Modular_Integer_1'Access, "Extract modular integer (1 bit)"); + Register_Routine (T, Test_Extract_Modular_Integer_8'Access, "Extract modular integer (8 bit)"); + Register_Routine (T, Test_Extract_Modular_Integer_13'Access, "Extract modular integer (13 bit)"); + Register_Routine (T, Test_Extract_Modular_Integer_62'Access, "Extract modular integer (62 bit)"); + Register_Routine (T, Test_Extract_Modular_Integer_64'Access, "Extract modular integer (64 bit)"); + Register_Routine (T, Test_Insert_Modular_Integer_1'Access, "Insert modular integer (1 bit)"); + Register_Routine (T, Test_Insert_Modular_Integer_2'Access, "Insert modular integer (2 bit)"); + Register_Routine (T, Test_Insert_Modular_Integer_13'Access, "Insert modular integer (13 bit)"); + Register_Routine (T, Test_Insert_Modular_Integer_64'Access, "Insert modular integer (64 bit)"); end Register_Tests; end RFLX.Builtin_Types_Tests; diff --git a/tests/spark/rflx-derivation_tests.adb b/tests/spark/rflx-derivation_tests.adb index 44a94192d..f0a60e1ae 100644 --- a/tests/spark/rflx-derivation_tests.adb +++ b/tests/spark/rflx-derivation_tests.adb @@ -25,7 +25,7 @@ package body RFLX.Derivation_Tests is Value_Length := Buffer'Length; end Store_Value_Length; - procedure Get_Value_Length is new Derivation.Message.Get_Value (Store_Value_Length); + procedure Get_Value_Length is new Derivation.Message.Generic_Get_Value (Store_Value_Length); Data : RFLX_Builtin_Types.Bytes (RFLX_Builtin_Types.Index'First .. RFLX_Builtin_Types.Index'First + 3) := (others => 0); diff --git a/tests/spark/rflx-ethernet_tests.adb b/tests/spark/rflx-ethernet_tests.adb index 0a1908791..20871b209 100644 --- a/tests/spark/rflx-ethernet_tests.adb +++ b/tests/spark/rflx-ethernet_tests.adb @@ -43,7 +43,7 @@ package body RFLX.Ethernet_Tests is SPARK_Mode, Pre => True is pragma Unreferenced (T); - procedure Get_Payload_Length is new Ethernet.Frame.Get_Payload (Store_Payload_Length); + procedure Get_Payload_Length is new Ethernet.Frame.Generic_Get_Payload (Store_Payload_Length); Buffer : RFLX_Builtin_Types.Bytes_Ptr := Read_File_Ptr ("tests/data/captured/ethernet_ipv4_udp.raw"); Context : Ethernet.Frame.Context; Destination : Ethernet.Address; @@ -98,7 +98,7 @@ package body RFLX.Ethernet_Tests is SPARK_Mode, Pre => True is pragma Unreferenced (T); - procedure Get_Payload_Length is new Ethernet.Frame.Get_Payload (Store_Payload_Length); + procedure Get_Payload_Length is new Ethernet.Frame.Generic_Get_Payload (Store_Payload_Length); Buffer : RFLX_Builtin_Types.Bytes_Ptr := Read_File_Ptr ("tests/data/captured/ethernet_802.3.raw"); Context : Ethernet.Frame.Context; Destination : Ethernet.Address; @@ -153,7 +153,7 @@ package body RFLX.Ethernet_Tests is SPARK_Mode, Pre => True is pragma Unreferenced (T); - procedure Get_Payload_Length is new Ethernet.Frame.Get_Payload (Store_Payload_Length); + procedure Get_Payload_Length is new Ethernet.Frame.Generic_Get_Payload (Store_Payload_Length); Buffer : RFLX_Builtin_Types.Bytes_Ptr := Read_File_Ptr ("tests/data/captured/ethernet_vlan_tag.raw"); Context : Ethernet.Frame.Context; Destination : Ethernet.Address; diff --git a/tests/spark/rflx-expression_tests.adb b/tests/spark/rflx-expression_tests.adb index 4ec916ab0..cc14d027d 100644 --- a/tests/spark/rflx-expression_tests.adb +++ b/tests/spark/rflx-expression_tests.adb @@ -24,7 +24,7 @@ package body RFLX.Expression_Tests is Payload_Content := Buffer; end Store_Payload; - procedure Get_Payload_Content is new Expression.Message.Get_Payload (Store_Payload); + procedure Get_Payload_Content is new Expression.Message.Generic_Get_Payload (Store_Payload); procedure Test_Expression_Valid (T : in out AUnit.Test_Cases.Test_Case'Class) with SPARK_Mode, Pre => True diff --git a/tests/spark/rflx-ipv4_tests.adb b/tests/spark/rflx-ipv4_tests.adb index b8faa0f86..5bac520c2 100644 --- a/tests/spark/rflx-ipv4_tests.adb +++ b/tests/spark/rflx-ipv4_tests.adb @@ -28,7 +28,7 @@ package body RFLX.IPv4_Tests is Payload_Length := Buffer'Length; end Store_Payload_Length; - procedure Get_Payload_Length is new IPv4.Packet.Get_Payload (Store_Payload_Length); + procedure Get_Payload_Length is new IPv4.Packet.Generic_Get_Payload (Store_Payload_Length); Option_Data_Length : RFLX_Builtin_Types.Length; @@ -37,7 +37,7 @@ package body RFLX.IPv4_Tests is Option_Data_Length := Buffer'Length; end Store_Option_Data_Length; - procedure Get_Option_Data_Length is new IPv4.Option.Get_Option_Data (Store_Option_Data_Length); + procedure Get_Option_Data_Length is new IPv4.Option.Generic_Get_Option_Data (Store_Option_Data_Length); Data : RFLX_Builtin_Types.Bytes (RFLX_Builtin_Types.Index'First .. RFLX_Builtin_Types.Index'First + 23) := (others => 0); diff --git a/tests/spark/rflx-tlv_tests.adb b/tests/spark/rflx-tlv_tests.adb index 82629677d..d1f46f66e 100644 --- a/tests/spark/rflx-tlv_tests.adb +++ b/tests/spark/rflx-tlv_tests.adb @@ -24,7 +24,7 @@ package body RFLX.TLV_Tests is Value_Length := Buffer'Length; end Store_Value_Length; - procedure Get_Value_Length is new TLV.Message.Get_Value (Store_Value_Length); + procedure Get_Value_Length is new TLV.Message.Generic_Get_Value (Store_Value_Length); Data : RFLX_Builtin_Types.Bytes (RFLX_Builtin_Types.Index'First .. RFLX_Builtin_Types.Index'First + 3) := (others => 0); @@ -44,10 +44,11 @@ package body RFLX.TLV_Tests is SPARK_Mode, Pre => True is pragma Unreferenced (T); - Buffer : RFLX_Builtin_Types.Bytes_Ptr := new RFLX_Builtin_Types.Bytes'(1, 0, 4, 0, 0, 0, 0); + Buffer : RFLX_Builtin_Types.Bytes_Ptr := new RFLX_Builtin_Types.Bytes'(1, 0, 4, 1, 2, 3, 4); Context : TLV.Message.Context; Tag : TLV.Tag; Length : TLV.Length; + Value : RFLX_Builtin_Types.Bytes := (0, 0, 0, 0); begin TLV.Message.Initialize (Context, Buffer); TLV.Message.Verify_Message (Context); @@ -64,6 +65,12 @@ package body RFLX.TLV_Tests is if TLV.Message.Present (Context, TLV.Message.F_Value) then Get_Value_Length (Context); Assert (Value_Length'Image, RFLX_Builtin_Types.Length'Image (4), "Unexpected Value length"); + TLV.Message.Get_Value + (Context, + Value (Value'First + .. RFLX_Builtin_Types.Index (RFLX_Builtin_Types.Length (Value'First) + + RFLX_Types.Byte_Length (TLV.Message.Field_Size (Context, TLV.Message.F_Value)) - 1))); + Assert (Value, (1, 2, 3, 4), "Unexpected Value"); end if; end if; end if; From 6163222f87705ca7c30239b2ac74a2cf6f383445 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 4 May 2021 16:49:19 +0200 Subject: [PATCH 19/43] Improve naming of type conversion functions --- examples/apps/ping/src/icmpv4.adb | 4 +- rflx/generator/common.py | 12 ++-- rflx/generator/const.py | 8 +-- rflx/generator/generator.py | 40 +++++------ rflx/generator/parser.py | 10 +-- rflx/generator/serializer.py | 6 +- rflx/templates/rflx_generic_types.ads | 10 +-- rflx/templates/rflx_message_sequence.adb | 4 +- rflx/templates/rflx_message_sequence.ads | 18 ++--- rflx/templates/rflx_scalar_sequence.adb | 12 ++-- rflx/templates/rflx_scalar_sequence.ads | 18 ++--- .../generated/rflx-derivation-message.adb | 38 +++++----- .../generated/rflx-derivation-message.ads | 24 +++---- .../generated/rflx-enumeration-message.adb | 20 +++--- .../generated/rflx-enumeration-message.ads | 20 +++--- tests/spark/generated/rflx-ethernet-frame.adb | 38 +++++----- tests/spark/generated/rflx-ethernet-frame.ads | 24 +++---- .../generated/rflx-expression-message.adb | 30 ++++---- .../generated/rflx-expression-message.ads | 24 +++---- tests/spark/generated/rflx-icmp-message.adb | 38 +++++----- tests/spark/generated/rflx-icmp-message.ads | 24 +++---- tests/spark/generated/rflx-ipv4-option.adb | 38 +++++----- tests/spark/generated/rflx-ipv4-option.ads | 24 +++---- tests/spark/generated/rflx-ipv4-packet.adb | 50 ++++++------- tests/spark/generated/rflx-ipv4-packet.ads | 26 +++---- .../generated/rflx-rflx_generic_types.ads | 10 +-- .../generated/rflx-rflx_message_sequence.adb | 4 +- .../generated/rflx-rflx_message_sequence.ads | 18 ++--- .../generated/rflx-rflx_scalar_sequence.adb | 12 ++-- .../generated/rflx-rflx_scalar_sequence.ads | 18 ++--- .../generated/rflx-sequence-inner_message.adb | 38 +++++----- .../generated/rflx-sequence-inner_message.ads | 24 +++---- .../spark/generated/rflx-sequence-message.adb | 70 +++++++++---------- .../spark/generated/rflx-sequence-message.ads | 28 ++++---- .../rflx-sequence-messages_message.adb | 34 ++++----- .../rflx-sequence-messages_message.ads | 22 +++--- ...-sequence_size_defined_by_message_size.adb | 34 ++++----- ...-sequence_size_defined_by_message_size.ads | 22 +++--- tests/spark/generated/rflx-tlv-message.adb | 38 +++++----- tests/spark/generated/rflx-tlv-message.ads | 24 +++---- tests/spark/generated/rflx-udp-datagram.adb | 38 +++++----- tests/spark/generated/rflx-udp-datagram.ads | 24 +++---- tests/spark/rflx-builtin_types_tests.adb | 34 +++++---- tests/spark/rflx-derivation_tests.adb | 6 +- tests/spark/rflx-enumeration_tests.adb | 6 +- tests/spark/rflx-ethernet_tests.adb | 24 +++---- tests/spark/rflx-in_ethernet_tests.adb | 8 +-- tests/spark/rflx-in_ipv4_tests.adb | 8 +-- tests/spark/rflx-ipv4_tests.adb | 12 ++-- tests/spark/rflx-sequence_tests.adb | 48 ++++++------- tests/spark/rflx-tlv_tests.adb | 26 +++---- 51 files changed, 596 insertions(+), 594 deletions(-) diff --git a/examples/apps/ping/src/icmpv4.adb b/examples/apps/ping/src/icmpv4.adb index f48891689..d1a436fb4 100644 --- a/examples/apps/ping/src/icmpv4.adb +++ b/examples/apps/ping/src/icmpv4.adb @@ -216,11 +216,11 @@ is RFLX.ICMP.Message.Set_Identifier (ICMP_Context, 0); RFLX.ICMP.Message.Set_Sequence_Number (ICMP_Context, Sequence); Set_Data (ICMP_Context); - Last := RFLX.RFLX_Types.Byte_Index (RFLX.ICMP.Message.Message_Last (ICMP_Context)); + Last := RFLX.RFLX_Types.To_Index (RFLX.ICMP.Message.Message_Last (ICMP_Context)); RFLX.ICMP.Message.Take_Buffer (ICMP_Context, Buf); Sequence := Sequence + 1; else - Last := RFLX.RFLX_Types.Byte_Index (RFLX.IPv4.Packet.Message_Last (IP_Context)); + Last := RFLX.RFLX_Types.To_Index (RFLX.IPv4.Packet.Message_Last (IP_Context)); RFLX.IPv4.Packet.Take_Buffer (IP_Context, Buf); end if; pragma Warnings (On, """*_Context"" is set by ""*"" but not used after the call"); diff --git a/rflx/generator/common.py b/rflx/generator/common.py index 271ad2973..b932a3c7f 100644 --- a/rflx/generator/common.py +++ b/rflx/generator/common.py @@ -42,7 +42,7 @@ def byte_aggregate(aggregate: expr.Aggregate) -> expr.Aggregate: expr.Variable(expr.ID("Buffer") * "all"), expr.ValueRange( expr.Call( - const.TYPES_BYTE_INDEX, + const.TYPES_TO_INDEX, [ expr.Selected( expr.Indexed( @@ -54,7 +54,7 @@ def byte_aggregate(aggregate: expr.Aggregate) -> expr.Aggregate: ], ), expr.Call( - const.TYPES_BYTE_INDEX, + const.TYPES_TO_INDEX, [ expr.Selected( expr.Indexed( @@ -490,10 +490,10 @@ def invalid_successors_invariant() -> ada.Expr: def public_context_predicate() -> ada.Expr: return ada.And( ada.GreaterEqual( - ada.Call(const.TYPES_BYTE_INDEX, [ada.Variable("First")]), ada.Variable("Buffer_First") + ada.Call(const.TYPES_TO_INDEX, [ada.Variable("First")]), ada.Variable("Buffer_First") ), ada.LessEqual( - ada.Call(const.TYPES_BYTE_INDEX, [ada.Variable("Last")]), ada.Variable("Buffer_Last") + ada.Call(const.TYPES_TO_INDEX, [ada.Variable("Last")]), ada.Variable("Buffer_Last") ), ada.LessEqual(ada.Variable("First"), ada.Add(ada.Variable("Last"), ada.Number(1))), ada.Less(ada.Variable("Last"), ada.Last(const.TYPES_BIT_INDEX)), @@ -608,11 +608,11 @@ def field_byte_location_declarations() -> Sequence[ada.Declaration]: return [ ada.ExpressionFunctionDeclaration( ada.FunctionSpecification("Buffer_First", const.TYPES_INDEX), - ada.Call(const.TYPES_BYTE_INDEX, [ada.Variable("First")]), + ada.Call(const.TYPES_TO_INDEX, [ada.Variable("First")]), ), ada.ExpressionFunctionDeclaration( ada.FunctionSpecification("Buffer_Last", const.TYPES_INDEX), - ada.Call(const.TYPES_BYTE_INDEX, [ada.Variable("Last")]), + ada.Call(const.TYPES_TO_INDEX, [ada.Variable("Last")]), ), ada.ExpressionFunctionDeclaration( ada.FunctionSpecification("Offset", const.TYPES_OFFSET), diff --git a/rflx/generator/const.py b/rflx/generator/const.py index f2ac55790..c5c5fc6db 100644 --- a/rflx/generator/const.py +++ b/rflx/generator/const.py @@ -42,10 +42,10 @@ TYPES_LENGTH = TYPES * "Length" TYPES_BIT_INDEX = TYPES * "Bit_Index" TYPES_BIT_LENGTH = TYPES * "Bit_Length" -TYPES_BYTE_INDEX = TYPES * "Byte_Index" -TYPES_BYTE_LENGTH = TYPES * "Byte_Length" -TYPES_FIRST_BIT_INDEX = TYPES * "First_Bit_Index" -TYPES_LAST_BIT_INDEX = TYPES * "Last_Bit_Index" +TYPES_TO_INDEX = TYPES * "To_Index" +TYPES_TO_LENGTH = TYPES * "To_Length" +TYPES_FIRST_BIT_INDEX = TYPES * "To_First_Bit_Index" +TYPES_TO_LAST_BIT_INDEX = TYPES * "To_Last_Bit_Index" TYPES_OFFSET = TYPES * "Offset" TYPES_U64 = TYPES * "U64" diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 362715421..372e35677 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -694,14 +694,14 @@ def __create_initialize_procedure() -> UnitPart: Equal( Variable("Ctx.First"), Call( - const.TYPES * "First_Bit_Index", + const.TYPES * "To_First_Bit_Index", [Variable("Ctx.Buffer_First")], ), ), Equal( Variable("Ctx.Last"), Call( - const.TYPES * "Last_Bit_Index", + const.TYPES * "To_Last_Bit_Index", [Variable("Ctx.Buffer_Last")], ), ), @@ -723,7 +723,7 @@ def __create_initialize_procedure() -> UnitPart: Variable("Ctx"), Variable("Buffer"), Call(const.TYPES_FIRST_BIT_INDEX, [First("Buffer")]), - Call(const.TYPES_LAST_BIT_INDEX, [Last("Buffer")]), + Call(const.TYPES_TO_LAST_BIT_INDEX, [Last("Buffer")]), ], ) ], @@ -754,11 +754,11 @@ def __create_restricted_initialize_procedure(message: Message) -> UnitPart: NotEqual(Variable("Buffer"), NULL), Greater(Length("Buffer"), Number(0)), GreaterEqual( - Call(const.TYPES_BYTE_INDEX, [Variable("First")]), + Call(const.TYPES_TO_INDEX, [Variable("First")]), First("Buffer"), ), LessEqual( - Call(const.TYPES_BYTE_INDEX, [Variable("Last")]), + Call(const.TYPES_TO_INDEX, [Variable("Last")]), Last("Buffer"), ), LessEqual(Variable("First"), Add(Variable("Last"), Number(1))), @@ -927,11 +927,11 @@ def __create_restricted_reset_procedure(message: Message) -> UnitPart: Not(Constrained("Ctx")), Call("Has_Buffer", [Variable("Ctx")]), GreaterEqual( - Call(const.TYPES_BYTE_INDEX, [Variable("First")]), + Call(const.TYPES_TO_INDEX, [Variable("First")]), Variable("Ctx.Buffer_First"), ), LessEqual( - Call(const.TYPES_BYTE_INDEX, [Variable("Last")]), + Call(const.TYPES_TO_INDEX, [Variable("Last")]), Variable("Ctx.Buffer_Last"), ), LessEqual(Variable("First"), Add(Variable("Last"), Number(1))), @@ -1057,11 +1057,11 @@ def __create_copy_procedure() -> UnitPart: Variable("Ctx.Buffer.all"), ValueRange( Call( - const.TYPES_BYTE_INDEX, + const.TYPES_TO_INDEX, [Variable("Ctx.First")], ), Call( - const.TYPES_BYTE_INDEX, + const.TYPES_TO_INDEX, [Variable("Ctx.Message_Last")], ), ), @@ -1127,10 +1127,8 @@ def __create_read_procedure() -> UnitPart: Indexed( Variable("Ctx.Buffer.all"), ValueRange( - Call(const.TYPES_BYTE_INDEX, [Variable("Ctx.First")]), - Call( - const.TYPES_BYTE_INDEX, [Variable("Ctx.Message_Last")] - ), + Call(const.TYPES_TO_INDEX, [Variable("Ctx.First")]), + Call(const.TYPES_TO_INDEX, [Variable("Ctx.Message_Last")]), ), ) ], @@ -1197,8 +1195,8 @@ def __create_write_procedure() -> UnitPart: Indexed( Variable("Ctx.Buffer.all"), ValueRange( - Call(const.TYPES_BYTE_INDEX, [Variable("Ctx.First")]), - Call(const.TYPES_BYTE_INDEX, [Variable("Ctx.Last")]), + Call(const.TYPES_TO_INDEX, [Variable("Ctx.First")]), + Call(const.TYPES_TO_INDEX, [Variable("Ctx.Last")]), ), ), Variable("Length"), @@ -1210,14 +1208,14 @@ def __create_write_procedure() -> UnitPart: Variable("Ctx"), Variable("Ctx.First"), Call( - const.TYPES_LAST_BIT_INDEX, + const.TYPES_TO_LAST_BIT_INDEX, [ Add( Call( const.TYPES_LENGTH, [ Call( - const.TYPES_BYTE_INDEX, + const.TYPES_TO_INDEX, [Variable("Ctx.First")], ) ], @@ -1955,8 +1953,8 @@ def __create_byte_size_function() -> UnitPart: Indexed( Variable(const.TYPES_LENGTH), Add( - Call(const.TYPES_BYTE_INDEX, [Variable("Ctx.Message_Last")]), - -Call(const.TYPES_BYTE_INDEX, [Variable("Ctx.First")]), + Call(const.TYPES_TO_INDEX, [Variable("Ctx.Message_Last")]), + -Call(const.TYPES_TO_INDEX, [Variable("Ctx.First")]), Number(1), ), ), @@ -2101,7 +2099,7 @@ def __create_equal_function( Variable("Ctx.Buffer.all"), ValueRange( Call( - const.TYPES_BYTE_INDEX, + const.TYPES_TO_INDEX, [ Call( "Field_First", @@ -2113,7 +2111,7 @@ def __create_equal_function( ], ), Call( - const.TYPES_BYTE_INDEX, + const.TYPES_TO_INDEX, [ Call( "Field_Last", diff --git a/rflx/generator/parser.py b/rflx/generator/parser.py index 0808a18ca..9dcea6f18 100644 --- a/rflx/generator/parser.py +++ b/rflx/generator/parser.py @@ -745,7 +745,7 @@ def specification(field: Field) -> ProcedureSpecification: Equal( Length("Data"), Call( - const.TYPES_BYTE_LENGTH, + const.TYPES_TO_LENGTH, [ Call( "Field_Size", @@ -771,7 +771,7 @@ def specification(field: Field) -> ProcedureSpecification: ["First"], const.TYPES_INDEX, Call( - const.TYPES_BYTE_INDEX, + const.TYPES_TO_INDEX, [ Selected( Indexed( @@ -788,7 +788,7 @@ def specification(field: Field) -> ProcedureSpecification: ["Last"], const.TYPES_INDEX, Call( - const.TYPES_BYTE_INDEX, + const.TYPES_TO_INDEX, [ Selected( Indexed( @@ -853,7 +853,7 @@ def specification(field: Field) -> ProcedureSpecification: ["First"], const.TYPES_INDEX, Call( - const.TYPES_BYTE_INDEX, + const.TYPES_TO_INDEX, [ Selected( Indexed( @@ -870,7 +870,7 @@ def specification(field: Field) -> ProcedureSpecification: ["Last"], const.TYPES_INDEX, Call( - const.TYPES_BYTE_INDEX, + const.TYPES_TO_INDEX, [ Selected( Indexed( diff --git a/rflx/generator/serializer.py b/rflx/generator/serializer.py index 6be6004f8..79fce48f1 100644 --- a/rflx/generator/serializer.py +++ b/rflx/generator/serializer.py @@ -576,7 +576,7 @@ def specification(field: Field) -> ProcedureSpecification: Equal( Length("Data"), Call( - const.TYPES_BYTE_LENGTH, + const.TYPES_TO_LENGTH, [ Call( "Field_Size", @@ -990,10 +990,10 @@ def __field_byte_location_declarations() -> Sequence[Declaration]: return [ ExpressionFunctionDeclaration( FunctionSpecification("Buffer_First", const.TYPES_INDEX), - Call(const.TYPES_BYTE_INDEX, [Variable("First")]), + Call(const.TYPES_TO_INDEX, [Variable("First")]), ), ExpressionFunctionDeclaration( FunctionSpecification("Buffer_Last", const.TYPES_INDEX), - Call(const.TYPES_BYTE_INDEX, [Variable("Last")]), + Call(const.TYPES_TO_INDEX, [Variable("Last")]), ), ] diff --git a/rflx/templates/rflx_generic_types.ads b/rflx/templates/rflx_generic_types.ads index d05643e05..7d00ecd1f 100644 --- a/rflx/templates/rflx_generic_types.ads +++ b/rflx/templates/rflx_generic_types.ads @@ -47,19 +47,19 @@ is subtype U64 is {prefix}RFLX_Arithmetic.U64; - function Byte_Index (Bit_Idx : Bit_Length) return Index is + function To_Index (Bit_Idx : Bit_Length) return Index is (Index (Length ((Bit_Idx - 1) / 8) + 1)); - function Byte_Length (Bit_Len : Bit_Length) return Length is + function To_Length (Bit_Len : Bit_Length) return Length is (Length ((Bit_Len + 7) / 8)); - function First_Bit_Index (Idx : Index) return Bit_Index is + function To_First_Bit_Index (Idx : Index) return Bit_Index is ((Bit_Length (Idx) - 1) * 8 + 1); - function Last_Bit_Index (Idx : Index) return Bit_Index is + function To_Last_Bit_Index (Idx : Index) return Bit_Index is ((Bit_Length (Idx) - 1) * 8 + 8); - function Last_Bit_Index (Idx : Length) return Bit_Length is + function To_Last_Bit_Index (Idx : Length) return Bit_Length is ((Bit_Length (Idx) - 1) * 8 + 8); type Offset is mod 8; diff --git a/rflx/templates/rflx_message_sequence.adb b/rflx/templates/rflx_message_sequence.adb index fd1f2a317..f7c6bd923 100644 --- a/rflx/templates/rflx_message_sequence.adb +++ b/rflx/templates/rflx_message_sequence.adb @@ -6,7 +6,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -30,7 +30,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Sequence_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Sequence_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; diff --git a/rflx/templates/rflx_message_sequence.ads b/rflx/templates/rflx_message_sequence.ads index b17105661..6896a77b0 100644 --- a/rflx/templates/rflx_message_sequence.ads +++ b/rflx/templates/rflx_message_sequence.ads @@ -25,8 +25,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last <= RFLX_Types.Bit_Length'Last - 1 and First mod RFLX_Types.Byte'Size = 1 @@ -44,8 +44,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Sequence_Last (Ctx) = Ctx.First - 1), Depends => (Ctx => Buffer, Buffer => null); @@ -56,8 +56,8 @@ is and then Buffer /= null and then Buffer'First = Buffer_First and then Buffer'Last = Buffer_Last - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last <= RFLX_Types.Bit_Length'Last - 1 and then First mod RFLX_Types.Byte'Size = 1 @@ -193,8 +193,8 @@ private ((if Buffer /= null then (Buffer'First = Buffer_First and Buffer'Last = Buffer_Last)) - and RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last <= RFLX_Types.Bit_Length'Last - 1 and First - 1 <= Sequence_Last @@ -227,6 +227,6 @@ private then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Sequence_Last) - RFLX_Types.Byte_Index (Ctx.First)) + 1); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Sequence_Last) - RFLX_Types.To_Index (Ctx.First)) + 1); end {prefix}RFLX_Message_Sequence; diff --git a/rflx/templates/rflx_scalar_sequence.adb b/rflx/templates/rflx_scalar_sequence.adb index bf9582bb2..f15dcb617 100644 --- a/rflx/templates/rflx_scalar_sequence.adb +++ b/rflx/templates/rflx_scalar_sequence.adb @@ -6,7 +6,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -30,7 +30,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Sequence_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Sequence_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -38,8 +38,8 @@ is procedure Next (Ctx : in out Context) is Last_Bit : constant RFLX_Types.Bit_Index := Ctx.Sequence_Last + Element_Base_Type'Size; - Buffer_First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Sequence_Last + 1); - Buffer_Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Last_Bit); + Buffer_First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Sequence_Last + 1); + Buffer_Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Last_Bit); Offset : constant RFLX_Types.Offset := RFLX_Types.Offset ((8 - (Last_Bit mod 8)) mod 8); function Extract is new RFLX_Types.Extract (Element_Base_Type); begin @@ -70,8 +70,8 @@ is procedure Insert is new RFLX_Types.Insert (Element_Base_Type); begin Last_Bit := Ctx.Sequence_Last + Element_Base_Type'Size; - First := RFLX_Types.Byte_Index (Ctx.Sequence_Last + 1); - Last := RFLX_Types.Byte_Index (Last_Bit); + First := RFLX_Types.To_Index (Ctx.Sequence_Last + 1); + Last := RFLX_Types.To_Index (Last_Bit); Offset := RFLX_Types.Offset ((8 - (Last_Bit mod 8)) mod 8); if First >= Ctx.Buffer'First and Last <= Ctx.Buffer'Last and First <= Last then Insert (To_Base (Value), Ctx.Buffer.all (First .. Last), Offset); diff --git a/rflx/templates/rflx_scalar_sequence.ads b/rflx/templates/rflx_scalar_sequence.ads index 958101411..f12d9769e 100644 --- a/rflx/templates/rflx_scalar_sequence.ads +++ b/rflx/templates/rflx_scalar_sequence.ads @@ -21,8 +21,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First mod RFLX_Types.Byte'Size = 1 and First <= Last + 1 and Last <= RFLX_Types.Bit_Length'Last - 1; @@ -39,8 +39,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Sequence_Last (Ctx) = Ctx.First - 1), Depends => (Ctx => Buffer, Buffer => null); @@ -51,8 +51,8 @@ is and then Buffer /= null and then Buffer'First = Buffer_First and then Buffer'Last = Buffer_Last - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First mod RFLX_Types.Byte'Size = 1 and then First <= Last + 1 and then Last <= RFLX_Types.Bit_Length'Last - 1), @@ -176,8 +176,8 @@ private ((if Buffer /= null then (Buffer'First = Buffer_First and Buffer'Last = Buffer_Last)) - and RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First mod RFLX_Types.Byte'Size = 1 and First <= Last + 1 and Last <= RFLX_Types.Bit_Length'Last - 1 @@ -212,6 +212,6 @@ private then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Sequence_Last) - RFLX_Types.Byte_Index (Ctx.First)) + 1); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Sequence_Last) - RFLX_Types.To_Index (Ctx.First)) + 1); end {prefix}RFLX_Scalar_Sequence; diff --git a/tests/spark/generated/rflx-derivation-message.adb b/tests/spark/generated/rflx-derivation-message.adb index 699f3985d..9c2e7eff1 100644 --- a/tests/spark/generated/rflx-derivation-message.adb +++ b/tests/spark/generated/rflx-derivation-message.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -114,7 +114,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Value => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -191,9 +191,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.TLV.Tag_Base); @@ -265,15 +265,15 @@ is end Verify_Message; procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Value; procedure Generic_Get_Value (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).Last); begin Process_Value (Ctx.Buffer.all (First .. Last)); end Generic_Get_Value; @@ -311,9 +311,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.TLV.Tag_Base); @@ -406,9 +406,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Value_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; @@ -418,9 +418,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Value_Private (Ctx); Process_Value (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); diff --git a/tests/spark/generated/rflx-derivation-message.ads b/tests/spark/generated/rflx-derivation-message.ads index b4a04de44..c94a56f7a 100644 --- a/tests/spark/generated/rflx-derivation-message.ads +++ b/tests/spark/generated/rflx-derivation-message.ads @@ -34,8 +34,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -64,8 +64,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -75,8 +75,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -110,8 +110,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -272,7 +272,7 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Value) and then Valid_Next (Ctx, F_Value) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Value)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)); generic with procedure Process_Value (Value : RFLX_Types.Bytes); @@ -398,7 +398,7 @@ is and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Value)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Value) @@ -510,8 +510,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-enumeration-message.adb b/tests/spark/generated/rflx-enumeration-message.adb index c54b3b84c..1233a9c0e 100644 --- a/tests/spark/generated/rflx-enumeration-message.adb +++ b/tests/spark/generated/rflx-enumeration-message.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -132,9 +132,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.Enumeration.Priority_Base); @@ -208,9 +208,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.Enumeration.Priority_Base); diff --git a/tests/spark/generated/rflx-enumeration-message.ads b/tests/spark/generated/rflx-enumeration-message.ads index 67607e646..6051459e1 100644 --- a/tests/spark/generated/rflx-enumeration-message.ads +++ b/tests/spark/generated/rflx-enumeration-message.ads @@ -32,8 +32,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -60,8 +60,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -71,8 +71,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -106,8 +106,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -338,8 +338,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-ethernet-frame.adb b/tests/spark/generated/rflx-ethernet-frame.adb index f6e09b094..7a68aeac3 100644 --- a/tests/spark/generated/rflx-ethernet-frame.adb +++ b/tests/spark/generated/rflx-ethernet-frame.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -146,7 +146,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Payload => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -301,9 +301,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.Ethernet.Address); @@ -404,15 +404,15 @@ is end Verify_Message; procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Payload; procedure Generic_Get_Payload (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin Process_Payload (Ctx.Buffer.all (First .. Last)); end Generic_Get_Payload; @@ -450,9 +450,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.Ethernet.Address); @@ -591,9 +591,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Payload_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; @@ -603,9 +603,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Payload_Private (Ctx); Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); diff --git a/tests/spark/generated/rflx-ethernet-frame.ads b/tests/spark/generated/rflx-ethernet-frame.ads index c5e4243a1..89fe4c04e 100644 --- a/tests/spark/generated/rflx-ethernet-frame.ads +++ b/tests/spark/generated/rflx-ethernet-frame.ads @@ -32,8 +32,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -70,8 +70,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -81,8 +81,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -116,8 +116,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -294,7 +294,7 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); @@ -530,7 +530,7 @@ is and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -654,8 +654,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-expression-message.adb b/tests/spark/generated/rflx-expression-message.adb index 3812c41ab..f58f369b6 100644 --- a/tests/spark/generated/rflx-expression-message.adb +++ b/tests/spark/generated/rflx-expression-message.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -97,7 +97,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Payload => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data)); + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data)); procedure Reset_Dependent_Fields (Ctx : in out Context; Fld : Field) with Pre => @@ -178,15 +178,15 @@ is end Verify_Message; procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Payload; procedure Generic_Get_Payload (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin Process_Payload (Ctx.Buffer.all (First .. Last)); end Generic_Get_Payload; @@ -230,9 +230,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Payload_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; @@ -242,9 +242,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Payload_Private (Ctx); Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); diff --git a/tests/spark/generated/rflx-expression-message.ads b/tests/spark/generated/rflx-expression-message.ads index e5061ef35..36e001327 100644 --- a/tests/spark/generated/rflx-expression-message.ads +++ b/tests/spark/generated/rflx-expression-message.ads @@ -32,8 +32,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -58,8 +58,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -69,8 +69,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -104,8 +104,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -258,7 +258,7 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); @@ -301,7 +301,7 @@ is and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -405,8 +405,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-icmp-message.adb b/tests/spark/generated/rflx-icmp-message.adb index e5c9d14d0..f427c0658 100644 --- a/tests/spark/generated/rflx-icmp-message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -216,7 +216,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Data => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -724,9 +724,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.ICMP.Tag_Base); @@ -901,15 +901,15 @@ is end Verify_Message; procedure Get_Data (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Data).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Data).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Data; procedure Generic_Get_Data (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Data).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Data).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).Last); begin Process_Data (Ctx.Buffer.all (First .. Last)); end Generic_Get_Data; @@ -947,9 +947,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.ICMP.Tag_Base); @@ -1226,9 +1226,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Data); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Data); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Data_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; @@ -1238,9 +1238,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Data); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Data); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Data_Private (Ctx); Process_Data (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index 76ad4bfe0..2758c3b18 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -32,8 +32,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -88,8 +88,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -99,8 +99,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -134,8 +134,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -348,7 +348,7 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Data) and then Valid_Next (Ctx, F_Data) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Data)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)); generic with procedure Process_Data (Data : RFLX_Types.Bytes); @@ -1061,7 +1061,7 @@ is and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Data)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Data) @@ -1203,8 +1203,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-ipv4-option.adb b/tests/spark/generated/rflx-ipv4-option.adb index c78b54d38..89f4e2cee 100644 --- a/tests/spark/generated/rflx-ipv4-option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -139,7 +139,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Option_Data => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -249,9 +249,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.RFLX_Builtin_Types.Boolean_Base); @@ -339,15 +339,15 @@ is end Verify_Message; procedure Get_Option_Data (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Option_Data).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Option_Data).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Option_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Option_Data).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Option_Data; procedure Generic_Get_Option_Data (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Option_Data).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Option_Data).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Option_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Option_Data).Last); begin Process_Option_Data (Ctx.Buffer.all (First .. Last)); end Generic_Get_Option_Data; @@ -385,9 +385,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.RFLX_Builtin_Types.Boolean_Base); @@ -510,9 +510,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Option_Data); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Option_Data); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Option_Data_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; @@ -522,9 +522,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Option_Data); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Option_Data); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Option_Data_Private (Ctx); Process_Option_Data (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index 9e7117c77..12179b563 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -35,8 +35,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -69,8 +69,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -80,8 +80,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -115,8 +115,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -285,7 +285,7 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Option_Data) and then Valid_Next (Ctx, F_Option_Data) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Option_Data)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Option_Data)); generic with procedure Process_Option_Data (Option_Data : RFLX_Types.Bytes); @@ -488,7 +488,7 @@ is and then Field_First (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Option_Data)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Option_Data)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Option_Data) @@ -608,8 +608,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-ipv4-packet.adb b/tests/spark/generated/rflx-ipv4-packet.adb index a66c7f780..77575aa00 100644 --- a/tests/spark/generated/rflx-ipv4-packet.adb +++ b/tests/spark/generated/rflx-ipv4-packet.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -171,7 +171,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Options | F_Payload => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -731,9 +731,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.IPv4.Version_Base); @@ -912,29 +912,29 @@ is end Verify_Message; procedure Get_Options (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Options).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Options).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Options).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Options).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Options; procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Payload; procedure Generic_Get_Options (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Options).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Options).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Options).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Options).Last); begin Process_Options (Ctx.Buffer.all (First .. Last)); end Generic_Get_Options; procedure Generic_Get_Payload (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin Process_Payload (Ctx.Buffer.all (First .. Last)); end Generic_Get_Payload; @@ -972,9 +972,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.IPv4.Version_Base); @@ -1219,9 +1219,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Options); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Options); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Options); Ctx.Message_Last := ((Last + 7) / 8) * 8; @@ -1283,9 +1283,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Payload_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; @@ -1295,9 +1295,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Payload_Private (Ctx); Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); diff --git a/tests/spark/generated/rflx-ipv4-packet.ads b/tests/spark/generated/rflx-ipv4-packet.ads index b431b04db..27f9355f4 100644 --- a/tests/spark/generated/rflx-ipv4-packet.ads +++ b/tests/spark/generated/rflx-ipv4-packet.ads @@ -36,8 +36,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -92,8 +92,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -103,8 +103,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -138,8 +138,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -352,14 +352,14 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Options) and then Valid_Next (Ctx, F_Options) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Options)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Options)); procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) and then Present (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); generic with procedure Process_Options (Options : RFLX_Types.Bytes); @@ -1195,7 +1195,7 @@ is and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -1451,8 +1451,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-rflx_generic_types.ads b/tests/spark/generated/rflx-rflx_generic_types.ads index 46aa47990..f08a17e64 100644 --- a/tests/spark/generated/rflx-rflx_generic_types.ads +++ b/tests/spark/generated/rflx-rflx_generic_types.ads @@ -47,19 +47,19 @@ is subtype U64 is RFLX.RFLX_Arithmetic.U64; - function Byte_Index (Bit_Idx : Bit_Length) return Index is + function To_Index (Bit_Idx : Bit_Length) return Index is (Index (Length ((Bit_Idx - 1) / 8) + 1)); - function Byte_Length (Bit_Len : Bit_Length) return Length is + function To_Length (Bit_Len : Bit_Length) return Length is (Length ((Bit_Len + 7) / 8)); - function First_Bit_Index (Idx : Index) return Bit_Index is + function To_First_Bit_Index (Idx : Index) return Bit_Index is ((Bit_Length (Idx) - 1) * 8 + 1); - function Last_Bit_Index (Idx : Index) return Bit_Index is + function To_Last_Bit_Index (Idx : Index) return Bit_Index is ((Bit_Length (Idx) - 1) * 8 + 8); - function Last_Bit_Index (Idx : Length) return Bit_Length is + function To_Last_Bit_Index (Idx : Length) return Bit_Length is ((Bit_Length (Idx) - 1) * 8 + 8); type Offset is mod 8; diff --git a/tests/spark/generated/rflx-rflx_message_sequence.adb b/tests/spark/generated/rflx-rflx_message_sequence.adb index 509d8cc66..77c85838f 100644 --- a/tests/spark/generated/rflx-rflx_message_sequence.adb +++ b/tests/spark/generated/rflx-rflx_message_sequence.adb @@ -6,7 +6,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -30,7 +30,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Sequence_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Sequence_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; diff --git a/tests/spark/generated/rflx-rflx_message_sequence.ads b/tests/spark/generated/rflx-rflx_message_sequence.ads index 36e0a50c7..e18167a04 100644 --- a/tests/spark/generated/rflx-rflx_message_sequence.ads +++ b/tests/spark/generated/rflx-rflx_message_sequence.ads @@ -25,8 +25,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last <= RFLX_Types.Bit_Length'Last - 1 and First mod RFLX_Types.Byte'Size = 1 @@ -44,8 +44,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Sequence_Last (Ctx) = Ctx.First - 1), Depends => (Ctx => Buffer, Buffer => null); @@ -56,8 +56,8 @@ is and then Buffer /= null and then Buffer'First = Buffer_First and then Buffer'Last = Buffer_Last - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last <= RFLX_Types.Bit_Length'Last - 1 and then First mod RFLX_Types.Byte'Size = 1 @@ -193,8 +193,8 @@ private ((if Buffer /= null then (Buffer'First = Buffer_First and Buffer'Last = Buffer_Last)) - and RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last <= RFLX_Types.Bit_Length'Last - 1 and First - 1 <= Sequence_Last @@ -227,6 +227,6 @@ private then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Sequence_Last) - RFLX_Types.Byte_Index (Ctx.First)) + 1); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Sequence_Last) - RFLX_Types.To_Index (Ctx.First)) + 1); end RFLX.RFLX_Message_Sequence; diff --git a/tests/spark/generated/rflx-rflx_scalar_sequence.adb b/tests/spark/generated/rflx-rflx_scalar_sequence.adb index 0b44a21fe..1a82866d5 100644 --- a/tests/spark/generated/rflx-rflx_scalar_sequence.adb +++ b/tests/spark/generated/rflx-rflx_scalar_sequence.adb @@ -6,7 +6,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, Buffer'First, Buffer'Last, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -30,7 +30,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Sequence_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Sequence_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -38,8 +38,8 @@ is procedure Next (Ctx : in out Context) is Last_Bit : constant RFLX_Types.Bit_Index := Ctx.Sequence_Last + Element_Base_Type'Size; - Buffer_First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Sequence_Last + 1); - Buffer_Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Last_Bit); + Buffer_First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Sequence_Last + 1); + Buffer_Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Last_Bit); Offset : constant RFLX_Types.Offset := RFLX_Types.Offset ((8 - (Last_Bit mod 8)) mod 8); function Extract is new RFLX_Types.Extract (Element_Base_Type); begin @@ -70,8 +70,8 @@ is procedure Insert is new RFLX_Types.Insert (Element_Base_Type); begin Last_Bit := Ctx.Sequence_Last + Element_Base_Type'Size; - First := RFLX_Types.Byte_Index (Ctx.Sequence_Last + 1); - Last := RFLX_Types.Byte_Index (Last_Bit); + First := RFLX_Types.To_Index (Ctx.Sequence_Last + 1); + Last := RFLX_Types.To_Index (Last_Bit); Offset := RFLX_Types.Offset ((8 - (Last_Bit mod 8)) mod 8); if First >= Ctx.Buffer'First and Last <= Ctx.Buffer'Last and First <= Last then Insert (To_Base (Value), Ctx.Buffer.all (First .. Last), Offset); diff --git a/tests/spark/generated/rflx-rflx_scalar_sequence.ads b/tests/spark/generated/rflx-rflx_scalar_sequence.ads index 84b49a918..54024e920 100644 --- a/tests/spark/generated/rflx-rflx_scalar_sequence.ads +++ b/tests/spark/generated/rflx-rflx_scalar_sequence.ads @@ -21,8 +21,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First mod RFLX_Types.Byte'Size = 1 and First <= Last + 1 and Last <= RFLX_Types.Bit_Length'Last - 1; @@ -39,8 +39,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Sequence_Last (Ctx) = Ctx.First - 1), Depends => (Ctx => Buffer, Buffer => null); @@ -51,8 +51,8 @@ is and then Buffer /= null and then Buffer'First = Buffer_First and then Buffer'Last = Buffer_Last - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First mod RFLX_Types.Byte'Size = 1 and then First <= Last + 1 and then Last <= RFLX_Types.Bit_Length'Last - 1), @@ -176,8 +176,8 @@ private ((if Buffer /= null then (Buffer'First = Buffer_First and Buffer'Last = Buffer_Last)) - and RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First mod RFLX_Types.Byte'Size = 1 and First <= Last + 1 and Last <= RFLX_Types.Bit_Length'Last - 1 @@ -212,6 +212,6 @@ private then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Sequence_Last) - RFLX_Types.Byte_Index (Ctx.First)) + 1); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Sequence_Last) - RFLX_Types.To_Index (Ctx.First)) + 1); end RFLX.RFLX_Scalar_Sequence; diff --git a/tests/spark/generated/rflx-sequence-inner_message.adb b/tests/spark/generated/rflx-sequence-inner_message.adb index d87e8d4c1..2a2b613ea 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.adb +++ b/tests/spark/generated/rflx-sequence-inner_message.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -101,7 +101,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Payload => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -166,9 +166,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.Sequence.Length); @@ -231,15 +231,15 @@ is end Verify_Message; procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Payload; procedure Generic_Get_Payload (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin Process_Payload (Ctx.Buffer.all (First .. Last)); end Generic_Get_Payload; @@ -277,9 +277,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.Sequence.Length); @@ -357,9 +357,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Payload_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; @@ -369,9 +369,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Payload_Private (Ctx); Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); diff --git a/tests/spark/generated/rflx-sequence-inner_message.ads b/tests/spark/generated/rflx-sequence-inner_message.ads index e9017f378..5a85ce780 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.ads +++ b/tests/spark/generated/rflx-sequence-inner_message.ads @@ -32,8 +32,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -60,8 +60,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -71,8 +71,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -106,8 +106,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -264,7 +264,7 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); @@ -356,7 +356,7 @@ is and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -464,8 +464,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-sequence-message.adb b/tests/spark/generated/rflx-sequence-message.adb index 769c28445..d089fd517 100644 --- a/tests/spark/generated/rflx-sequence-message.adb +++ b/tests/spark/generated/rflx-sequence-message.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -113,7 +113,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Modular_Vector | F_Range_Vector | F_Enumeration_Vector | F_AV_Enumeration_Vector => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -223,9 +223,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.Sequence.Length); @@ -309,57 +309,57 @@ is end Verify_Message; procedure Get_Modular_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Modular_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Modular_Vector).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Modular_Vector; procedure Get_Range_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Range_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Range_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Range_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Range_Vector).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Range_Vector; procedure Get_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Enumeration_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Enumeration_Vector).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Enumeration_Vector; procedure Get_AV_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_AV_Enumeration_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_AV_Enumeration_Vector).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_AV_Enumeration_Vector; procedure Generic_Get_Modular_Vector (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Modular_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Modular_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Modular_Vector).Last); begin Process_Modular_Vector (Ctx.Buffer.all (First .. Last)); end Generic_Get_Modular_Vector; procedure Generic_Get_Range_Vector (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Range_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Range_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Range_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Range_Vector).Last); begin Process_Range_Vector (Ctx.Buffer.all (First .. Last)); end Generic_Get_Range_Vector; procedure Generic_Get_Enumeration_Vector (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Enumeration_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Enumeration_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Enumeration_Vector).Last); begin Process_Enumeration_Vector (Ctx.Buffer.all (First .. Last)); end Generic_Get_Enumeration_Vector; procedure Generic_Get_AV_Enumeration_Vector (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_AV_Enumeration_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_AV_Enumeration_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_AV_Enumeration_Vector).Last); begin Process_AV_Enumeration_Vector (Ctx.Buffer.all (First .. Last)); end Generic_Get_AV_Enumeration_Vector; @@ -397,9 +397,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.Sequence.Length); @@ -441,9 +441,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Modular_Vector); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Modular_Vector); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Modular_Vector); Ctx.Message_Last := ((Last + 7) / 8) * 8; @@ -456,9 +456,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Range_Vector); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Range_Vector); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Range_Vector); Ctx.Message_Last := ((Last + 7) / 8) * 8; @@ -471,9 +471,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Enumeration_Vector); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Enumeration_Vector); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Enumeration_Vector); Ctx.Message_Last := ((Last + 7) / 8) * 8; @@ -486,9 +486,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_AV_Enumeration_Vector); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_AV_Enumeration_Vector); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_AV_Enumeration_Vector); Ctx.Message_Last := Last; diff --git a/tests/spark/generated/rflx-sequence-message.ads b/tests/spark/generated/rflx-sequence-message.ads index 78d7c9c01..912768953 100644 --- a/tests/spark/generated/rflx-sequence-message.ads +++ b/tests/spark/generated/rflx-sequence-message.ads @@ -36,8 +36,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -64,8 +64,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -75,8 +75,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -110,8 +110,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -268,28 +268,28 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Modular_Vector) and then Valid_Next (Ctx, F_Modular_Vector) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Modular_Vector)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Modular_Vector)); procedure Get_Range_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) and then Present (Ctx, F_Range_Vector) and then Valid_Next (Ctx, F_Range_Vector) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Range_Vector)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Range_Vector)); procedure Get_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) and then Present (Ctx, F_Enumeration_Vector) and then Valid_Next (Ctx, F_Enumeration_Vector) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Enumeration_Vector)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Enumeration_Vector)); procedure Get_AV_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) and then Present (Ctx, F_AV_Enumeration_Vector) and then Valid_Next (Ctx, F_AV_Enumeration_Vector) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_AV_Enumeration_Vector)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_AV_Enumeration_Vector)); generic with procedure Process_Modular_Vector (Modular_Vector : RFLX_Types.Bytes); @@ -844,8 +844,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-sequence-messages_message.adb b/tests/spark/generated/rflx-sequence-messages_message.adb index 825433237..2d0cad919 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.adb +++ b/tests/spark/generated/rflx-sequence-messages_message.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -101,7 +101,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Messages => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -166,9 +166,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.Sequence.Length); @@ -231,15 +231,15 @@ is end Verify_Message; procedure Get_Messages (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Messages).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Messages).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Messages).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Messages).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Messages; procedure Generic_Get_Messages (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Messages).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Messages).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Messages).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Messages).Last); begin Process_Messages (Ctx.Buffer.all (First .. Last)); end Generic_Get_Messages; @@ -277,9 +277,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.Sequence.Length); @@ -321,9 +321,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Messages); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Messages); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Messages); Ctx.Message_Last := Last; diff --git a/tests/spark/generated/rflx-sequence-messages_message.ads b/tests/spark/generated/rflx-sequence-messages_message.ads index f4cf3fdce..3af906e90 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.ads +++ b/tests/spark/generated/rflx-sequence-messages_message.ads @@ -33,8 +33,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -61,8 +61,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -72,8 +72,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -107,8 +107,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -265,7 +265,7 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Messages) and then Valid_Next (Ctx, F_Messages) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Messages)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Messages)); generic with procedure Process_Messages (Messages : RFLX_Types.Bytes); @@ -480,8 +480,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb index d89192b5e..8ee0f6bb8 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -101,7 +101,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Vector => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -166,9 +166,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.Sequence.Enumeration_Base); @@ -231,15 +231,15 @@ is end Verify_Message; procedure Get_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Vector).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Vector; procedure Generic_Get_Vector (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Vector).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Vector).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Vector).Last); begin Process_Vector (Ctx.Buffer.all (First .. Last)); end Generic_Get_Vector; @@ -277,9 +277,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.Sequence.Enumeration_Base); @@ -321,9 +321,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Vector); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Vector); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Reset_Dependent_Fields (Ctx, F_Vector); Ctx.Message_Last := Last; diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads index cd8b1c58b..21c20810a 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads @@ -33,8 +33,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -61,8 +61,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -72,8 +72,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -107,8 +107,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -265,7 +265,7 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Vector) and then Valid_Next (Ctx, F_Vector) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Vector)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Vector)); generic with procedure Process_Vector (Vector : RFLX_Types.Bytes); @@ -480,8 +480,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-tlv-message.adb b/tests/spark/generated/rflx-tlv-message.adb index 8cd71487a..9f5eea8ce 100644 --- a/tests/spark/generated/rflx-tlv-message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -114,7 +114,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Value => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -191,9 +191,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.TLV.Tag_Base); @@ -265,15 +265,15 @@ is end Verify_Message; procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Value; procedure Generic_Get_Value (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Value).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).Last); begin Process_Value (Ctx.Buffer.all (First .. Last)); end Generic_Get_Value; @@ -311,9 +311,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.TLV.Tag_Base); @@ -406,9 +406,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Value_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; @@ -418,9 +418,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Value); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Value); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Value_Private (Ctx); Process_Value (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index b06ecbf87..74a1bb95c 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -32,8 +32,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -62,8 +62,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -73,8 +73,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -108,8 +108,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -270,7 +270,7 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Value) and then Valid_Next (Ctx, F_Value) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Value)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)); generic with procedure Process_Value (Value : RFLX_Types.Bytes); @@ -396,7 +396,7 @@ is and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Value)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Value) @@ -508,8 +508,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/generated/rflx-udp-datagram.adb b/tests/spark/generated/rflx-udp-datagram.adb index 710f56581..3fe9d792e 100644 --- a/tests/spark/generated/rflx-udp-datagram.adb +++ b/tests/spark/generated/rflx-udp-datagram.adb @@ -7,7 +7,7 @@ is procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is begin - Initialize (Ctx, Buffer, RFLX_Types.First_Bit_Index (Buffer'First), RFLX_Types.Last_Bit_Index (Buffer'Last)); + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); end Initialize; procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is @@ -38,7 +38,7 @@ is procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is begin if Buffer'Length > 0 then - Buffer := Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last)); + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); else Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); end if; @@ -46,14 +46,14 @@ is procedure Read (Ctx : Context) is begin - Read (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Message_Last))); + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); end Read; procedure Write (Ctx : in out Context) is Length : RFLX_Types.Length; begin - Write (Ctx.Buffer.all (RFLX_Types.Byte_Index (Ctx.First) .. RFLX_Types.Byte_Index (Ctx.Last)), Length); - Reset (Ctx, Ctx.First, RFLX_Types.Last_Bit_Index (RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.First)) + Length - 1)); + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); end Write; function Byte_Size (Ctx : Context) return RFLX_Types.Length is @@ -62,7 +62,7 @@ is then 0 else - RFLX_Types.Length (RFLX_Types.Byte_Index (Ctx.Message_Last) - RFLX_Types.Byte_Index (Ctx.First) + 1))); + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); pragma Warnings (Off, "precondition is always False"); @@ -113,7 +113,7 @@ is (Sufficient_Buffer_Length (Ctx, Fld) and then (case Fld is when F_Payload => - Ctx.Buffer.all (RFLX_Types.Byte_Index (Field_First (Ctx, Fld)) .. RFLX_Types.Byte_Index (Field_Last (Ctx, Fld))) = Data, + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, when others => False)); @@ -223,9 +223,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); function Extract is new RFLX_Types.Extract (RFLX.UDP.Port); @@ -311,15 +311,15 @@ is end Verify_Message; procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin Data := Ctx.Buffer.all (First .. Last); end Get_Payload; procedure Generic_Get_Payload (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).First); - Last : constant RFLX_Types.Index := RFLX_Types.Byte_Index (Ctx.Cursors (F_Payload).Last); + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin Process_Payload (Ctx.Buffer.all (First .. Last)); end Generic_Get_Payload; @@ -357,9 +357,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); function Offset return RFLX_Types.Offset is (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); procedure Insert is new RFLX_Types.Insert (RFLX.UDP.Port); @@ -481,9 +481,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Payload_Private (Ctx); Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; @@ -493,9 +493,9 @@ is First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Payload); Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Payload); function Buffer_First return RFLX_Types.Index is - (RFLX_Types.Byte_Index (First)); + (RFLX_Types.To_Index (First)); function Buffer_Last return RFLX_Types.Index is - (RFLX_Types.Byte_Index (Last)); + (RFLX_Types.To_Index (Last)); begin Initialize_Payload_Private (Ctx); Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); diff --git a/tests/spark/generated/rflx-udp-datagram.ads b/tests/spark/generated/rflx-udp-datagram.ads index a8e15a53c..b4cc6a461 100644 --- a/tests/spark/generated/rflx-udp-datagram.ads +++ b/tests/spark/generated/rflx-udp-datagram.ads @@ -32,8 +32,8 @@ is type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with Default_Initial_Condition => - RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 @@ -66,8 +66,8 @@ is and Buffer = null and Ctx.Buffer_First = Buffer'First'Old and Ctx.Buffer_Last = Buffer'Last'Old - and Ctx.First = RFLX_Types.First_Bit_Index (Ctx.Buffer_First) - and Ctx.Last = RFLX_Types.Last_Bit_Index (Ctx.Buffer_Last) + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) and Initialized (Ctx), Depends => (Ctx => Buffer, Buffer => null); @@ -77,8 +77,8 @@ is not Ctx'Constrained and then Buffer /= null and then Buffer'Length > 0 - and then RFLX_Types.Byte_Index (First) >= Buffer'First - and then RFLX_Types.Byte_Index (Last) <= Buffer'Last + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last and then First <= Last + 1 and then Last < RFLX_Types.Bit_Index'Last and then First mod RFLX_Types.Byte'Size = 1 @@ -112,8 +112,8 @@ is Pre => not Ctx'Constrained and Has_Buffer (Ctx) - and RFLX_Types.Byte_Index (First) >= Ctx.Buffer_First - and RFLX_Types.Byte_Index (Last) <= Ctx.Buffer_Last + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Length'Last and First mod RFLX_Types.Byte'Size = 1 @@ -282,7 +282,7 @@ is Has_Buffer (Ctx) and then Present (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload) - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)); + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); @@ -464,7 +464,7 @@ is and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.Byte_Length (Field_Size (Ctx, F_Payload)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -584,8 +584,8 @@ private then Buffer'First = Buffer_First and Buffer'Last = Buffer_Last) - and then (RFLX_Types.Byte_Index (First) >= Buffer_First - and RFLX_Types.Byte_Index (Last) <= Buffer_Last + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last and First <= Last + 1 and Last < RFLX_Types.Bit_Index'Last and First mod RFLX_Types.Byte'Size = 1 diff --git a/tests/spark/rflx-builtin_types_tests.adb b/tests/spark/rflx-builtin_types_tests.adb index dba847d68..17e60fcde 100644 --- a/tests/spark/rflx-builtin_types_tests.adb +++ b/tests/spark/rflx-builtin_types_tests.adb @@ -17,25 +17,29 @@ package body RFLX.Builtin_Types_Tests is is pragma Unreferenced (T); begin - Assert (RFLX_Types.First_Bit_Index (Index'First)'Img, " 1", "Invalid first bit index for Index'First"); - Assert (RFLX_Types.First_Bit_Index (Index'Last)'Img, " 17179869169", "Invalid first bit index for Index'Last"); + Assert (RFLX_Types.To_First_Bit_Index (Index'First)'Img, " 1", + "Invalid first bit index for Index'First"); + Assert (RFLX_Types.To_First_Bit_Index (Index'Last)'Img, " 17179869169", + "Invalid first bit index for Index'Last"); - Assert (RFLX_Types.Last_Bit_Index (Index'First)'Img, " 8", "Invalid last bit index for Index'First"); - Assert (RFLX_Types.Last_Bit_Index (Index'Last)'Img, " 17179869176", "Invalid last bit index for Index'Last"); + Assert (RFLX_Types.To_Last_Bit_Index (Index'First)'Img, " 8", + "Invalid last bit index for Index'First"); + Assert (RFLX_Types.To_Last_Bit_Index (Index'Last)'Img, " 17179869176", + "Invalid last bit index for Index'Last"); - Assert (RFLX_Types.Byte_Index (RFLX_Types.First_Bit_Index (Index'First))'Img, " 1", + Assert (RFLX_Types.To_Index (RFLX_Types.To_First_Bit_Index (Index'First))'Img, " 1", "Invalid conversion between byte index and first bit index"); - Assert (RFLX_Types.Byte_Index (RFLX_Types.First_Bit_Index (Index'Last))'Img, " 2147483647", + Assert (RFLX_Types.To_Index (RFLX_Types.To_First_Bit_Index (Index'Last))'Img, " 2147483647", "Invalid conversion between byte index and first bit index"); - Assert (RFLX_Types.Byte_Index (RFLX_Types.Last_Bit_Index (Index'First))'Img, " 1", + Assert (RFLX_Types.To_Index (RFLX_Types.To_Last_Bit_Index (Index'First))'Img, " 1", "Invalid conversion between byte index and last bit index"); - Assert (RFLX_Types.Byte_Index (RFLX_Types.Last_Bit_Index (Index'Last))'Img, " 2147483647", + Assert (RFLX_Types.To_Index (RFLX_Types.To_Last_Bit_Index (Index'Last))'Img, " 2147483647", "Invalid conversion between byte index and last bit index"); - Assert (RFLX_Types.Byte_Index (RFLX_Types.Bit_Index'First)'Img, " 1", + Assert (RFLX_Types.To_Index (RFLX_Types.Bit_Index'First)'Img, " 1", "Invalid byte index for Bit_Index'First"); - Assert (RFLX_Types.Byte_Index (RFLX_Types.Bit_Index'Last)'Img, " 2147483647", + Assert (RFLX_Types.To_Index (RFLX_Types.Bit_Index'Last)'Img, " 2147483647", "Invalid byte index for Bit_Index'Last"); end Test_Index_Calculations; @@ -44,11 +48,11 @@ package body RFLX.Builtin_Types_Tests is is pragma Unreferenced (T); begin - Assert (RFLX_Types.Byte_Length (0)'Img, " 0", "Invalid conversion of 0"); - Assert (RFLX_Types.Byte_Length (1)'Img, " 1", "Invalid conversion of 1"); - Assert (RFLX_Types.Byte_Length (8)'Img, " 1", "Invalid conversion of 8"); - Assert (RFLX_Types.Byte_Length (9)'Img, " 2", "Invalid conversion of 9"); - Assert (RFLX_Types.Byte_Length (16)'Img, " 2", "Invalid conversion of 16"); + Assert (RFLX_Types.To_Length (0)'Img, " 0", "Invalid conversion of 0"); + Assert (RFLX_Types.To_Length (1)'Img, " 1", "Invalid conversion of 1"); + Assert (RFLX_Types.To_Length (8)'Img, " 1", "Invalid conversion of 8"); + Assert (RFLX_Types.To_Length (9)'Img, " 2", "Invalid conversion of 9"); + Assert (RFLX_Types.To_Length (16)'Img, " 2", "Invalid conversion of 16"); end Test_Length_Calculations; generic diff --git a/tests/spark/rflx-derivation_tests.adb b/tests/spark/rflx-derivation_tests.adb index f0a60e1ae..885fa7aca 100644 --- a/tests/spark/rflx-derivation_tests.adb +++ b/tests/spark/rflx-derivation_tests.adb @@ -97,10 +97,10 @@ package body RFLX.Derivation_Tests is Derivation.Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); RFLX_Types.Free (Expected); diff --git a/tests/spark/rflx-enumeration_tests.adb b/tests/spark/rflx-enumeration_tests.adb index b9d302701..970f8db4e 100644 --- a/tests/spark/rflx-enumeration_tests.adb +++ b/tests/spark/rflx-enumeration_tests.adb @@ -97,11 +97,11 @@ package body RFLX.Enumeration_Tests is Enumeration.Message.Take_Buffer (Context, Buffer); Assert (Message_Last >= RFLX_Types.Bit_Index'First, "Invalid range for Message_Last"); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - - RFLX_Types.Byte_Index (Context.First) + 1), + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Message_Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Message_Last)), + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Message_Last)), Expected.all, "Invalid binary representation"); diff --git a/tests/spark/rflx-ethernet_tests.adb b/tests/spark/rflx-ethernet_tests.adb index 20871b209..2b505e617 100644 --- a/tests/spark/rflx-ethernet_tests.adb +++ b/tests/spark/rflx-ethernet_tests.adb @@ -335,10 +335,10 @@ package body RFLX.Ethernet_Tests is Ethernet.Frame.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); RFLX_Types.Free (Expected); @@ -371,10 +371,10 @@ package body RFLX.Ethernet_Tests is Message_Last := Ethernet.Frame.Message_Last (Context); Ethernet.Frame.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Message_Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Message_Last)), + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Message_Last)), Expected.all, "Invalid binary representation"); @@ -410,9 +410,9 @@ package body RFLX.Ethernet_Tests is Message_Last := Ethernet.Frame.Message_Last (Context); Ethernet.Frame.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Message_Last)), + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Message_Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Message_Last)), Expected.all, "Invalid binary representation"); @@ -461,10 +461,10 @@ package body RFLX.Ethernet_Tests is Message_Last := Ethernet.Frame.Message_Last (Context); Ethernet.Frame.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Message_Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Message_Last)), + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Message_Last)), Expected.all, "Invalid binary representation"); diff --git a/tests/spark/rflx-in_ethernet_tests.adb b/tests/spark/rflx-in_ethernet_tests.adb index 230ffae2a..c4b723c39 100644 --- a/tests/spark/rflx-in_ethernet_tests.adb +++ b/tests/spark/rflx-in_ethernet_tests.adb @@ -130,11 +130,11 @@ package body RFLX.In_Ethernet_Tests is pragma Warnings (On, """IPv4_Packet_Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""IPv4_Packet_Context"""); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - - RFLX_Types.Byte_Index (Ethernet_Frame_Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Message_Last) + - RFLX_Types.To_Index (Ethernet_Frame_Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Ethernet_Frame_Context.First) - .. RFLX_Types.Byte_Index (Message_Last)), Expected.all, + Assert (Buffer.all (RFLX_Types.To_Index (Ethernet_Frame_Context.First) + .. RFLX_Types.To_Index (Message_Last)), Expected.all, "Invalid binary representation"); end if; diff --git a/tests/spark/rflx-in_ipv4_tests.adb b/tests/spark/rflx-in_ipv4_tests.adb index e63d520de..d635bef94 100644 --- a/tests/spark/rflx-in_ipv4_tests.adb +++ b/tests/spark/rflx-in_ipv4_tests.adb @@ -192,12 +192,12 @@ package body RFLX.In_IPv4_Tests is pragma Warnings (On, "unused assignment to ""UDP_Datagram_Context"""); Assert (RFLX_Builtin_Types.Index'Image - (RFLX_Types.Byte_Index (Message_Last) - - RFLX_Types.Byte_Index (Ethernet_Frame_Context.First) + 1), + (RFLX_Types.To_Index (Message_Last) + - RFLX_Types.To_Index (Ethernet_Frame_Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Ethernet_Frame_Context.First) - .. RFLX_Types.Byte_Index (Ethernet_Frame_Context.Last)), Expected.all, + Assert (Buffer.all (RFLX_Types.To_Index (Ethernet_Frame_Context.First) + .. RFLX_Types.To_Index (Ethernet_Frame_Context.Last)), Expected.all, "Invalid binary representation"); end if; end if; diff --git a/tests/spark/rflx-ipv4_tests.adb b/tests/spark/rflx-ipv4_tests.adb index 5bac520c2..7ba6c8ca9 100644 --- a/tests/spark/rflx-ipv4_tests.adb +++ b/tests/spark/rflx-ipv4_tests.adb @@ -332,11 +332,11 @@ package body RFLX.IPv4_Tests is Message_Last := IPv4.Packet.Message_Last (Context); IPv4.Packet.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - - RFLX_Types.Byte_Index (Context.First) + 1), + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Message_Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Message_Last)), + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Message_Last)), Expected.all, "Invalid binary representation"); @@ -368,11 +368,11 @@ package body RFLX.IPv4_Tests is Message_Last := IPv4.Option.Message_Last (Context); IPv4.Option.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Message_Last) - - RFLX_Types.Byte_Index (Context.First) + 1), + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Message_Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Message_Last)), + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Message_Last)), Expected.all, "Invalid binary representation"); diff --git a/tests/spark/rflx-sequence_tests.adb b/tests/spark/rflx-sequence_tests.adb index e16ada18d..72f7a02cc 100644 --- a/tests/spark/rflx-sequence_tests.adb +++ b/tests/spark/rflx-sequence_tests.adb @@ -630,10 +630,10 @@ package body RFLX.Sequence_Tests is pragma Warnings (On, """Context"" is set by ""*"" but not used after the call"); pragma Warnings (On, "unused assignment to ""Context"""); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); RFLX_Types.Free (Expected); @@ -725,10 +725,10 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); -- WORKAROUND: Componolit/Workarounds#32 @@ -831,10 +831,10 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); -- WORKAROUND: Componolit/Workarounds#32 @@ -1098,9 +1098,9 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); @@ -1172,9 +1172,9 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); @@ -1215,9 +1215,9 @@ package body RFLX.Sequence_Tests is "Invalid Messages after setting field"); Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); @@ -1372,9 +1372,9 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); @@ -1404,9 +1404,9 @@ package body RFLX.Sequence_Tests is Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); diff --git a/tests/spark/rflx-tlv_tests.adb b/tests/spark/rflx-tlv_tests.adb index d1f46f66e..1d29dfa48 100644 --- a/tests/spark/rflx-tlv_tests.adb +++ b/tests/spark/rflx-tlv_tests.adb @@ -69,7 +69,7 @@ package body RFLX.TLV_Tests is (Context, Value (Value'First .. RFLX_Builtin_Types.Index (RFLX_Builtin_Types.Length (Value'First) - + RFLX_Types.Byte_Length (TLV.Message.Field_Size (Context, TLV.Message.F_Value)) - 1))); + + RFLX_Types.To_Length (TLV.Message.Field_Size (Context, TLV.Message.F_Value)) - 1))); Assert (Value, (1, 2, 3, 4), "Unexpected Value"); end if; end if; @@ -177,10 +177,10 @@ package body RFLX.TLV_Tests is TLV.Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); RFLX_Types.Free (Expected); @@ -207,10 +207,10 @@ package body RFLX.TLV_Tests is TLV.Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); RFLX_Types.Free (Expected); @@ -235,10 +235,10 @@ package body RFLX.TLV_Tests is TLV.Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); RFLX_Types.Free (Expected); @@ -262,10 +262,10 @@ package body RFLX.TLV_Tests is TLV.Message.Take_Buffer (Context, Buffer); - Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.Byte_Index (Context.Last) - - RFLX_Types.Byte_Index (Context.First) + 1), Expected'Length'Img, + Assert (RFLX_Builtin_Types.Index'Image (RFLX_Types.To_Index (Context.Last) + - RFLX_Types.To_Index (Context.First) + 1), Expected'Length'Img, "Invalid buffer length"); - Assert (Buffer.all (RFLX_Types.Byte_Index (Context.First) .. RFLX_Types.Byte_Index (Context.Last)), Expected.all, + Assert (Buffer.all (RFLX_Types.To_Index (Context.First) .. RFLX_Types.To_Index (Context.Last)), Expected.all, "Invalid binary representation"); RFLX_Types.Free (Expected); From 8d7a90182e5cb601c480a3db74f2b3e9b47310d9 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Wed, 5 May 2021 13:03:56 +0200 Subject: [PATCH 20/43] Add description of checksums to language reference Ref. #506 --- doc/Language-Reference.md | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/doc/Language-Reference.md b/doc/Language-Reference.md index 0583e72a8..58665c022 100644 --- a/doc/Language-Reference.md +++ b/doc/Language-Reference.md @@ -87,7 +87,7 @@ A message type is a collection components. Additional then clauses allow to defi *message_type* ::= __type__ *name* __is__ *message_definition* __;__ -*message_definition* ::= __message__ [ *null_component* ] *component* { *component* } __end message__ | __null message__ +*message_definition* ::= __message__ [ *null_component* ] *component* { *component* } __end message__ [ __with__ *message_aspects* ] | __null message__ *component* ::= *component_name* __:__ *component_type* [__with__ *aspects*] @@ -115,12 +115,30 @@ A message type is a collection components. Additional then clauses allow to defi *condition* ::= *boolean_expression* +*message_aspects* ::= *message_aspect* { __,__ *message_aspect* } + +*message_aspect* ::= *checksum_aspect* + +*checksum_aspect* ::= __Checksum__ __=>__ (*checksum_definition* { __,__ *checksum_definition* }) + +*checksum_definition* ::= *name* __=>__ (*checksum_element* { __,__ *checksum_element* } + +*checksum_element* ::= *name* | *name* __'Size__ | *field_range* + +*field_range* ::= *field_range_first* __..__ *field_range_last* + +*field_range_first* ::= *name* __'First__ | *name* __'Last + 1__ + +*field_range_last* ::= *name* __'Last | *name* __'First - 1__ + #### Static Semantics A message type specifies the message format of a protocol. Each component corresponds to one field in a message. A then clause of a component allows to define which field follows. If no then clause is given, it is assumed that always the next component of the message follows. If no further component follows, it is assumed that the message ends with this field. The end of a message can also be denoted explicitly by adding a then clause to __null__. Optionally a then clause can contain a condition under which the corresponding field follows and aspects which allow to define the size of the next field and the location of its first bit. These aspects can also be specified in the component. Each aspect can be specified either in the component or in all incoming then clauses, but not in both. The condition can refer to previous fields (including the component containing the then clause). A condition can also be added to a component. A component condition is equivalent to adding a condition to all incoming then clauses. If a component condition as well as a condition at an incoming then clause exists, both conditions are combined by a logical conjunction. If required, a null component can be used to specify the size of the first field in the message. An empty message can be represented by a null message. The size of a message must be a multiple of 8 bit. Opaque fields and sequence fields must be byte aligned. +A checksum aspect specifies which parts of a message is covered by a checksum. The definition of the checksum calculation is not part of the specification. Code based on the message specification must provide a function which is able to verify a checksum using the specified checksum elements. A checksum element can be a field value, a field size or a range of fields. The point where a checksum should be checked during parsing or generated during serialization must be defined for each checksum. For this purpose the `Valid_Checksum` attribute is added to a condition. All message parts on which the checksum depends have to be known at this point. + #### Example ```Ada RFLX declaration From 8f579b008e22dacc82a60bf32b0c68596537be72 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Wed, 5 May 2021 13:23:54 +0200 Subject: [PATCH 21/43] Add Boolean and Opaque to language reference Ref. #506 --- doc/Language-Reference.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/doc/Language-Reference.md b/doc/Language-Reference.md index 58665c022..a339c8b7e 100644 --- a/doc/Language-Reference.md +++ b/doc/Language-Reference.md @@ -79,6 +79,10 @@ type Ether_Type is with Size => 16, Always_Valid; ``` +### Boolean + +`Boolean` is a built-in enumeration type with the literals `False => 0` and `True => 1` with a size of 1 bit. + ## Message Type A message type is a collection components. Additional then clauses allow to define conditions and dependencies between components. @@ -135,7 +139,7 @@ A message type is a collection components. Additional then clauses allow to defi A message type specifies the message format of a protocol. Each component corresponds to one field in a message. A then clause of a component allows to define which field follows. If no then clause is given, it is assumed that always the next component of the message follows. If no further component follows, it is assumed that the message ends with this field. The end of a message can also be denoted explicitly by adding a then clause to __null__. Optionally a then clause can contain a condition under which the corresponding field follows and aspects which allow to define the size of the next field and the location of its first bit. These aspects can also be specified in the component. Each aspect can be specified either in the component or in all incoming then clauses, but not in both. The condition can refer to previous fields (including the component containing the then clause). A condition can also be added to a component. A component condition is equivalent to adding a condition to all incoming then clauses. If a component condition as well as a condition at an incoming then clause exists, both conditions are combined by a logical conjunction. If required, a null component can be used to specify the size of the first field in the message. An empty message can be represented by a null message. -The size of a message must be a multiple of 8 bit. Opaque fields and sequence fields must be byte aligned. +The field type `Opaque` represents an unconstrained sequence of bytes. The size of opaque fields must be always defined by a size aspect. Opaque fields and sequence fields must be byte aligned. The size of a message must be a multiple of 8 bit. A checksum aspect specifies which parts of a message is covered by a checksum. The definition of the checksum calculation is not part of the specification. Code based on the message specification must provide a function which is able to verify a checksum using the specified checksum elements. A checksum element can be a field value, a field size or a range of fields. The point where a checksum should be checked during parsing or generated during serialization must be defined for each checksum. For this purpose the `Valid_Checksum` attribute is added to a condition. All message parts on which the checksum depends have to be known at this point. From b9c8361c08f41395d0a7d4becb7ab74123f3c562 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Wed, 19 May 2021 17:02:29 +0200 Subject: [PATCH 22/43] Fix unsatisfiable preconditions for setter of opaque fields Ref. #665 --- rflx/ada.py | 8 +- rflx/generator/common.py | 48 ++++++++- rflx/generator/generator.py | 97 +++++++++++++------ rflx/generator/parser.py | 62 ++++++++---- rflx/generator/serializer.py | 59 +++++++---- rflx/model/message.py | 8 ++ .../generated/rflx-derivation-message.adb | 1 - .../generated/rflx-derivation-message.ads | 6 +- tests/spark/generated/rflx-ethernet-frame.adb | 1 - tests/spark/generated/rflx-ethernet-frame.ads | 6 +- .../generated/rflx-expression-message.adb | 11 ++- .../generated/rflx-expression-message.ads | 12 +-- tests/spark/generated/rflx-icmp-message.adb | 1 - tests/spark/generated/rflx-icmp-message.ads | 6 +- tests/spark/generated/rflx-ipv4-option.adb | 1 - tests/spark/generated/rflx-ipv4-option.ads | 6 +- tests/spark/generated/rflx-ipv4-packet.adb | 1 - tests/spark/generated/rflx-ipv4-packet.ads | 6 +- .../generated/rflx-sequence-inner_message.adb | 1 - .../generated/rflx-sequence-inner_message.ads | 6 +- tests/spark/generated/rflx-tlv-message.adb | 1 - tests/spark/generated/rflx-tlv-message.ads | 6 +- tests/spark/generated/rflx-udp-datagram.adb | 1 - tests/spark/generated/rflx-udp-datagram.ads | 6 +- 24 files changed, 240 insertions(+), 121 deletions(-) diff --git a/rflx/ada.py b/rflx/ada.py index 96a74c2fa..e8251c735 100644 --- a/rflx/ada.py +++ b/rflx/ada.py @@ -1243,9 +1243,13 @@ def type_definition(self) -> str: class Component(Base): - def __init__(self, identifier: StrID, type_identifier: StrID, default: Expr = None) -> None: + def __init__( + self, identifier: StrID, type_identifier: Union[StrID, Expr], default: Expr = None + ) -> None: self.identifier = ID(identifier) - self.type_identifier = ID(type_identifier) + self.type_identifier = ( + type_identifier if isinstance(type_identifier, Expr) else Variable(type_identifier) + ) self.default = default def __str__(self) -> str: diff --git a/rflx/generator/common.py b/rflx/generator/common.py index b932a3c7f..cfacae0da 100644 --- a/rflx/generator/common.py +++ b/rflx/generator/common.py @@ -34,7 +34,7 @@ def byte_aggregate(aggregate: expr.Aggregate) -> expr.Aggregate: ): field = model.Field(expression.right.name) aggregate = byte_aggregate(expression.left) - if field and aggregate: + if field and len(field.identifier.parts) == 1 and aggregate: assert field in message.fields if embedded: return expr.Equal( @@ -542,7 +542,16 @@ def sufficient_space_for_field_condition(field_name: ada.Name) -> ada.Expr: ) -def initialize_field_statements(field: model.Field) -> Sequence[ada.Statement]: +def initialize_field_statements( + message: model.Message, field: model.Field +) -> Sequence[ada.Statement]: + comparison_to_aggregate = is_compared_to_aggregate(field, message) + + if comparison_to_aggregate: + size = message.field_size(field) + assert isinstance(size, expr.Number) + aggregate_size = int(size) // 8 + return [ ada.CallStatement( "Reset_Dependent_Fields", @@ -557,7 +566,19 @@ def initialize_field_statements(field: model.Field) -> Sequence[ada.Statement]: ("Last", ada.Variable("Last")), ( "Value", - ada.NamedAggregate(("Fld", ada.Variable(field.affixed_name))), + ada.NamedAggregate( + ("Fld", ada.Variable(field.affixed_name)), + *( + [ + ( + f"{field.identifier}_Value", + ada.Aggregate(*([ada.Number(0)] * aggregate_size)), + ) + ] + if comparison_to_aggregate + else [] + ), + ), ), ( "Predecessor", @@ -604,7 +625,7 @@ def field_bit_location_declarations(field_name: ada.Name) -> Sequence[ada.Declar ] -def field_byte_location_declarations() -> Sequence[ada.Declaration]: +def field_byte_bounds_declarations() -> Sequence[ada.Declaration]: return [ ada.ExpressionFunctionDeclaration( ada.FunctionSpecification("Buffer_First", const.TYPES_INDEX), @@ -614,6 +635,12 @@ def field_byte_location_declarations() -> Sequence[ada.Declaration]: ada.FunctionSpecification("Buffer_Last", const.TYPES_INDEX), ada.Call(const.TYPES_TO_INDEX, [ada.Variable("Last")]), ), + ] + + +def field_byte_location_declarations() -> Sequence[ada.Declaration]: + return [ + *field_byte_bounds_declarations(), ada.ExpressionFunctionDeclaration( ada.FunctionSpecification("Offset", const.TYPES_OFFSET), ada.Call( @@ -674,6 +701,19 @@ def size_dependent_condition(message: model.Message) -> bool: ) +def is_compared_to_aggregate(field: model.Field, message: model.Message) -> bool: + return any( + r + for l in message.structure + for r in l.condition.findall(lambda x: isinstance(x, (expr.Equal, expr.NotEqual))) + if isinstance(r, (expr.Equal, expr.NotEqual)) + and any(r.findall(lambda x: isinstance(x, expr.Aggregate))) + and ( + r.left == expr.Variable(field.identifier) or r.right == expr.Variable(field.identifier) + ) + ) + + def create_sequence_instantiation( sequence_type: model.Sequence, prefix: str = "", diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 372e35677..7854c00ca 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -83,6 +83,7 @@ Selected, Size, SizeAspect, + Slice, SparkMode, Statement, String, @@ -325,7 +326,7 @@ def __create_message(self, message: Message) -> None: unit += self.__create_cursor_validation_functions() unit += self.__create_valid_context_function(message, composite_fields) unit += self.__create_context_type() - unit += self.__create_field_dependent_type(scalar_fields, composite_fields) + unit += self.__create_field_dependent_type(message) unit += self.__create_initialize_procedure() unit += self.__create_restricted_initialize_procedure(message) unit += self.__create_initialized_function(message) @@ -636,23 +637,47 @@ def __create_context_type() -> UnitPart: ], ) - def __create_field_dependent_type( - self, - scalar_fields: ty.Mapping[Field, Scalar], - composite_fields: ty.Sequence[Field], - ) -> UnitPart: - result_variants = [ - Variant( - [Variable(f.affixed_name) for f in [INITIAL, *composite_fields, FINAL]], - [NullComponent()], - ) - ] + [ - Variant( - [Variable(f.affixed_name)], - [Component(f"{f.name}_Value", self.__prefix * common.full_base_type_name(t))], - ) - for f, t in scalar_fields.items() - ] + def __create_field_dependent_type(self, message: Message) -> UnitPart: + null_fields = [] + variants = [] + + for f, t in message.types.items(): + if isinstance(t, Composite) and not common.is_compared_to_aggregate(f, message): + null_fields.append(f) + elif isinstance(t, Scalar): + variants.append( + Variant( + [Variable(f.affixed_name)], + [ + Component( + f"{f.name}_Value", self.__prefix * common.full_base_type_name(t) + ) + ], + ) + ) + elif isinstance(t, Composite): + size = message.field_size(f) + assert isinstance(size, expr.Number) + variants.append( + Variant( + [Variable(f.affixed_name)], + [ + Component( + f"{f.name}_Value", + Slice( + Variable(const.TYPES_BYTES), + First(const.TYPES_INDEX), + Add( + First(const.TYPES_INDEX), + expr.Sub(expr.Div(size, expr.Number(8)), expr.Number(1)) + .simplified() + .ada_expr(), + ), + ), + ) + ], + ) + ) return UnitPart( [ @@ -660,7 +685,16 @@ def __create_field_dependent_type( "Field_Dependent_Value", [], [Discriminant(["Fld"], "Virtual_Field", Variable(INITIAL.affixed_name))], - VariantPart("Fld", result_variants), + VariantPart( + "Fld", + [ + Variant( + [Variable(f.affixed_name) for f in (INITIAL, *null_fields, FINAL)], + [NullComponent()], + ), + *variants, + ], + ), ) ] ) @@ -1509,14 +1543,23 @@ def condition(field: Field, message: Message) -> Expr: **{expr.ValidChecksum(f): expr.TRUE for f in message.checksums}, } ) - if field not in (INITIAL, FINAL) and isinstance(message.types[field], Scalar): - c = c.substituted( - lambda x: expr.Call( - const.TYPES_U64, [expr.Variable(expr.ID("Val") * f"{field.name}_Value")] + if field not in (INITIAL, FINAL): + if isinstance(message.types[field], Scalar): + c = c.substituted( + lambda x: expr.Call( + const.TYPES_U64, [expr.Variable(expr.ID("Val") * f"{field.name}_Value")] + ) + if x == expr.Variable(field.name) + else x + ) + elif isinstance( + message.types[field], Composite + ) and common.is_compared_to_aggregate(field, message): + c = c.substituted( + lambda x: expr.Variable(expr.ID("Val") * f"{field.name}_Value") + if x == expr.Variable(field.name) + else x ) - if x == expr.Variable(field.name) - else x - ) return c.substituted(common.substitution(message)).simplified().ada_expr() parameters = [Parameter(["Ctx"], "Context"), Parameter(["Val"], "Field_Dependent_Value")] @@ -2313,7 +2356,7 @@ def specification(field: Field) -> ProcedureSpecification: "Invalid", [Variable("Ctx"), Variable(f.affixed_name)], ), - common.initialize_field_statements(f), + common.initialize_field_statements(message, f), ) ] ), diff --git a/rflx/generator/parser.py b/rflx/generator/parser.py index 9dcea6f18..13daf5557 100644 --- a/rflx/generator/parser.py +++ b/rflx/generator/parser.py @@ -14,6 +14,7 @@ Call, CallStatement, Case, + CaseStatement, Div, Equal, Expr, @@ -86,25 +87,44 @@ def create_internal_functions( ) -> UnitPart: def result(field: Field, message: Message) -> NamedAggregate: aggregate: List[Tuple[str, Expr]] = [("Fld", Variable(field.affixed_name))] - if field in message.fields and isinstance(message.types[field], Scalar): - aggregate.append( - ( - f"{field.name}_Value", - Call( - "Extract", - [ - Slice( - Variable("Ctx.Buffer.all"), - Variable("Buffer_First"), - Variable("Buffer_Last"), - ), - Variable("Offset"), - ], - ), + if field in message.fields: + if isinstance(message.types[field], Scalar): + aggregate.append( + ( + f"{field.name}_Value", + Call( + "Extract", + [ + Slice( + Variable("Ctx.Buffer.all"), + Variable("Buffer_First"), + Variable("Buffer_Last"), + ), + Variable("Offset"), + ], + ), + ) + ) + elif isinstance( + message.types[field], Composite + ) and common.is_compared_to_aggregate(field, message): + aggregate.append( + ( + f"{field.name}_Value", + Slice( + Variable("Ctx.Buffer.all"), + Variable("Buffer_First"), + Variable("Buffer_Last"), + ), + ) ) - ) return NamedAggregate(*aggregate) + comparison_to_aggregate = any( + (isinstance(t, Composite) and common.is_compared_to_aggregate(f, message)) + for f, t in message.types.items() + ) + return UnitPart( [], [ @@ -137,14 +157,18 @@ def result(field: Field, message: Message) -> NamedAggregate: ), [ *common.field_bit_location_declarations(Variable("Fld")), - *common.field_byte_location_declarations(), + *( + common.field_byte_location_declarations() + if scalar_fields + else common.field_byte_bounds_declarations() + ), *unique( self.extract_function(common.full_base_type_name(t)) - for t in message.types.values() + for f, t in message.types.items() if isinstance(t, Scalar) ), ] - if scalar_fields + if scalar_fields or comparison_to_aggregate else [], [ ReturnStatement( diff --git a/rflx/generator/serializer.py b/rflx/generator/serializer.py index 79fce48f1..dba2e0bac 100644 --- a/rflx/generator/serializer.py +++ b/rflx/generator/serializer.py @@ -1,3 +1,5 @@ +# pylint: disable = too-many-lines + from typing import Mapping, Sequence from rflx.ada import ( @@ -409,7 +411,8 @@ def specification(field: Field) -> ProcedureSpecification: Precondition( AndThen( *self.setter_preconditions(f), - *self.composite_setter_preconditions(message, f), + *self.composite_setter_field_condition_precondition(message, f), + *self.composite_setter_preconditions(f), Equal( Call( "Field_Size", @@ -484,7 +487,8 @@ def specification(field: Field) -> ProcedureSpecification: Precondition( AndThen( *self.setter_preconditions(f), - *self.composite_setter_preconditions(message, f), + *self.composite_setter_field_condition_precondition(message, f), + *self.composite_setter_preconditions(f), Equal( Call( "Field_Size", @@ -572,7 +576,7 @@ def specification(field: Field) -> ProcedureSpecification: Precondition( AndThen( *self.setter_preconditions(f), - *self.composite_setter_preconditions(message, f), + *self.composite_setter_preconditions(f), Equal( Length("Data"), Call( @@ -588,6 +592,7 @@ def specification(field: Field) -> ProcedureSpecification: ], ), ), + *self.composite_setter_field_condition_precondition(message, f), ) ), Postcondition( @@ -656,7 +661,7 @@ def formal_parameters(field: Field) -> Sequence[FormalSubprogramDeclaration]: Precondition( AndThen( *self.setter_preconditions(f), - *self.composite_setter_preconditions(message, f), + *self.composite_setter_preconditions(f), Call( "Valid_Length", [ @@ -736,7 +741,7 @@ def specification_public(field: Field) -> ProcedureSpecification: Precondition( AndThen( *self.setter_preconditions(f), - *self.composite_setter_preconditions(message, f), + *self.composite_setter_preconditions(f), ) ), Postcondition( @@ -758,12 +763,12 @@ def specification_public(field: Field) -> ProcedureSpecification: SubprogramBody( specification_private(f), common.field_bit_location_declarations(Variable(f.affixed_name)), - common.initialize_field_statements(f), + common.initialize_field_statements(message, f), [ Precondition( AndThen( *self.setter_preconditions(f), - *self.composite_setter_preconditions(message, f), + *self.composite_setter_preconditions(f), ) ), Postcondition( @@ -869,25 +874,39 @@ def composite_setter_postconditions(field: Field) -> Sequence[Expr]: ] @staticmethod - def composite_setter_preconditions(message: Message, field: Field) -> Sequence[Expr]: + def composite_setter_field_condition_precondition( + message: Message, field: Field + ) -> Sequence[Expr]: return [ Call( "Field_Condition", [ Variable("Ctx"), - NamedAggregate(("Fld", Variable(field.affixed_name))), - ] - + ( - [ - Call( - "Field_Size", - [Variable("Ctx"), Variable(field.affixed_name)], - ) - ] - if common.size_dependent_condition(message) - else [] - ), + NamedAggregate( + ("Fld", Variable(field.affixed_name)), + *( + [(f"{field.identifier}_Value", Variable("Data"))] + if common.is_compared_to_aggregate(field, message) + else [] + ), + ), + *( + [ + Call( + "Field_Size", + [Variable("Ctx"), Variable(field.affixed_name)], + ) + ] + if common.size_dependent_condition(message) + else [] + ), + ], ), + ] + + @staticmethod + def composite_setter_preconditions(field: Field) -> Sequence[Expr]: + return [ common.sufficient_space_for_field_condition(Variable(field.affixed_name)), Equal( Mod( diff --git a/rflx/model/message.py b/rflx/model/message.py index 391b168f4..d0f2d193f 100644 --- a/rflx/model/message.py +++ b/rflx/model/message.py @@ -280,15 +280,23 @@ def field_condition(self, field: Field) -> expr.Expr: return self._state.field_condition[field] def field_size(self, field: Field) -> expr.Expr: + """Return field size if field size is fixed and `UNDEFINED` otherwise.""" if field == FINAL: return expr.Number(0) assert field in self.fields, f'field "{field.name}" not found' field_type = self.types[field] + if isinstance(field_type, mty.Scalar): return field_type.size + if isinstance(field_type, mty.Composite): + sizes = [l.size.simplified() for l in self.incoming(field)] + size = sizes[0] + if isinstance(size, expr.Number) and all(size == s for s in sizes): + return size + return expr.UNDEFINED def paths(self, field: Field) -> Set[Tuple[Link, ...]]: diff --git a/tests/spark/generated/rflx-derivation-message.adb b/tests/spark/generated/rflx-derivation-message.adb index 9c2e7eff1..07ea6d542 100644 --- a/tests/spark/generated/rflx-derivation-message.adb +++ b/tests/spark/generated/rflx-derivation-message.adb @@ -370,7 +370,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-derivation-message.ads b/tests/spark/generated/rflx-derivation-message.ads index c94a56f7a..393046c07 100644 --- a/tests/spark/generated/rflx-derivation-message.ads +++ b/tests/spark/generated/rflx-derivation-message.ads @@ -367,7 +367,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 @@ -393,12 +392,12 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)) + and then Field_Condition (Ctx, (Fld => F_Value)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Value) @@ -423,7 +422,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-ethernet-frame.adb b/tests/spark/generated/rflx-ethernet-frame.adb index 7a68aeac3..c41f505f9 100644 --- a/tests/spark/generated/rflx-ethernet-frame.adb +++ b/tests/spark/generated/rflx-ethernet-frame.adb @@ -553,7 +553,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-ethernet-frame.ads b/tests/spark/generated/rflx-ethernet-frame.ads index 89fe4c04e..2fa31e3db 100644 --- a/tests/spark/generated/rflx-ethernet-frame.ads +++ b/tests/spark/generated/rflx-ethernet-frame.ads @@ -497,7 +497,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 @@ -525,12 +524,12 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)) + and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -557,7 +556,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload), Field_Size (Ctx, F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-expression-message.adb b/tests/spark/generated/rflx-expression-message.adb index f58f369b6..e2ac09b7f 100644 --- a/tests/spark/generated/rflx-expression-message.adb +++ b/tests/spark/generated/rflx-expression-message.adb @@ -140,10 +140,16 @@ is Post => Get_Field_Value'Result.Fld = Fld is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.To_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.To_Index (Last)); begin return ((case Fld is when F_Payload => - (Fld => F_Payload))); + (Fld => F_Payload, Payload_Value => Ctx.Buffer.all (Buffer_First .. Buffer_Last)))); end Get_Field_Value; procedure Verify (Ctx : in out Context; Fld : Field) is @@ -196,7 +202,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 @@ -217,7 +222,7 @@ is begin Reset_Dependent_Fields (Ctx, F_Payload); Ctx.Message_Last := Last; - Ctx.Cursors (F_Payload) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Payload), Predecessor => Ctx.Cursors (F_Payload).Predecessor); + Ctx.Cursors (F_Payload) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Payload, Payload_Value => (0, 0)), Predecessor => Ctx.Cursors (F_Payload).Predecessor); Ctx.Cursors (Successor (Ctx, F_Payload)) := (State => S_Invalid, Predecessor => F_Payload); end Initialize_Payload_Private; diff --git a/tests/spark/generated/rflx-expression-message.ads b/tests/spark/generated/rflx-expression-message.ads index 36e001327..ced402483 100644 --- a/tests/spark/generated/rflx-expression-message.ads +++ b/tests/spark/generated/rflx-expression-message.ads @@ -42,8 +42,10 @@ is type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is record case Fld is - when F_Initial | F_Payload | F_Final => + when F_Initial | F_Final => null; + when F_Payload => + Payload_Value : RFLX_Types.Bytes (RFLX_Types.Index'First .. RFLX_Types.Index'First + 1); end case; end record; @@ -272,7 +274,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 @@ -296,12 +297,12 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)) + and then Field_Condition (Ctx, (Fld => F_Payload, Payload_Value => Data)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -324,7 +325,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 @@ -471,7 +471,7 @@ private when F_Initial => True, when F_Payload => - Equal (Ctx, F_Payload, (RFLX_Types.Byte'Val (1), RFLX_Types.Byte'Val (2))), + Val.Payload_Value = (1, 2), when F_Final => False)); diff --git a/tests/spark/generated/rflx-icmp-message.adb b/tests/spark/generated/rflx-icmp-message.adb index f427c0658..a106aa213 100644 --- a/tests/spark/generated/rflx-icmp-message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -1188,7 +1188,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Data) - and then Field_Condition (Ctx, (Fld => F_Data)) and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index 2758c3b18..970fe45ee 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -1028,7 +1028,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Data) - and then Field_Condition (Ctx, (Fld => F_Data)) and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 @@ -1056,12 +1055,12 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Data) - and then Field_Condition (Ctx, (Fld => F_Data)) and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)) + and then Field_Condition (Ctx, (Fld => F_Data)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Data) @@ -1088,7 +1087,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Data) - and then Field_Condition (Ctx, (Fld => F_Data)) and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-ipv4-option.adb b/tests/spark/generated/rflx-ipv4-option.adb index 89f4e2cee..fe9b22a75 100644 --- a/tests/spark/generated/rflx-ipv4-option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -472,7 +472,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Option_Data) - and then Field_Condition (Ctx, (Fld => F_Option_Data)) and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) and then Field_First (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index 12179b563..ba3efd9aa 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -455,7 +455,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Option_Data) - and then Field_Condition (Ctx, (Fld => F_Option_Data)) and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) and then Field_First (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 @@ -483,12 +482,12 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Option_Data) - and then Field_Condition (Ctx, (Fld => F_Option_Data)) and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) and then Field_First (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Option_Data)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Option_Data)) + and then Field_Condition (Ctx, (Fld => F_Option_Data)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Option_Data) @@ -515,7 +514,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Option_Data) - and then Field_Condition (Ctx, (Fld => F_Option_Data)) and then Available_Space (Ctx, F_Option_Data) >= Field_Size (Ctx, F_Option_Data) and then Field_First (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Option_Data) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-ipv4-packet.adb b/tests/spark/generated/rflx-ipv4-packet.adb index 77575aa00..cc7014c77 100644 --- a/tests/spark/generated/rflx-ipv4-packet.adb +++ b/tests/spark/generated/rflx-ipv4-packet.adb @@ -1235,7 +1235,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-ipv4-packet.ads b/tests/spark/generated/rflx-ipv4-packet.ads index 27f9355f4..64074ceb6 100644 --- a/tests/spark/generated/rflx-ipv4-packet.ads +++ b/tests/spark/generated/rflx-ipv4-packet.ads @@ -1152,7 +1152,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 @@ -1190,12 +1189,12 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)) + and then Field_Condition (Ctx, (Fld => F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -1232,7 +1231,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-sequence-inner_message.adb b/tests/spark/generated/rflx-sequence-inner_message.adb index 2a2b613ea..489d41eae 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.adb +++ b/tests/spark/generated/rflx-sequence-inner_message.adb @@ -322,7 +322,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-sequence-inner_message.ads b/tests/spark/generated/rflx-sequence-inner_message.ads index 5a85ce780..420aa4174 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.ads +++ b/tests/spark/generated/rflx-sequence-inner_message.ads @@ -326,7 +326,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 @@ -351,12 +350,12 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)) + and then Field_Condition (Ctx, (Fld => F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -380,7 +379,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-tlv-message.adb b/tests/spark/generated/rflx-tlv-message.adb index 9f5eea8ce..f78587b34 100644 --- a/tests/spark/generated/rflx-tlv-message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -370,7 +370,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index 74a1bb95c..deea9dd9f 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -365,7 +365,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 @@ -391,12 +390,12 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)) + and then Field_Condition (Ctx, (Fld => F_Value)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Value) @@ -421,7 +420,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Value) - and then Field_Condition (Ctx, (Fld => F_Value)) and then Available_Space (Ctx, F_Value) >= Field_Size (Ctx, F_Value) and then Field_First (Ctx, F_Value) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Value) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-udp-datagram.adb b/tests/spark/generated/rflx-udp-datagram.adb index 3fe9d792e..c57eadcb3 100644 --- a/tests/spark/generated/rflx-udp-datagram.adb +++ b/tests/spark/generated/rflx-udp-datagram.adb @@ -443,7 +443,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 diff --git a/tests/spark/generated/rflx-udp-datagram.ads b/tests/spark/generated/rflx-udp-datagram.ads index b4cc6a461..cb0beb36e 100644 --- a/tests/spark/generated/rflx-udp-datagram.ads +++ b/tests/spark/generated/rflx-udp-datagram.ads @@ -431,7 +431,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 @@ -459,12 +458,12 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)), + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)) + and then Field_Condition (Ctx, (Fld => F_Payload)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) @@ -491,7 +490,6 @@ is not Ctx'Constrained and then Has_Buffer (Ctx) and then Valid_Next (Ctx, F_Payload) - and then Field_Condition (Ctx, (Fld => F_Payload)) and then Available_Space (Ctx, F_Payload) >= Field_Size (Ctx, F_Payload) and then Field_First (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 1 and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 From 9df6a836050ed00beadad1776b037c0f9903665b Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 21 May 2021 18:33:33 +0200 Subject: [PATCH 23/43] Prevent missing-return warning after fail --- rflx/error.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/rflx/error.py b/rflx/error.py index 304696280..8f713beea 100644 --- a/rflx/error.py +++ b/rflx/error.py @@ -2,7 +2,7 @@ from collections import deque from enum import Enum, auto from pathlib import Path -from typing import Deque, List, Optional, Tuple, TypeVar, Union +from typing import Deque, List, NoReturn, Optional, Tuple, TypeVar, Union from rflx.common import Base, verbose_repr @@ -170,7 +170,8 @@ def __init__(self) -> None: # pylint: disable = useless-super-delegation class FatalError(BaseError): - """Error indicating a bug. + """ + Error indicating a bug. This exception should never be caught outside of RecordFlux. """ @@ -184,7 +185,7 @@ def fail( subsystem: Subsystem, severity: Severity = Severity.ERROR, location: Location = None, -) -> None: +) -> NoReturn: _fail(RecordFluxError(), message, subsystem, severity, location) @@ -193,7 +194,7 @@ def fatal_fail( subsystem: Subsystem, severity: Severity = Severity.ERROR, location: Location = None, -) -> None: +) -> NoReturn: _fail(FatalError(), message, subsystem, severity, location) @@ -203,9 +204,10 @@ def _fail( subsystem: Subsystem, severity: Severity = Severity.ERROR, location: Location = None, -) -> None: +) -> NoReturn: error.append(message, subsystem, severity, location) error.propagate() + assert False def warn( From f8f9b70a7d7cfe52aff93b2e5d8b821a3d14e9a7 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Thu, 6 May 2021 20:12:16 +0200 Subject: [PATCH 24/43] Add generation of record types for fixed-size messages Ref. #292, #650 --- .github/workflows/tests.yml | 1 + rflx/ada.py | 20 +- rflx/generator/common.py | 34 + rflx/generator/generator.py | 239 ++++++- rflx/generator/parser.py | 57 +- rflx/generator/serializer.py | 27 +- rflx/model/message.py | 38 +- tests/data/models.py | 19 + .../specification_model_generator_test.py | 23 + .../generated/rflx-enumeration-message.adb | 13 + .../generated/rflx-enumeration-message.ads | 19 + .../generated/rflx-expression-message.adb | 13 + .../generated/rflx-expression-message.ads | 19 + .../rflx-fixed_size-simple_message.adb | 384 +++++++++++ .../rflx-fixed_size-simple_message.ads | 650 ++++++++++++++++++ tests/spark/generated/rflx-fixed_size.ads | 8 + tests/spark/generated/rflx-universal.ads | 66 ++ tests/spark/rflx-fixed_size_tests.adb | 88 +++ tests/spark/rflx-fixed_size_tests.ads | 15 + tests/spark/test.adb | 2 + tests/spark/test_fixed_size.adb | 31 + tests/unit/model/message_test.py | 21 +- tools/generate_spark_test_code.py | 2 + tools/generate_spark_test_runner.py | 1 + 24 files changed, 1697 insertions(+), 93 deletions(-) create mode 100644 tests/spark/generated/rflx-fixed_size-simple_message.adb create mode 100644 tests/spark/generated/rflx-fixed_size-simple_message.ads create mode 100644 tests/spark/generated/rflx-fixed_size.ads create mode 100644 tests/spark/generated/rflx-universal.ads create mode 100644 tests/spark/rflx-fixed_size_tests.adb create mode 100644 tests/spark/rflx-fixed_size_tests.ads create mode 100644 tests/spark/test_fixed_size.adb diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 5f6feeca0..6d9becf2a 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -291,6 +291,7 @@ jobs: - "sequence" - "derivation" - "expression" + - "fixed_size" steps: - uses: actions/checkout@v2 if: ${{ needs.skip_check_spark.outputs.should_skip != 'true' }} diff --git a/rflx/ada.py b/rflx/ada.py index e8251c735..31c7ce050 100644 --- a/rflx/ada.py +++ b/rflx/ada.py @@ -1736,16 +1736,24 @@ def name(self) -> str: @dataclass class UnitPart: - specification: Sequence[Declaration] = dataclass_field(default_factory=list) - body: Sequence[Declaration] = dataclass_field(default_factory=list) - private: Sequence[Declaration] = dataclass_field(default_factory=list) + specification: List[Declaration] = dataclass_field(default_factory=list) + body: List[Declaration] = dataclass_field(default_factory=list) + private: List[Declaration] = dataclass_field(default_factory=list) + + def __iadd__(self, other: object) -> "UnitPart": + if isinstance(other, UnitPart): + self.specification += other.specification + self.body += other.body + self.private += other.private + return self + return NotImplemented @dataclass class SubprogramUnitPart: - specification: Sequence[Subprogram] = dataclass_field(default_factory=list) - body: Sequence[Subprogram] = dataclass_field(default_factory=list) - private: Sequence[Subprogram] = dataclass_field(default_factory=list) + specification: List[Subprogram] = dataclass_field(default_factory=list) + body: List[Subprogram] = dataclass_field(default_factory=list) + private: List[Subprogram] = dataclass_field(default_factory=list) def generic_formal_part(parameters: Sequence[FormalDeclaration] = None) -> str: diff --git a/rflx/generator/common.py b/rflx/generator/common.py index cfacae0da..6eb72d877 100644 --- a/rflx/generator/common.py +++ b/rflx/generator/common.py @@ -21,6 +21,9 @@ def byte_aggregate(aggregate: expr.Aggregate) -> expr.Aggregate: if isinstance(expression, expr.Name) and expression in facts: return facts[expression] + if isinstance(expression, expr.String): + return expr.Aggregate(*expression.elements) + if isinstance(expression, (expr.Equal, expr.NotEqual)): field = None aggregate = None @@ -656,6 +659,37 @@ def field_byte_location_declarations() -> Sequence[ada.Declaration]: ] +def field_condition_call(message: model.Message, field: model.Field, value: ada.Expr) -> ada.Expr: + return ada.Call( + "Field_Condition", + [ + ada.Variable("Ctx"), + ada.NamedAggregate( + ("Fld", ada.Variable(field.affixed_name)), + *( + [(f"{field.identifier}_Value", value)] + if isinstance(message.types[field], model.Scalar) + or is_compared_to_aggregate(field, message) + else [] + ), + ), + *( + [ + ada.Call( + "Field_Size", + [ + ada.Variable("Ctx"), + ada.Variable(field.affixed_name), + ], + ) + ] + if size_dependent_condition(message) + else [] + ), + ], + ) + + def prefixed_type_identifier(type_identifier: ada.ID, prefix: str) -> ada.ID: if model.is_builtin_type(type_identifier): return type_identifier diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 7854c00ca..30da061e7 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -92,7 +92,6 @@ SubprogramBody, SubprogramDeclaration, SubprogramUnitPart, - TypeDeclaration, Unit, UnitPart, UsePackageClause, @@ -117,6 +116,7 @@ Message, Model, ModularInteger, + Opaque, RangeInteger, Refinement, Scalar, @@ -383,6 +383,7 @@ def __create_message(self, message: Message) -> None: unit += self.__create_update_procedures(message, sequence_fields) unit += self.__create_cursor_function() unit += self.__create_cursors_function() + unit += self.__create_structure(message) @staticmethod def __create_use_type_clause(composite_fields: ty.Sequence[Field]) -> UnitPart: @@ -655,9 +656,10 @@ def __create_field_dependent_type(self, message: Message) -> UnitPart: ], ) ) - elif isinstance(t, Composite): - size = message.field_size(f) - assert isinstance(size, expr.Number) + else: + assert isinstance(t, Composite) + length = expr.Div(message.field_size(f), expr.Number(8)).simplified() + assert isinstance(length, expr.Number) variants.append( Variant( [Variable(f.affixed_name)], @@ -669,9 +671,7 @@ def __create_field_dependent_type(self, message: Message) -> UnitPart: First(const.TYPES_INDEX), Add( First(const.TYPES_INDEX), - expr.Sub(expr.Div(size, expr.Number(8)), expr.Number(1)) - .simplified() - .ada_expr(), + expr.Sub(length, expr.Number(1)).simplified().ada_expr(), ), ), ) @@ -2703,6 +2703,223 @@ def __create_cursors_function() -> UnitPart: [ExpressionFunctionDeclaration(specification, Variable("Ctx.Cursors"))], ) + def __create_structure(self, message: Message) -> UnitPart: + unit = UnitPart() + unit += self.__create_structure_type(message) + unit += self.__create_to_structure_procedure(message) + unit += self.__create_to_context_procedure(message) + return unit + + def __create_structure_type(self, message: Message) -> UnitPart: + if not message.has_fixed_size: + return UnitPart() + + assert len(message.paths(FINAL)) == 1 + + components = [] + + for path in message.paths(FINAL): + for link in path: + if link.target == FINAL: + continue + + type_ = message.types[link.target] + + component_type: ty.Union[ID, Expr] + + if isinstance(type_, Scalar): + component_type = ID(self.__prefix * type_.identifier) + elif isinstance(type_, Opaque): + component_type = Indexed( + Variable(const.TYPES_BYTES), + ValueRange( + First(const.TYPES_INDEX), + Add( + First(const.TYPES_INDEX), + expr.Sub(expr.Div(link.size, expr.Number(8)), expr.Number(1)) + .simplified() + .ada_expr(), + ), + ), + ) + else: + return UnitPart() + + components.append(Component(ID(link.target.identifier), component_type)) + + return UnitPart( + [ + RecordType("Structure", components), + ] + ) + + @staticmethod + def __create_to_structure_procedure(message: Message) -> UnitPart: + if not message.has_fixed_size: + return UnitPart() + + assert len(message.paths(FINAL)) == 1 + + statements: ty.List[Statement] = [] + + for path in message.paths(FINAL): + for link in path: + if link.target == FINAL: + continue + + type_ = message.types[link.target] + + if isinstance(type_, Scalar): + statements.append( + Assignment( + Variable(f"Struct.{link.target.identifier}"), + Call(f"Get_{link.target.identifier}", [Variable("Ctx")]), + ) + ) + elif isinstance(type_, Opaque): + statements.append( + CallStatement( + f"Get_{link.target.identifier}", + [Variable("Ctx"), Variable(f"Struct.{link.target.identifier}")], + ) + ) + else: + return UnitPart() + + specification = ProcedureSpecification( + "To_Structure", + [Parameter(["Ctx"], "Context"), OutParameter(["Struct"], "Structure")], + ) + + return UnitPart( + [ + SubprogramDeclaration( + specification, + [ + Precondition( + AndThen( + Call("Has_Buffer", [Variable("Ctx")]), + Call("Structural_Valid_Message", [Variable("Ctx")]), + ) + ), + ], + ) + ], + [ + SubprogramBody(specification, [], statements), + ], + ) + + @staticmethod + def __create_to_context_procedure(message: Message) -> UnitPart: + if not message.has_fixed_size: + return UnitPart() + + assert len(message.paths(FINAL)) == 1 + + body: ty.List[Statement] = [CallStatement("Reset", [Variable("Ctx")])] + statements = body + + for path in message.paths(FINAL): + for link in path: + if link.target == FINAL: + continue + + type_ = message.types[link.target] + + if isinstance(type_, (Scalar, Opaque)): + if isinstance(type_, Enumeration) and type_.always_valid: + dependent_statements: ty.List[Statement] = [ + CallStatement( + f"Set_{link.target.identifier}", + [ + Variable("Ctx"), + Variable(f"Struct.{link.target.identifier}.Enum"), + ], + ) + ] + statements.append( + IfStatement( + [ + ( + Variable(f"Struct.{link.target.identifier}.Known"), + dependent_statements, + ) + ] + ) + ) + statements = dependent_statements + else: + set_field = CallStatement( + f"Set_{link.target.identifier}", + [Variable("Ctx"), Variable(f"Struct.{link.target.identifier}")], + ) + if common.is_compared_to_aggregate(link.target, message): + dependent_statements = [set_field] + statements.append( + IfStatement( + [ + ( + common.field_condition_call( + message, + link.target, + Variable(f"Struct.{link.target.identifier}"), + ), + dependent_statements, + ) + ] + ) + ) + statements = dependent_statements + else: + statements.append(set_field) + else: + return UnitPart() + + specification = ProcedureSpecification( + "To_Context", + [Parameter(["Struct"], "Structure"), InOutParameter(["Ctx"], "Context")], + ) + first_field = message.fields[0] + message_size = message.size() + assert isinstance(message_size, expr.Number) + + return UnitPart( + [ + SubprogramDeclaration( + specification, + [ + Precondition( + AndThen( + Not(Constrained("Ctx")), + Call("Has_Buffer", [Variable("Ctx")]), + Call( + "Valid_Next", + [Variable("Ctx"), Variable(first_field.affixed_name)], + ), + GreaterEqual( + Call( + "Available_Space", + [ + Variable("Ctx"), + Variable(first_field.affixed_name), + ], + ), + message_size.ada_expr(), + ), + ) + ), + Postcondition( + Call("Has_Buffer", [Variable("Ctx")]), + ), + ], + ) + ], + [ + SubprogramBody(specification, [], body), + ], + ) + def __create_refinement(self, refinement: Refinement) -> None: unit_name = refinement.package * const.REFINEMENT_PACKAGE null_sdu = not refinement.sdu.fields @@ -3245,7 +3462,7 @@ def create_file(filename: Path, content: str) -> None: f.write(content) -def modular_types(integer: ModularInteger) -> ty.List[TypeDeclaration]: +def modular_types(integer: ModularInteger) -> ty.List[Declaration]: return [ ModularType( integer.name, @@ -3255,7 +3472,7 @@ def modular_types(integer: ModularInteger) -> ty.List[TypeDeclaration]: ] -def range_types(integer: RangeInteger) -> ty.List[TypeDeclaration]: +def range_types(integer: RangeInteger) -> ty.List[Declaration]: return [ ModularType( common.base_type_name(integer), @@ -3271,8 +3488,8 @@ def range_types(integer: RangeInteger) -> ty.List[TypeDeclaration]: ] -def enumeration_types(enum: Enumeration) -> ty.List[TypeDeclaration]: - types: ty.List[TypeDeclaration] = [] +def enumeration_types(enum: Enumeration) -> ty.List[Declaration]: + types: ty.List[Declaration] = [] types.append( ModularType(common.base_type_name(enum), Pow(Number(2), enum.size_expr.ada_expr())) diff --git a/rflx/generator/parser.py b/rflx/generator/parser.py index 13daf5557..172d37456 100644 --- a/rflx/generator/parser.py +++ b/rflx/generator/parser.py @@ -87,37 +87,36 @@ def create_internal_functions( ) -> UnitPart: def result(field: Field, message: Message) -> NamedAggregate: aggregate: List[Tuple[str, Expr]] = [("Fld", Variable(field.affixed_name))] - if field in message.fields: - if isinstance(message.types[field], Scalar): - aggregate.append( - ( - f"{field.name}_Value", - Call( - "Extract", - [ - Slice( - Variable("Ctx.Buffer.all"), - Variable("Buffer_First"), - Variable("Buffer_Last"), - ), - Variable("Offset"), - ], - ), - ) + if isinstance(message.types[field], Scalar): + aggregate.append( + ( + f"{field.name}_Value", + Call( + "Extract", + [ + Slice( + Variable("Ctx.Buffer.all"), + Variable("Buffer_First"), + Variable("Buffer_Last"), + ), + Variable("Offset"), + ], + ), ) - elif isinstance( - message.types[field], Composite - ) and common.is_compared_to_aggregate(field, message): - aggregate.append( - ( - f"{field.name}_Value", - Slice( - Variable("Ctx.Buffer.all"), - Variable("Buffer_First"), - Variable("Buffer_Last"), - ), - ) + ) + elif isinstance(message.types[field], Composite) and common.is_compared_to_aggregate( + field, message + ): + aggregate.append( + ( + f"{field.name}_Value", + Slice( + Variable("Ctx.Buffer.all"), + Variable("Buffer_First"), + Variable("Buffer_Last"), + ), ) + ) return NamedAggregate(*aggregate) comparison_to_aggregate = any( diff --git a/rflx/generator/serializer.py b/rflx/generator/serializer.py index dba2e0bac..1350b46e7 100644 --- a/rflx/generator/serializer.py +++ b/rflx/generator/serializer.py @@ -1,5 +1,3 @@ -# pylint: disable = too-many-lines - from typing import Mapping, Sequence from rflx.ada import ( @@ -878,30 +876,7 @@ def composite_setter_field_condition_precondition( message: Message, field: Field ) -> Sequence[Expr]: return [ - Call( - "Field_Condition", - [ - Variable("Ctx"), - NamedAggregate( - ("Fld", Variable(field.affixed_name)), - *( - [(f"{field.identifier}_Value", Variable("Data"))] - if common.is_compared_to_aggregate(field, message) - else [] - ), - ), - *( - [ - Call( - "Field_Size", - [Variable("Ctx"), Variable(field.affixed_name)], - ) - ] - if common.size_dependent_condition(message) - else [] - ), - ], - ), + common.field_condition_call(message, field, Variable("Data")), ] @staticmethod diff --git a/rflx/model/message.py b/rflx/model/message.py index d0f2d193f..e8c73cdfd 100644 --- a/rflx/model/message.py +++ b/rflx/model/message.py @@ -279,8 +279,8 @@ def field_condition(self, field: Field) -> expr.Expr: } return self._state.field_condition[field] - def field_size(self, field: Field) -> expr.Expr: - """Return field size if field size is fixed and `UNDEFINED` otherwise.""" + def field_size(self, field: Field) -> expr.Number: + """Return field size if field size is fixed and fail otherwise.""" if field == FINAL: return expr.Number(0) @@ -291,13 +291,20 @@ def field_size(self, field: Field) -> expr.Expr: if isinstance(field_type, mty.Scalar): return field_type.size - if isinstance(field_type, mty.Composite): - sizes = [l.size.simplified() for l in self.incoming(field)] - size = sizes[0] - if isinstance(size, expr.Number) and all(size == s for s in sizes): - return size + sizes = [ + l.size.substituted(mapping=to_mapping(self.type_constraints(expr.TRUE))).simplified() + for l in self.incoming(field) + ] + size = sizes[0] + if isinstance(size, expr.Number) and all(size == s for s in sizes): + return size - return expr.UNDEFINED + fail( + f'unable to calculate size of field "{field.name}" of message "{self.identifier}"', + Subsystem.MODEL, + Severity.ERROR, + field.identifier.location, + ) def paths(self, field: Field) -> Set[Tuple[Link, ...]]: if field == INITIAL: @@ -664,13 +671,6 @@ def has_fixed_size(self) -> bool: def size(self, field_values: Mapping[Field, expr.Expr] = None) -> expr.Expr: field_values = field_values if field_values else {} - def to_mapping(facts: Sequence[expr.Expr]) -> Dict[expr.Name, expr.Expr]: - return { - f.left: f.right - for f in facts - if isinstance(f, (expr.Equal, expr.GreaterEqual)) and isinstance(f.left, expr.Name) - } - def remove_variable_prefix(expression: expr.Expr) -> expr.Expr: if isinstance(expression, expr.Variable) and expression.name.startswith("RFLX_"): return expr.Variable( @@ -1789,3 +1789,11 @@ def expression_list(expression: expr.Expr) -> Sequence[expr.Expr]: if isinstance(expression, expr.And): return expression.terms return [expression] + + +def to_mapping(facts: Sequence[expr.Expr]) -> Dict[expr.Name, expr.Expr]: + return { + f.left: f.right + for f in facts + if isinstance(f, (expr.Equal, expr.GreaterEqual)) and isinstance(f.left, expr.Name) + } diff --git a/tests/data/models.py b/tests/data/models.py index d574ac76d..9407e1d8a 100644 --- a/tests/data/models.py +++ b/tests/data/models.py @@ -493,6 +493,25 @@ Field("Options"): UNIVERSAL_OPTIONS, }, ) +FIXED_SIZE_SIMPLE_MESSAGE = Message( + "Fixed_Size::Simple_Message", + [ + Link(INITIAL, Field("Message_Type")), + Link( + Field("Message_Type"), + Field("Data"), + size=Number(24), + ), + Link( + Field("Data"), + FINAL, + ), + ], + { + Field("Message_Type"): UNIVERSAL_OPTION_TYPE, + Field("Data"): Opaque(), + }, +) SESSION = Session( identifier="P::S", diff --git a/tests/integration/specification_model_generator_test.py b/tests/integration/specification_model_generator_test.py index 9bc3b8dcf..96c279435 100644 --- a/tests/integration/specification_model_generator_test.py +++ b/tests/integration/specification_model_generator_test.py @@ -161,6 +161,29 @@ def test_sequence_with_imported_element_type_message(tmp_path: Path) -> None: utils.assert_compilable_code(p.create_model(), tmp_path) +def test_message_fixed_size_sequence(tmp_path: Path) -> None: + utils.assert_compilable_code_string( + """ + package Test is + + type E is mod 2**8; + + type S is sequence of E; + + type M is + message + null + then A + with Size => 64; + A : S; + end message; + + end Test; + """, + tmp_path, + ) + + def test_unbounded_message(tmp_path: Path) -> None: utils.assert_compilable_code_string( """ diff --git a/tests/spark/generated/rflx-enumeration-message.adb b/tests/spark/generated/rflx-enumeration-message.adb index 1233a9c0e..5a6d737f3 100644 --- a/tests/spark/generated/rflx-enumeration-message.adb +++ b/tests/spark/generated/rflx-enumeration-message.adb @@ -238,4 +238,17 @@ is Ctx.Cursors (Successor (Ctx, F_Priority)) := (State => S_Invalid, Predecessor => F_Priority); end Set_Priority; + procedure To_Structure (Ctx : Context; Struct : out Structure) is + begin + Struct.Priority := Get_Priority (Ctx); + end To_Structure; + + procedure To_Context (Struct : Structure; Ctx : in out Context) is + begin + Reset (Ctx); + if Struct.Priority.Known then + Set_Priority (Ctx, Struct.Priority.Enum); + end if; + end To_Context; + end RFLX.Enumeration.Message; diff --git a/tests/spark/generated/rflx-enumeration-message.ads b/tests/spark/generated/rflx-enumeration-message.ads index 6051459e1..5f4130e01 100644 --- a/tests/spark/generated/rflx-enumeration-message.ads +++ b/tests/spark/generated/rflx-enumeration-message.ads @@ -287,6 +287,25 @@ is (GNATprove, Inline_For_Proof), Ghost; + type Structure is + record + Priority : RFLX.Enumeration.Priority; + end record; + + procedure To_Structure (Ctx : Context; Struct : out Structure) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + procedure To_Context (Struct : Structure; Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Priority) + and then Available_Space (Ctx, F_Priority) >= 8, + Post => + Has_Buffer (Ctx); + private type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); diff --git a/tests/spark/generated/rflx-expression-message.adb b/tests/spark/generated/rflx-expression-message.adb index e2ac09b7f..4ce066bfa 100644 --- a/tests/spark/generated/rflx-expression-message.adb +++ b/tests/spark/generated/rflx-expression-message.adb @@ -255,4 +255,17 @@ is Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Generic_Set_Payload; + procedure To_Structure (Ctx : Context; Struct : out Structure) is + begin + Get_Payload (Ctx, Struct.Payload); + end To_Structure; + + procedure To_Context (Struct : Structure; Ctx : in out Context) is + begin + Reset (Ctx); + if Field_Condition (Ctx, (Fld => F_Payload, Payload_Value => Struct.Payload)) then + Set_Payload (Ctx, Struct.Payload); + end if; + end To_Context; + end RFLX.Expression.Message; diff --git a/tests/spark/generated/rflx-expression-message.ads b/tests/spark/generated/rflx-expression-message.ads index ced402483..23d0c2d59 100644 --- a/tests/spark/generated/rflx-expression-message.ads +++ b/tests/spark/generated/rflx-expression-message.ads @@ -354,6 +354,25 @@ is (GNATprove, Inline_For_Proof), Ghost; + type Structure is + record + Payload : RFLX_Types.Bytes (RFLX_Types.Index'First .. RFLX_Types.Index'First + 1); + end record; + + procedure To_Structure (Ctx : Context; Struct : out Structure) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + procedure To_Context (Struct : Structure; Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Payload) + and then Available_Space (Ctx, F_Payload) >= 16, + Post => + Has_Buffer (Ctx); + private type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); diff --git a/tests/spark/generated/rflx-fixed_size-simple_message.adb b/tests/spark/generated/rflx-fixed_size-simple_message.adb new file mode 100644 index 000000000..cc2ad09ea --- /dev/null +++ b/tests/spark/generated/rflx-fixed_size-simple_message.adb @@ -0,0 +1,384 @@ +pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); +pragma Warnings (Off, "redundant conversion"); + +package body RFLX.Fixed_Size.Simple_Message with + SPARK_Mode +is + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) is + begin + Initialize (Ctx, Buffer, RFLX_Types.To_First_Bit_Index (Buffer'First), RFLX_Types.To_Last_Bit_Index (Buffer'Last)); + end Initialize; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is + Buffer_First : constant RFLX_Types.Index := Buffer'First; + Buffer_Last : constant RFLX_Types.Index := Buffer'Last; + begin + Ctx := (Buffer_First, Buffer_Last, First, Last, First - 1, Buffer, (F_Message_Type => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + Buffer := null; + end Initialize; + + procedure Reset (Ctx : in out Context) is + begin + Ctx.Cursors := (F_Message_Type => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final)); + Ctx.Message_Last := Ctx.First - 1; + end Reset; + + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) is + begin + Ctx := (Ctx.Buffer_First, Ctx.Buffer_Last, First, Last, First - 1, Ctx.Buffer, (F_Message_Type => (State => S_Invalid, Predecessor => F_Initial), others => (State => S_Invalid, Predecessor => F_Final))); + end Reset; + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) is + begin + Buffer := Ctx.Buffer; + Ctx.Buffer := null; + end Take_Buffer; + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) is + begin + if Buffer'Length > 0 then + Buffer := Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last)); + else + Buffer := Ctx.Buffer.all (RFLX_Types.Index'Last .. RFLX_Types.Index'First); + end if; + end Copy; + + procedure Read (Ctx : Context) is + begin + Read (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Message_Last))); + end Read; + + procedure Write (Ctx : in out Context) is + Length : RFLX_Types.Length; + begin + Write (Ctx.Buffer.all (RFLX_Types.To_Index (Ctx.First) .. RFLX_Types.To_Index (Ctx.Last)), Length); + Reset (Ctx, Ctx.First, RFLX_Types.To_Last_Bit_Index (RFLX_Types.Length (RFLX_Types.To_Index (Ctx.First)) + Length - 1)); + end Write; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length is + ((if + Ctx.Message_Last = Ctx.First - 1 + then + 0 + else + RFLX_Types.Length (RFLX_Types.To_Index (Ctx.Message_Last) - RFLX_Types.To_Index (Ctx.First) + 1))); + + pragma Warnings (Off, "precondition is always False"); + + function Successor (Ctx : Context; Fld : Field) return Virtual_Field is + ((case Fld is + when F_Message_Type => + F_Data, + when F_Data => + F_Final)) + with + Pre => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, Fld) + and Valid_Predecessor (Ctx, Fld); + + pragma Warnings (On, "precondition is always False"); + + function Invalid_Successor (Ctx : Context; Fld : Field) return Boolean is + ((case Fld is + when F_Message_Type => + Invalid (Ctx.Cursors (F_Data)), + when F_Data => + True)); + + function Sufficient_Buffer_Length (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Buffer /= null + and Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) < RFLX_Types.Bit_Length'Last + and Ctx.First <= Field_First (Ctx, Fld) + and Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld)) + with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean is + (Sufficient_Buffer_Length (Ctx, Fld) + and then (case Fld is + when F_Data => + Ctx.Buffer.all (RFLX_Types.To_Index (Field_First (Ctx, Fld)) .. RFLX_Types.To_Index (Field_Last (Ctx, Fld))) = Data, + when others => + False)); + + procedure Reset_Dependent_Fields (Ctx : in out Context; Fld : Field) with + Pre => + Valid_Next (Ctx, Fld), + Post => + Valid_Next (Ctx, Fld) + and Invalid (Ctx.Cursors (Fld)) + and Invalid_Successor (Ctx, Fld) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Ctx.Cursors (Fld).Predecessor = Ctx.Cursors (Fld).Predecessor'Old + and Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Field_First (Ctx, Fld) = Field_First (Ctx, Fld)'Old + and Field_Size (Ctx, Fld) = Field_Size (Ctx, Fld)'Old + and (case Fld is + when F_Message_Type => + Invalid (Ctx, F_Message_Type) + and Invalid (Ctx, F_Data), + when F_Data => + Ctx.Cursors (F_Message_Type) = Ctx.Cursors (F_Message_Type)'Old + and Invalid (Ctx, F_Data)) + is + First : constant RFLX_Types.Bit_Length := Field_First (Ctx, Fld) with + Ghost; + Size : constant RFLX_Types.Bit_Length := Field_Size (Ctx, Fld) with + Ghost; + begin + pragma Assert (Field_First (Ctx, Fld) = First + and Field_Size (Ctx, Fld) = Size); + case Fld is + when F_Message_Type => + Ctx.Cursors (F_Data) := (S_Invalid, F_Final); + Ctx.Cursors (F_Message_Type) := (S_Invalid, Ctx.Cursors (F_Message_Type).Predecessor); + pragma Assert (Field_First (Ctx, Fld) = First + and Field_Size (Ctx, Fld) = Size); + when F_Data => + Ctx.Cursors (F_Data) := (S_Invalid, Ctx.Cursors (F_Data).Predecessor); + pragma Assert (Field_First (Ctx, Fld) = First + and Field_Size (Ctx, Fld) = Size); + end case; + end Reset_Dependent_Fields; + + function Composite_Field (Fld : Field) return Boolean is + ((case Fld is + when F_Message_Type => + False, + when F_Data => + True)); + + function Get_Field_Value (Ctx : Context; Fld : Field) return Field_Dependent_Value with + Pre => + Has_Buffer (Ctx) + and then Valid_Next (Ctx, Fld) + and then Sufficient_Buffer_Length (Ctx, Fld), + Post => + Get_Field_Value'Result.Fld = Fld + is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.To_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.To_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + function Extract is new RFLX_Types.Extract (RFLX.Universal.Option_Type_Base); + begin + return ((case Fld is + when F_Message_Type => + (Fld => F_Message_Type, Message_Type_Value => Extract (Ctx.Buffer.all (Buffer_First .. Buffer_Last), Offset)), + when F_Data => + (Fld => F_Data))); + end Get_Field_Value; + + procedure Verify (Ctx : in out Context; Fld : Field) is + Value : Field_Dependent_Value; + begin + if + Has_Buffer (Ctx) + and then Invalid (Ctx.Cursors (Fld)) + and then Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld) + then + if Sufficient_Buffer_Length (Ctx, Fld) then + Value := Get_Field_Value (Ctx, Fld); + if + Valid_Value (Value) + and Field_Condition (Ctx, Value) + then + pragma Assert ((if + Fld = F_Data + then + Field_Last (Ctx, Fld) mod RFLX_Types.Byte'Size = 0)); + case Fld is + when F_Message_Type => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + when F_Data => + Ctx.Message_Last := ((Field_Last (Ctx, Fld) + 7) / 8) * 8; + end case; + if Composite_Field (Fld) then + Ctx.Cursors (Fld) := (State => S_Structural_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); + else + Ctx.Cursors (Fld) := (State => S_Valid, First => Field_First (Ctx, Fld), Last => Field_Last (Ctx, Fld), Value => Value, Predecessor => Ctx.Cursors (Fld).Predecessor); + end if; + if Fld = F_Message_Type then + Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); + elsif Fld = F_Data then + Ctx.Cursors (Successor (Ctx, Fld)) := (State => S_Invalid, Predecessor => Fld); + end if; + else + Ctx.Cursors (Fld) := (State => S_Invalid, Predecessor => F_Final); + end if; + else + Ctx.Cursors (Fld) := (State => S_Incomplete, Predecessor => F_Final); + end if; + end if; + end Verify; + + procedure Verify_Message (Ctx : in out Context) is + begin + Verify (Ctx, F_Message_Type); + Verify (Ctx, F_Data); + end Verify_Message; + + procedure Get_Data (Ctx : Context; Data : out RFLX_Types.Bytes) is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).Last); + begin + Data := Ctx.Buffer.all (First .. Last); + end Get_Data; + + procedure Generic_Get_Data (Ctx : Context) is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).Last); + begin + Process_Data (Ctx.Buffer.all (First .. Last)); + end Generic_Get_Data; + + procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Val.Fld in Field'Range + and then Valid_Next (Ctx, Val.Fld) + and then Available_Space (Ctx, Val.Fld) >= Field_Size (Ctx, Val.Fld) + and then (for all F in Field'Range => + (if + Structural_Valid (Ctx.Cursors (F)) + then + Ctx.Cursors (F).Last <= Field_Last (Ctx, Val.Fld))), + Post => + Has_Buffer (Ctx) + and Fst = Field_First (Ctx, Val.Fld) + and Lst = Field_Last (Ctx, Val.Fld) + and Fst >= Ctx.First + and Fst <= Lst + 1 + and Lst <= Ctx.Last + and (for all F in Field'Range => + (if + Structural_Valid (Ctx.Cursors (F)) + then + Ctx.Cursors (F).Last <= Lst)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Ctx.Cursors = Ctx.Cursors'Old + is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, Val.Fld); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, Val.Fld); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.To_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.To_Index (Last)); + function Offset return RFLX_Types.Offset is + (RFLX_Types.Offset ((8 - Last mod 8) mod 8)); + procedure Insert is new RFLX_Types.Insert (RFLX.Universal.Option_Type_Base); + begin + Fst := First; + Lst := Last; + case Val.Fld is + when F_Initial => + null; + when F_Message_Type => + Insert (Val.Message_Type_Value, Ctx.Buffer.all (Buffer_First .. Buffer_Last), Offset); + when F_Data | F_Final => + null; + end case; + end Set_Field_Value; + + procedure Set_Message_Type (Ctx : in out Context; Val : RFLX.Universal.Option_Type_Enum) is + Field_Value : constant Field_Dependent_Value := (F_Message_Type, To_Base (Val)); + First, Last : RFLX_Types.Bit_Index; + begin + Reset_Dependent_Fields (Ctx, F_Message_Type); + Set_Field_Value (Ctx, Field_Value, First, Last); + Ctx.Message_Last := ((Last + 7) / 8) * 8; + Ctx.Cursors (F_Message_Type) := (State => S_Valid, First => First, Last => Last, Value => Field_Value, Predecessor => Ctx.Cursors (F_Message_Type).Predecessor); + Ctx.Cursors (Successor (Ctx, F_Message_Type)) := (State => S_Invalid, Predecessor => F_Message_Type); + end Set_Message_Type; + + procedure Initialize_Data_Private (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Data) + and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) + and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Data) + and Ctx.Message_Last = Field_Last (Ctx, F_Data) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old + and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old + and Get_Message_Type (Ctx) = Get_Message_Type (Ctx)'Old + is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Data); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Data); + begin + Reset_Dependent_Fields (Ctx, F_Data); + Ctx.Message_Last := Last; + Ctx.Cursors (F_Data) := (State => S_Structural_Valid, First => First, Last => Last, Value => (Fld => F_Data), Predecessor => Ctx.Cursors (F_Data).Predecessor); + Ctx.Cursors (Successor (Ctx, F_Data)) := (State => S_Invalid, Predecessor => F_Data); + end Initialize_Data_Private; + + procedure Initialize_Data (Ctx : in out Context) is + begin + Initialize_Data_Private (Ctx); + end Initialize_Data; + + procedure Set_Data (Ctx : in out Context; Data : RFLX_Types.Bytes) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Data); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Data); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.To_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.To_Index (Last)); + begin + Initialize_Data_Private (Ctx); + Ctx.Buffer.all (Buffer_First .. Buffer_Last) := Data; + end Set_Data; + + procedure Generic_Set_Data (Ctx : in out Context) is + First : constant RFLX_Types.Bit_Index := Field_First (Ctx, F_Data); + Last : constant RFLX_Types.Bit_Index := Field_Last (Ctx, F_Data); + function Buffer_First return RFLX_Types.Index is + (RFLX_Types.To_Index (First)); + function Buffer_Last return RFLX_Types.Index is + (RFLX_Types.To_Index (Last)); + begin + Initialize_Data_Private (Ctx); + Process_Data (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); + end Generic_Set_Data; + + procedure To_Structure (Ctx : Context; Struct : out Structure) is + begin + Struct.Message_Type := Get_Message_Type (Ctx); + Get_Data (Ctx, Struct.Data); + end To_Structure; + + procedure To_Context (Struct : Structure; Ctx : in out Context) is + begin + Reset (Ctx); + if Struct.Message_Type.Known then + Set_Message_Type (Ctx, Struct.Message_Type.Enum); + Set_Data (Ctx, Struct.Data); + end if; + end To_Context; + +end RFLX.Fixed_Size.Simple_Message; diff --git a/tests/spark/generated/rflx-fixed_size-simple_message.ads b/tests/spark/generated/rflx-fixed_size-simple_message.ads new file mode 100644 index 000000000..71ee159a9 --- /dev/null +++ b/tests/spark/generated/rflx-fixed_size-simple_message.ads @@ -0,0 +1,650 @@ +pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); +pragma Warnings (Off, "redundant conversion"); +with RFLX.RFLX_Types; +with RFLX.Universal; +use RFLX.Universal; + +package RFLX.Fixed_Size.Simple_Message with + SPARK_Mode, + Annotate => + (GNATprove, Terminating) +is + + pragma Warnings (Off, "use clause for type ""U64"" * has no effect"); + + pragma Warnings (Off, """LENGTH"" is already use-visible through previous use_type_clause"); + + use type RFLX_Types.Bytes, RFLX_Types.Bytes_Ptr, RFLX_Types.Length, RFLX_Types.Index, RFLX_Types.Bit_Index, RFLX_Types.U64; + + pragma Warnings (On, """LENGTH"" is already use-visible through previous use_type_clause"); + + pragma Warnings (On, "use clause for type ""U64"" * has no effect"); + + type Virtual_Field is (F_Initial, F_Message_Type, F_Data, F_Final); + + subtype Field is Virtual_Field range F_Message_Type .. F_Data; + + type Field_Cursor is private with + Default_Initial_Condition => + False; + + type Field_Cursors is private with + Default_Initial_Condition => + False; + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is private with + Default_Initial_Condition => + RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0; + + type Field_Dependent_Value (Fld : Virtual_Field := F_Initial) is + record + case Fld is + when F_Initial | F_Data | F_Final => + null; + when F_Message_Type => + Message_Type_Value : RFLX.Universal.Option_Type_Base; + end case; + end record; + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then Buffer'Last < RFLX_Types.Index'Last, + Post => + Has_Buffer (Ctx) + and Buffer = null + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = RFLX_Types.To_First_Bit_Index (Ctx.Buffer_First) + and Ctx.Last = RFLX_Types.To_Last_Bit_Index (Ctx.Buffer_Last) + and Initialized (Ctx), + Depends => + (Ctx => Buffer, Buffer => null); + + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with + Pre => + not Ctx'Constrained + and then Buffer /= null + and then Buffer'Length > 0 + and then RFLX_Types.To_Index (First) >= Buffer'First + and then RFLX_Types.To_Index (Last) <= Buffer'Last + and then First <= Last + 1 + and then Last < RFLX_Types.Bit_Index'Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0, + Post => + Buffer = null + and Has_Buffer (Ctx) + and Ctx.Buffer_First = Buffer'First'Old + and Ctx.Buffer_Last = Buffer'Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx), + Depends => + (Ctx => (Buffer, First, Last), Buffer => null); + + function Initialized (Ctx : Context) return Boolean with + Ghost; + + procedure Reset (Ctx : in out Context) with + Pre => + Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Initialized (Ctx); + + procedure Reset (Ctx : in out Context; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx) + and RFLX_Types.To_Index (First) >= Ctx.Buffer_First + and RFLX_Types.To_Index (Last) <= Ctx.Buffer_Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Length'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = First + and Ctx.Last = Last + and Initialized (Ctx); + + procedure Take_Buffer (Ctx : in out Context; Buffer : out RFLX_Types.Bytes_Ptr) with + Pre => + Has_Buffer (Ctx), + Post => + not Has_Buffer (Ctx) + and Buffer /= null + and Ctx.Buffer_First = Buffer'First + and Ctx.Buffer_Last = Buffer'Last + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Context_Cursors (Ctx) = Context_Cursors (Ctx)'Old, + Depends => + (Ctx => Ctx, Buffer => Ctx); + + procedure Copy (Ctx : Context; Buffer : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx) + and then Byte_Size (Ctx) = Buffer'Length; + + generic + with procedure Read (Buffer : RFLX_Types.Bytes); + procedure Read (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + generic + with procedure Write (Buffer : out RFLX_Types.Bytes; Length : out RFLX_Types.Length); + procedure Write (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and Has_Buffer (Ctx), + Post => + Has_Buffer (Ctx) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Initialized (Ctx); + + function Has_Buffer (Ctx : Context) return Boolean; + + function Byte_Size (Ctx : Context) return RFLX_Types.Length; + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean with + Pre => + Valid_Predecessor (Ctx, Fld); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean with + Pre => + Has_Buffer (Ctx) + and Val.Fld in Field'Range + and Valid_Predecessor (Ctx, Val.Fld); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index with + Pre => + Valid_Next (Ctx, Fld) + and then Available_Space (Ctx, Fld) >= Field_Size (Ctx, Fld); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field; + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean; + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean; + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length with + Pre => + Valid_Next (Ctx, Fld); + + function Equal (Ctx : Context; Fld : Field; Data : RFLX_Types.Bytes) return Boolean with + Pre => + Has_Buffer (Ctx) + and Valid_Next (Ctx, Fld); + + procedure Verify (Ctx : in out Context; Fld : Field) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + procedure Verify_Message (Ctx : in out Context) with + Post => + Has_Buffer (Ctx) = Has_Buffer (Ctx)'Old + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old; + + function Present (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean; + + function Valid (Ctx : Context; Fld : Field) return Boolean with + Post => + (if + Valid'Result + then + Structural_Valid (Ctx, Fld) + and Present (Ctx, Fld)); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean; + + function Invalid (Ctx : Context; Fld : Field) return Boolean; + + function Structural_Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Valid_Message (Ctx : Context) return Boolean with + Pre => + Has_Buffer (Ctx); + + function Incomplete_Message (Ctx : Context) return Boolean; + + pragma Warnings (Off, "precondition is always False"); + + function Get_Message_Type (Ctx : Context) return RFLX.Universal.Option_Type with + Pre => + Valid (Ctx, F_Message_Type); + + pragma Warnings (On, "precondition is always False"); + + procedure Get_Data (Ctx : Context; Data : out RFLX_Types.Bytes) with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Data) + and then Valid_Next (Ctx, F_Data) + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)); + + generic + with procedure Process_Data (Data : RFLX_Types.Bytes); + procedure Generic_Get_Data (Ctx : Context) with + Pre => + Has_Buffer (Ctx) + and Present (Ctx, F_Data); + + procedure Set_Message_Type (Ctx : in out Context; Val : RFLX.Universal.Option_Type_Enum) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Message_Type) + and then Field_Condition (Ctx, (F_Message_Type, To_Base (Val))) + and then True + and then Available_Space (Ctx, F_Message_Type) >= Field_Size (Ctx, F_Message_Type), + Post => + Has_Buffer (Ctx) + and Valid (Ctx, F_Message_Type) + and Get_Message_Type (Ctx) = (True, Val) + and Invalid (Ctx, F_Data) + and (Predecessor (Ctx, F_Data) = F_Message_Type + and Valid_Next (Ctx, F_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Message_Type) = Predecessor (Ctx, F_Message_Type)'Old + and Valid_Next (Ctx, F_Message_Type) = Valid_Next (Ctx, F_Message_Type)'Old; + + procedure Initialize_Data (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Data) + and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) + and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0, + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Data) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old + and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old + and Get_Message_Type (Ctx) = Get_Message_Type (Ctx)'Old; + + procedure Set_Data (Ctx : in out Context; Data : RFLX_Types.Bytes) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Data) + and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) + and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)) + and then Field_Condition (Ctx, (Fld => F_Data)), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Data) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old + and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old + and Get_Message_Type (Ctx) = Get_Message_Type (Ctx)'Old; + + generic + with procedure Process_Data (Data : out RFLX_Types.Bytes); + with function Valid_Length (Length : RFLX_Types.Length) return Boolean; + procedure Generic_Set_Data (Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Data) + and then Available_Space (Ctx, F_Data) >= Field_Size (Ctx, F_Data) + and then Field_First (Ctx, F_Data) mod RFLX_Types.Byte'Size = 1 + and then Field_Last (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Field_Size (Ctx, F_Data) mod RFLX_Types.Byte'Size = 0 + and then Valid_Length (RFLX_Types.Length (Field_Size (Ctx, F_Data) / RFLX_Types.Byte'Size)), + Post => + Has_Buffer (Ctx) + and Structural_Valid (Ctx, F_Data) + and (if + Structural_Valid_Message (Ctx) + then + Message_Last (Ctx) = Field_Last (Ctx, F_Data)) + and Ctx.Buffer_First = Ctx.Buffer_First'Old + and Ctx.Buffer_Last = Ctx.Buffer_Last'Old + and Ctx.First = Ctx.First'Old + and Ctx.Last = Ctx.Last'Old + and Predecessor (Ctx, F_Data) = Predecessor (Ctx, F_Data)'Old + and Valid_Next (Ctx, F_Data) = Valid_Next (Ctx, F_Data)'Old + and Get_Message_Type (Ctx) = Get_Message_Type (Ctx)'Old; + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + function Context_Cursors (Ctx : Context) return Field_Cursors with + Annotate => + (GNATprove, Inline_For_Proof), + Ghost; + + type Structure is + record + Message_Type : RFLX.Universal.Option_Type; + Data : RFLX_Types.Bytes (RFLX_Types.Index'First .. RFLX_Types.Index'First + 2); + end record; + + procedure To_Structure (Ctx : Context; Struct : out Structure) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + procedure To_Context (Struct : Structure; Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Message_Type) + and then Available_Space (Ctx, F_Message_Type) >= 32, + Post => + Has_Buffer (Ctx); + +private + + type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); + + function Valid_Value (Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Message_Type => + Valid (Val.Message_Type_Value), + when F_Data => + True, + when F_Initial | F_Final => + False)); + + type Field_Cursor (State : Cursor_State := S_Invalid) is + record + Predecessor : Virtual_Field := F_Final; + case State is + when S_Valid | S_Structural_Valid => + First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; + Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First; + Value : Field_Dependent_Value := (Fld => F_Final); + when S_Invalid | S_Incomplete => + null; + end case; + end record with + Dynamic_Predicate => + (if + State = S_Valid + or State = S_Structural_Valid + then + Valid_Value (Field_Cursor.Value)); + + type Field_Cursors is array (Virtual_Field) of Field_Cursor; + + function Structural_Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid + or Cursor.State = S_Structural_Valid); + + function Valid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Valid); + + function Invalid (Cursor : Field_Cursor) return Boolean is + (Cursor.State = S_Invalid + or Cursor.State = S_Incomplete); + + pragma Warnings (Off, """Buffer"" is not modified, could be of access constant type"); + + function Valid_Context (Buffer_First, Buffer_Last : RFLX_Types.Index; First : RFLX_Types.Bit_Index; Last : RFLX_Types.Bit_Length; Message_Last : RFLX_Types.Bit_Length; Buffer : RFLX_Types.Bytes_Ptr; Cursors : Field_Cursors) return Boolean is + ((if + Buffer /= null + then + Buffer'First = Buffer_First + and Buffer'Last = Buffer_Last) + and then (RFLX_Types.To_Index (First) >= Buffer_First + and RFLX_Types.To_Index (Last) <= Buffer_Last + and First <= Last + 1 + and Last < RFLX_Types.Bit_Index'Last + and First mod RFLX_Types.Byte'Size = 1 + and Last mod RFLX_Types.Byte'Size = 0) + and then First - 1 <= Message_Last + and then Message_Last <= Last + and then First mod RFLX_Types.Byte'Size = 1 + and then Last mod RFLX_Types.Byte'Size = 0 + and then Message_Last mod RFLX_Types.Byte'Size = 0 + and then (for all F in Field'First .. Field'Last => + (if + Structural_Valid (Cursors (F)) + then + Cursors (F).First >= First + and Cursors (F).Last <= Message_Last + and Cursors (F).First <= Cursors (F).Last + 1 + and Cursors (F).Value.Fld = F)) + and then ((if + Structural_Valid (Cursors (F_Data)) + then + (Valid (Cursors (F_Message_Type)) + and then Cursors (F_Data).Predecessor = F_Message_Type))) + and then ((if + Invalid (Cursors (F_Message_Type)) + then + Invalid (Cursors (F_Data)))) + and then (if + Structural_Valid (Cursors (F_Message_Type)) + then + Cursors (F_Message_Type).Last - Cursors (F_Message_Type).First + 1 = RFLX.Universal.Option_Type_Base'Size + and then Cursors (F_Message_Type).Predecessor = F_Initial + and then Cursors (F_Message_Type).First = First + and then (if + Structural_Valid (Cursors (F_Data)) + then + Cursors (F_Data).Last - Cursors (F_Data).First + 1 = 24 + and then Cursors (F_Data).Predecessor = F_Message_Type + and then Cursors (F_Data).First = Cursors (F_Message_Type).Last + 1))); + + pragma Warnings (On, """Buffer"" is not modified, could be of access constant type"); + + type Context (Buffer_First, Buffer_Last : RFLX_Types.Index := RFLX_Types.Index'First; First : RFLX_Types.Bit_Index := RFLX_Types.Bit_Index'First; Last : RFLX_Types.Bit_Length := RFLX_Types.Bit_Length'First) is + record + Message_Last : RFLX_Types.Bit_Length := First - 1; + Buffer : RFLX_Types.Bytes_Ptr := null; + Cursors : Field_Cursors := (others => (State => S_Invalid, Predecessor => F_Final)); + end record with + Dynamic_Predicate => + Valid_Context (Context.Buffer_First, Context.Buffer_Last, Context.First, Context.Last, Context.Message_Last, Context.Buffer, Context.Cursors); + + function Initialized (Ctx : Context) return Boolean is + (Ctx.Message_Last = Ctx.First - 1 + and then Valid_Next (Ctx, F_Message_Type) + and then Field_First (Ctx, F_Message_Type) mod RFLX_Types.Byte'Size = 1 + and then Available_Space (Ctx, F_Message_Type) = Ctx.Last - Ctx.First + 1 + and then Invalid (Ctx, F_Message_Type) + and then Invalid (Ctx, F_Data)); + + function Has_Buffer (Ctx : Context) return Boolean is + (Ctx.Buffer /= null); + + function Message_Last (Ctx : Context) return RFLX_Types.Bit_Length is + (Ctx.Message_Last); + + function Path_Condition (Ctx : Context; Fld : Field) return Boolean is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Message_Type => + True, + when others => + False), + when F_Message_Type => + (case Fld is + when F_Data => + True, + when others => + False), + when F_Data | F_Final => + False)); + + function Field_Condition (Ctx : Context; Val : Field_Dependent_Value) return Boolean is + ((case Val.Fld is + when F_Initial | F_Message_Type | F_Data => + True, + when F_Final => + False)); + + function Field_Size (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + ((case Ctx.Cursors (Fld).Predecessor is + when F_Initial => + (case Fld is + when F_Message_Type => + RFLX.Universal.Option_Type_Base'Size, + when others => + raise Program_Error), + when F_Message_Type => + (case Fld is + when F_Data => + 24, + when others => + raise Program_Error), + when F_Data | F_Final => + 0)); + + function Field_First (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + ((case Fld is + when F_Message_Type => + Ctx.First, + when F_Data => + (if + Ctx.Cursors (Fld).Predecessor = F_Message_Type + then + Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 + else + raise Program_Error))); + + function Field_Last (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Index is + (Field_First (Ctx, Fld) + Field_Size (Ctx, Fld) - 1); + + function Predecessor (Ctx : Context; Fld : Virtual_Field) return Virtual_Field is + ((case Fld is + when F_Initial => + F_Initial, + when others => + Ctx.Cursors (Fld).Predecessor)); + + function Valid_Predecessor (Ctx : Context; Fld : Virtual_Field) return Boolean is + ((case Fld is + when F_Initial => + True, + when F_Message_Type => + Ctx.Cursors (Fld).Predecessor = F_Initial, + when F_Data => + (Valid (Ctx.Cursors (F_Message_Type)) + and Ctx.Cursors (Fld).Predecessor = F_Message_Type), + when F_Final => + (Structural_Valid (Ctx.Cursors (F_Data)) + and Ctx.Cursors (Fld).Predecessor = F_Data))); + + function Valid_Next (Ctx : Context; Fld : Field) return Boolean is + (Valid_Predecessor (Ctx, Fld) + and then Path_Condition (Ctx, Fld)); + + function Available_Space (Ctx : Context; Fld : Field) return RFLX_Types.Bit_Length is + (Ctx.Last - Field_First (Ctx, Fld) + 1); + + function Present (Ctx : Context; Fld : Field) return Boolean is + (Structural_Valid (Ctx.Cursors (Fld)) + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Structural_Valid (Ctx : Context; Fld : Field) return Boolean is + ((Ctx.Cursors (Fld).State = S_Valid + or Ctx.Cursors (Fld).State = S_Structural_Valid)); + + function Valid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Valid + and then Ctx.Cursors (Fld).First < Ctx.Cursors (Fld).Last + 1); + + function Incomplete (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Incomplete); + + function Invalid (Ctx : Context; Fld : Field) return Boolean is + (Ctx.Cursors (Fld).State = S_Invalid + or Ctx.Cursors (Fld).State = S_Incomplete); + + function Structural_Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Message_Type) + and then Structural_Valid (Ctx, F_Data)); + + function Valid_Message (Ctx : Context) return Boolean is + (Valid (Ctx, F_Message_Type) + and then Valid (Ctx, F_Data)); + + function Incomplete_Message (Ctx : Context) return Boolean is + (Incomplete (Ctx, F_Message_Type) + or Incomplete (Ctx, F_Data)); + + function Get_Message_Type (Ctx : Context) return RFLX.Universal.Option_Type is + (To_Actual (Ctx.Cursors (F_Message_Type).Value.Message_Type_Value)); + + function Context_Cursor (Ctx : Context; Fld : Field) return Field_Cursor is + (Ctx.Cursors (Fld)); + + function Context_Cursors (Ctx : Context) return Field_Cursors is + (Ctx.Cursors); + +end RFLX.Fixed_Size.Simple_Message; diff --git a/tests/spark/generated/rflx-fixed_size.ads b/tests/spark/generated/rflx-fixed_size.ads new file mode 100644 index 000000000..9e2ec334b --- /dev/null +++ b/tests/spark/generated/rflx-fixed_size.ads @@ -0,0 +1,8 @@ +pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); +pragma Warnings (Off, "redundant conversion"); + +package RFLX.Fixed_Size with + SPARK_Mode +is + +end RFLX.Fixed_Size; diff --git a/tests/spark/generated/rflx-universal.ads b/tests/spark/generated/rflx-universal.ads new file mode 100644 index 000000000..f11ddb916 --- /dev/null +++ b/tests/spark/generated/rflx-universal.ads @@ -0,0 +1,66 @@ +pragma Style_Checks ("N3aAbcdefhiIklnOprStux"); +pragma Warnings (Off, "redundant conversion"); + +package RFLX.Universal with + SPARK_Mode +is + + type Option_Type_Base is mod 2**8; + + type Option_Type_Enum is (OT_Null, OT_Data) with + Size => + 8; + for Option_Type_Enum use (OT_Null => 0, OT_Data => 1); + + type Option_Type (Known : Boolean := False) is + record + case Known is + when True => + Enum : Option_Type_Enum; + when False => + Raw : Option_Type_Base; + end case; + end record; + + pragma Warnings (Off, "unused variable ""Val"""); + + pragma Warnings (Off, "formal parameter ""Val"" is not referenced"); + + function Valid (Val : RFLX.Universal.Option_Type_Base) return Boolean is + (True); + + pragma Warnings (On, "formal parameter ""Val"" is not referenced"); + + pragma Warnings (On, "unused variable ""Val"""); + + function To_Base (Enum : RFLX.Universal.Option_Type_Enum) return RFLX.Universal.Option_Type_Base is + ((case Enum is + when OT_Null => + 0, + when OT_Data => + 1)); + + function To_Actual (Enum : Option_Type_Enum) return RFLX.Universal.Option_Type is + ((True, Enum)); + + function To_Actual (Val : RFLX.Universal.Option_Type_Base) return RFLX.Universal.Option_Type is + ((case Val is + when 0 => + (True, OT_Null), + when 1 => + (True, OT_Data), + when others => + (False, Val))) + with + Pre => + Valid (Val); + + function To_Base (Val : RFLX.Universal.Option_Type) return RFLX.Universal.Option_Type_Base is + ((if + Val.Known + then + To_Base (Val.Enum) + else + Val.Raw)); + +end RFLX.Universal; diff --git a/tests/spark/rflx-fixed_size_tests.adb b/tests/spark/rflx-fixed_size_tests.adb new file mode 100644 index 000000000..e5049a2bb --- /dev/null +++ b/tests/spark/rflx-fixed_size_tests.adb @@ -0,0 +1,88 @@ +with SPARK; use SPARK; +with SPARK.Assertions; use SPARK.Assertions; + +with RFLX.RFLX_Builtin_Types; +with RFLX.RFLX_Types; + +with RFLX.Fixed_Size.Simple_Message; +with RFLX.Universal; + +package body RFLX.Fixed_Size_Tests is + + overriding + function Name (T : Test) return AUnit.Message_String is + pragma Unreferenced (T); + begin + return AUnit.Format ("Fixed_Size"); + end Name; + + procedure Test_To_Structure (T : in out AUnit.Test_Cases.Test_Case'Class) with + SPARK_Mode, Pre => True + is + pragma Unreferenced (T); + Buffer : RFLX_Builtin_Types.Bytes_Ptr := new RFLX_Builtin_Types.Bytes'(1, 2, 3, 4); + Context : Fixed_Size.Simple_Message.Context; + Structure : Fixed_Size.Simple_Message.Structure; + package Message renames Fixed_Size.Simple_Message; + begin + Message.Initialize (Context, Buffer); + Message.Verify_Message (Context); + + Assert (Message.Structural_Valid_Message (Context), "Structural invalid message"); + + Message.To_Structure (Context, Structure); + + Assert (Structure.Message_Type.Known, "Unknown Message_Type"); + Assert (Structure.Message_Type.Enum'Img, Universal.OT_Data'Img, "Unexpected Message_Type"); + Assert (Structure.Data, (2, 3, 4), "Unexpected Data"); + + -- WORKAROUND: Componolit/Workarounds#32 + pragma Warnings (Off, "unused assignment to ""Context"""); + pragma Warnings (Off, """Context"" is set by ""*"" but not used after the call"); + Message.Take_Buffer (Context, Buffer); + pragma Warnings (On, """Context"" is set by ""*"" but not used after the call"); + pragma Warnings (On, "unused assignment to ""Context"""); + RFLX_Types.Free (Buffer); + end Test_To_Structure; + + procedure Test_To_Context (T : in out AUnit.Test_Cases.Test_Case'Class) with + SPARK_Mode, Pre => True + is + pragma Unreferenced (T); + Buffer : RFLX_Builtin_Types.Bytes_Ptr := new RFLX_Builtin_Types.Bytes'(0, 0, 0, 0); + Context : Fixed_Size.Simple_Message.Context; + Structure : constant Fixed_Size.Simple_Message.Structure := (Message_Type => (Known => True, + Enum => Universal.OT_Data), + Data => (2, 3, 4)); + Data : RFLX_Builtin_Types.Bytes := (0, 0, 0); + package Message renames Fixed_Size.Simple_Message; + begin + Message.Initialize (Context, Buffer); + Message.To_Context (Structure, Context); + + Assert (Message.Structural_Valid_Message (Context), "Structural invalid message"); + Assert (Message.Get_Message_Type (Context).Known, "Unknown Message_Type"); + Assert (Message.Get_Message_Type (Context).Enum'Img, Universal.OT_Data'Img, "Unexpected Message_Type"); + + Message.Get_Data (Context, Data); + + Assert (Data, (2, 3, 4), "Unexpected Data"); + + -- WORKAROUND: Componolit/Workarounds#32 + pragma Warnings (Off, "unused assignment to ""Context"""); + pragma Warnings (Off, """Context"" is set by ""*"" but not used after the call"); + Message.Take_Buffer (Context, Buffer); + pragma Warnings (On, """Context"" is set by ""*"" but not used after the call"); + pragma Warnings (On, "unused assignment to ""Context"""); + RFLX_Types.Free (Buffer); + end Test_To_Context; + + overriding + procedure Register_Tests (T : in out Test) is + use AUnit.Test_Cases.Registration; + begin + Register_Routine (T, Test_To_Structure'Access, "Converting context to structure"); + Register_Routine (T, Test_To_Context'Access, "Converting structure to context"); + end Register_Tests; + +end RFLX.Fixed_Size_Tests; diff --git a/tests/spark/rflx-fixed_size_tests.ads b/tests/spark/rflx-fixed_size_tests.ads new file mode 100644 index 000000000..7f6323f1e --- /dev/null +++ b/tests/spark/rflx-fixed_size_tests.ads @@ -0,0 +1,15 @@ +with AUnit; +with AUnit.Test_Cases; + +package RFLX.Fixed_Size_Tests is + pragma Elaborate_Body; + + type Test is new AUnit.Test_Cases.Test_Case with null record; + + overriding + function Name (T : Test) return AUnit.Message_String; + + overriding + procedure Register_Tests (T : in out Test); + +end RFLX.Fixed_Size_Tests; diff --git a/tests/spark/test.adb b/tests/spark/test.adb index 846e92a62..495a28549 100644 --- a/tests/spark/test.adb +++ b/tests/spark/test.adb @@ -15,6 +15,7 @@ with RFLX.Enumeration_Tests; with RFLX.Sequence_Tests; with RFLX.Derivation_Tests; with RFLX.Expression_Tests; +with RFLX.Fixed_Size_Tests; procedure Test is pragma Warnings (Off, "use of an anonymous access type allocator"); @@ -34,6 +35,7 @@ procedure Test is Result.all.Add_Test (new RFLX.Sequence_Tests.Test); Result.all.Add_Test (new RFLX.Derivation_Tests.Test); Result.all.Add_Test (new RFLX.Expression_Tests.Test); + Result.all.Add_Test (new RFLX.Fixed_Size_Tests.Test); return Result; end Suite; diff --git a/tests/spark/test_fixed_size.adb b/tests/spark/test_fixed_size.adb new file mode 100644 index 000000000..1409611fb --- /dev/null +++ b/tests/spark/test_fixed_size.adb @@ -0,0 +1,31 @@ +with AUnit.Reporter.Text; +with AUnit.Run; +with AUnit.Test_Suites; +with Ada.Command_Line; + +with RFLX.Fixed_Size_Tests; + +procedure Test_Fixed_Size is + pragma Warnings (Off, "use of an anonymous access type allocator"); + + function Suite return AUnit.Test_Suites.Access_Test_Suite is + Result : constant AUnit.Test_Suites.Access_Test_Suite := new AUnit.Test_Suites.Test_Suite; + begin + Result.all.Add_Test (new RFLX.Fixed_Size_Tests.Test); + return Result; + end Suite; + + pragma Warnings (On, "use of an anonymous access type allocator"); + + function Run is new AUnit.Run.Test_Runner_With_Status (Suite); + + Reporter : AUnit.Reporter.Text.Text_Reporter; + Status : AUnit.Status; + + use type AUnit.Status; +begin + Reporter.Set_Use_ANSI_Colors (True); + Status := Run (Reporter); + Ada.Command_Line.Set_Exit_Status + (if Status = AUnit.Success then Ada.Command_Line.Success else Ada.Command_Line.Failure); +end Test_Fixed_Size; diff --git a/tests/unit/model/message_test.py b/tests/unit/model/message_test.py index 5d58f6a52..c8aa545f0 100644 --- a/tests/unit/model/message_test.py +++ b/tests/unit/model/message_test.py @@ -8,7 +8,6 @@ from rflx.expression import ( FALSE, TRUE, - UNDEFINED, Add, Aggregate, And, @@ -2408,25 +2407,35 @@ def test_checksum_error( assert_message_model_error(structure, types, error, aspects=aspects) +@pytest.mark.skipif(not __debug__, reason="depends on assertion") def test_field_size() -> None: message = Message( "P::M", [ Link(INITIAL, Field("A")), - Link(Field("A"), Field("B"), size=Number(8)), - Link(Field("B"), FINAL), + Link(Field("A"), Field("B"), size=Mul(Size("A"), Number(8))), + Link(Field("B"), Field("C"), size=Sub(Last("Message"), Last("B"))), + Link(Field("C"), FINAL), ], - {Field("A"): MODULAR_INTEGER, Field("B"): OPAQUE}, + {Field("A"): MODULAR_INTEGER, Field("B"): OPAQUE, Field("C"): OPAQUE}, location=Location((30, 10)), ) assert message.field_size(FINAL) == Number(0) assert message.field_size(Field("A")) == Number(8) - assert message.field_size(Field("B")) == UNDEFINED + assert message.field_size(Field("B")) == Number(64) + + with pytest.raises( + RecordFluxError, + match=( + r'^:10:20: model: error: unable to calculate size of field "C"' + r' of message "P::M"$' + ), + ): + message.field_size(Field(ID("C", location=Location((10, 20))))) with pytest.raises(AssertionError, match='^field "X" not found$'): message.field_size(Field("X")) - message.error.propagate() def test_copy() -> None: diff --git a/tools/generate_spark_test_code.py b/tools/generate_spark_test_code.py index 4b8fd8b46..630d7aa68 100755 --- a/tools/generate_spark_test_code.py +++ b/tools/generate_spark_test_code.py @@ -8,6 +8,7 @@ import tests.data.models from rflx.generator import Generator +from rflx.model import Model from rflx.specification import Parser from tests.const import EX_SPEC_DIR @@ -23,6 +24,7 @@ tests.data.models.NULL_MODEL, tests.data.models.TLV_MODEL, tests.data.models.NULL_MESSAGE_IN_TLV_MESSAGE_MODEL, + Model(tests.data.models.FIXED_SIZE_SIMPLE_MESSAGE.all_types), ] SPECIFICATION_FILES = [ diff --git a/tools/generate_spark_test_runner.py b/tools/generate_spark_test_runner.py index 4eec2dd9f..dbae1ab9a 100755 --- a/tools/generate_spark_test_runner.py +++ b/tools/generate_spark_test_runner.py @@ -24,6 +24,7 @@ "Sequence", "Derivation", "Expression", + "Fixed_Size", ] From 4ddae7c39910e4f81cbb451a3f10878828b0d621 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 21 May 2021 11:05:05 +0200 Subject: [PATCH 25/43] Prevent GNAT bug caused by record type construction inside precondition Ref. #665, Componolit/Workarounds#35 --- rflx/generator/common.py | 7 ++++-- rflx/generator/generator.py | 23 ++++++++++++++++++- .../generated/rflx-expression-message.adb | 2 +- .../generated/rflx-expression-message.ads | 8 ++++++- 4 files changed, 35 insertions(+), 5 deletions(-) diff --git a/rflx/generator/common.py b/rflx/generator/common.py index 6eb72d877..acf41ed79 100644 --- a/rflx/generator/common.py +++ b/rflx/generator/common.py @@ -664,12 +664,15 @@ def field_condition_call(message: model.Message, field: model.Field, value: ada. "Field_Condition", [ ada.Variable("Ctx"), - ada.NamedAggregate( + ada.Call( + f"Construct_{field.identifier}_Value", [value] + ) # ISSUE: Componolit/Workarounds#35 + if is_compared_to_aggregate(field, message) + else ada.NamedAggregate( ("Fld", ada.Variable(field.affixed_name)), *( [(f"{field.identifier}_Value", value)] if isinstance(message.types[field], model.Scalar) - or is_compared_to_aggregate(field, message) else [] ), ), diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 30da061e7..505e57f1b 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -641,6 +641,7 @@ def __create_context_type() -> UnitPart: def __create_field_dependent_type(self, message: Message) -> UnitPart: null_fields = [] variants = [] + construction_functions = [] for f, t in message.types.items(): if isinstance(t, Composite) and not common.is_compared_to_aggregate(f, message): @@ -678,6 +679,25 @@ def __create_field_dependent_type(self, message: Message) -> UnitPart: ], ) ) + # ISSUE: Componolit/Workarounds#35 + # Prevent a GNAT bug by moving the construction of the record type from the + # precondition into a function, if the construction involves an array type. + construction_functions.append( + ExpressionFunctionDeclaration( + FunctionSpecification( + f"Construct_{f.name}_Value", + "Field_Dependent_Value", + [Parameter(["Data"], const.TYPES_BYTES)], + ), + NamedAggregate( + ("Fld", Variable(f.affixed_name)), + (f"{f.name}_Value", Variable("Data")), + ), + [ + Precondition(Equal(Length("Data"), length.ada_expr())), + ], + ) + ) return UnitPart( [ @@ -695,7 +715,8 @@ def __create_field_dependent_type(self, message: Message) -> UnitPart: *variants, ], ), - ) + ), + *construction_functions, ] ) diff --git a/tests/spark/generated/rflx-expression-message.adb b/tests/spark/generated/rflx-expression-message.adb index 4ce066bfa..e6399e6ac 100644 --- a/tests/spark/generated/rflx-expression-message.adb +++ b/tests/spark/generated/rflx-expression-message.adb @@ -263,7 +263,7 @@ is procedure To_Context (Struct : Structure; Ctx : in out Context) is begin Reset (Ctx); - if Field_Condition (Ctx, (Fld => F_Payload, Payload_Value => Struct.Payload)) then + if Field_Condition (Ctx, Construct_Payload_Value (Struct.Payload)) then Set_Payload (Ctx, Struct.Payload); end if; end To_Context; diff --git a/tests/spark/generated/rflx-expression-message.ads b/tests/spark/generated/rflx-expression-message.ads index 23d0c2d59..1379d5fe9 100644 --- a/tests/spark/generated/rflx-expression-message.ads +++ b/tests/spark/generated/rflx-expression-message.ads @@ -49,6 +49,12 @@ is end case; end record; + function Construct_Payload_Value (Data : RFLX_Types.Bytes) return Field_Dependent_Value is + ((Fld => F_Payload, Payload_Value => Data)) + with + Pre => + Data'Length = 2; + procedure Initialize (Ctx : out Context; Buffer : in out RFLX_Types.Bytes_Ptr) with Pre => not Ctx'Constrained @@ -302,7 +308,7 @@ is and then Field_Last (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Field_Size (Ctx, F_Payload) mod RFLX_Types.Byte'Size = 0 and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)) - and then Field_Condition (Ctx, (Fld => F_Payload, Payload_Value => Data)), + and then Field_Condition (Ctx, Construct_Payload_Value (Data)), Post => Has_Buffer (Ctx) and Structural_Valid (Ctx, F_Payload) From 1f1b0290140a38e991ef15c39bcdb2a9d5c94cf7 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 14 May 2021 18:16:15 +0200 Subject: [PATCH 26/43] Revise generated getters for composite fields Remove the direct access to the byte representation of sequence fields and add getter functions for opaque fields. Ref. #292, #650 --- rflx/generator/generator.py | 14 ++- rflx/generator/parser.py | 114 ++++++++++++++++-- .../generated/rflx-derivation-message.adb | 7 ++ .../generated/rflx-derivation-message.ads | 8 ++ tests/spark/generated/rflx-ethernet-frame.adb | 7 ++ tests/spark/generated/rflx-ethernet-frame.ads | 8 ++ .../generated/rflx-expression-message.adb | 7 ++ .../generated/rflx-expression-message.ads | 8 ++ .../rflx-fixed_size-simple_message.adb | 7 ++ .../rflx-fixed_size-simple_message.ads | 8 ++ tests/spark/generated/rflx-icmp-message.adb | 7 ++ tests/spark/generated/rflx-icmp-message.ads | 8 ++ tests/spark/generated/rflx-ipv4-option.adb | 7 ++ tests/spark/generated/rflx-ipv4-option.ads | 8 ++ tests/spark/generated/rflx-ipv4-packet.adb | 17 +-- tests/spark/generated/rflx-ipv4-packet.ads | 16 +-- .../generated/rflx-sequence-inner_message.adb | 7 ++ .../generated/rflx-sequence-inner_message.ads | 8 ++ .../spark/generated/rflx-sequence-message.adb | 56 --------- .../spark/generated/rflx-sequence-message.ads | 56 --------- .../rflx-sequence-messages_message.adb | 14 --- .../rflx-sequence-messages_message.ads | 14 --- ...-sequence_size_defined_by_message_size.adb | 14 --- ...-sequence_size_defined_by_message_size.ads | 14 --- tests/spark/generated/rflx-tlv-message.adb | 7 ++ tests/spark/generated/rflx-tlv-message.ads | 8 ++ tests/spark/generated/rflx-udp-datagram.adb | 7 ++ tests/spark/generated/rflx-udp-datagram.ads | 8 ++ tests/spark/rflx-tlv_tests.adb | 3 +- 29 files changed, 263 insertions(+), 204 deletions(-) diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 505e57f1b..de78a7509 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -310,14 +310,17 @@ def __create_message(self, message: Message) -> None: scalar_fields = {} composite_fields = [] sequence_fields = {} + opaque_fields = [] for f, t in message.types.items(): if isinstance(t, Scalar): scalar_fields[f] = t if isinstance(t, Composite): composite_fields.append(f) - if isinstance(t, Sequence): - sequence_fields[f] = t + if isinstance(t, Sequence): + sequence_fields[f] = t + if isinstance(t, Opaque): + opaque_fields.append(f) unit += self.__create_use_type_clause(composite_fields) unit += self.__create_field_type(message) @@ -366,9 +369,10 @@ def __create_message(self, message: Message) -> None: unit += self.__parser.create_structural_valid_message_function(message) unit += self.__parser.create_valid_message_function(message) unit += self.__parser.create_incomplete_message_function(message) - unit += self.__parser.create_scalar_accessor_functions(scalar_fields) - unit += self.__parser.create_composite_accessor_procedures(composite_fields) - unit += self.__parser.create_generic_composite_accessor_procedures(composite_fields) + unit += self.__parser.create_scalar_getter_functions(scalar_fields) + unit += self.__parser.create_opaque_getter_functions(opaque_fields) + unit += self.__parser.create_opaque_getter_procedures(opaque_fields) + unit += self.__parser.create_generic_opaque_getter_procedures(opaque_fields) unit += self.__serializer.create_internal_functions(message, scalar_fields) unit += self.__serializer.create_scalar_setter_procedures(message, scalar_fields) diff --git a/rflx/generator/parser.py b/rflx/generator/parser.py index 172d37456..6649505a5 100644 --- a/rflx/generator/parser.py +++ b/rflx/generator/parser.py @@ -696,7 +696,7 @@ def create_incomplete_message_function(message: Message) -> UnitPart: ], ) - def create_scalar_accessor_functions(self, scalar_fields: Mapping[Field, Scalar]) -> UnitPart: + def create_scalar_getter_functions(self, scalar_fields: Mapping[Field, Scalar]) -> UnitPart: def specification(field: Field, field_type: Type) -> FunctionSpecification: if field_type.package == BUILTINS_PACKAGE: type_identifier = ID(field_type.name) @@ -742,7 +742,107 @@ def result(field: Field) -> Expr: ) @staticmethod - def create_composite_accessor_procedures(composite_fields: Sequence[Field]) -> UnitPart: + def create_opaque_getter_functions(opaque_fields: Sequence[Field]) -> UnitPart: + def name(field: Field) -> str: + return f"Get_{field.name}" + + def specification(field: Field) -> FunctionSpecification: + return FunctionSpecification( + name(field), + const.TYPES_BYTES, + [Parameter(["Ctx"], "Context")], + ) + + return UnitPart( + [ + SubprogramDeclaration( + specification(f), + [ + Precondition( + AndThen( + Call("Has_Buffer", [Variable("Ctx")]), + Call( + "Present", + [Variable("Ctx"), Variable(f.affixed_name)], + ), + Call( + "Valid_Next", + [Variable("Ctx"), Variable(f.affixed_name)], + ), + ) + ), + Postcondition( + Equal( + Length(Result(name(f))), + Call( + const.TYPES_TO_LENGTH, + [ + Call( + "Field_Size", + [ + Variable("Ctx"), + Variable(f.affixed_name), + ], + ) + ], + ), + ) + ), + ], + ) + for f in opaque_fields + ], + [ + SubprogramBody( + specification(f), + [ + ObjectDeclaration( + ["First"], + const.TYPES_INDEX, + Call( + const.TYPES_TO_INDEX, + [ + Selected( + Indexed( + Variable("Ctx.Cursors"), + Variable(f.affixed_name), + ), + "First", + ) + ], + ), + True, + ), + ObjectDeclaration( + ["Last"], + const.TYPES_INDEX, + Call( + const.TYPES_TO_INDEX, + [ + Selected( + Indexed( + Variable("Ctx.Cursors"), + Variable(f.affixed_name), + ), + "Last", + ) + ], + ), + True, + ), + ], + [ + ReturnStatement( + Slice(Variable("Ctx.Buffer.all"), Variable("First"), Variable("Last")), + ) + ], + ) + for f in opaque_fields + ], + ) + + @staticmethod + def create_opaque_getter_procedures(opaque_fields: Sequence[Field]) -> UnitPart: def specification(field: Field) -> ProcedureSpecification: return ProcedureSpecification( f"Get_{field.name}", @@ -784,7 +884,7 @@ def specification(field: Field) -> ProcedureSpecification: ) ], ) - for f in composite_fields + for f in opaque_fields ], [ SubprogramBody( @@ -832,12 +932,12 @@ def specification(field: Field) -> ProcedureSpecification: ) ], ) - for f in composite_fields + for f in opaque_fields ], ) @staticmethod - def create_generic_composite_accessor_procedures(composite_fields: Sequence[Field]) -> UnitPart: + def create_generic_opaque_getter_procedures(opaque_fields: Sequence[Field]) -> UnitPart: def specification(field: Field) -> ProcedureSpecification: return ProcedureSpecification( f"Generic_Get_{field.name}", [Parameter(["Ctx"], "Context")] @@ -866,7 +966,7 @@ def specification(field: Field) -> ProcedureSpecification: ) ], ) - for f in composite_fields + for f in opaque_fields ], [ SubprogramBody( @@ -918,7 +1018,7 @@ def specification(field: Field) -> ProcedureSpecification: ) ], ) - for f in composite_fields + for f in opaque_fields ], ) diff --git a/tests/spark/generated/rflx-derivation-message.adb b/tests/spark/generated/rflx-derivation-message.adb index 07ea6d542..d88ec30d3 100644 --- a/tests/spark/generated/rflx-derivation-message.adb +++ b/tests/spark/generated/rflx-derivation-message.adb @@ -264,6 +264,13 @@ is Verify (Ctx, F_Value); end Verify_Message; + function Get_Value (Ctx : Context) return RFLX_Types.Bytes is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).Last); + begin + return Ctx.Buffer.all (First .. Last); + end Get_Value; + procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).Last); diff --git a/tests/spark/generated/rflx-derivation-message.ads b/tests/spark/generated/rflx-derivation-message.ads index 393046c07..2c4f38610 100644 --- a/tests/spark/generated/rflx-derivation-message.ads +++ b/tests/spark/generated/rflx-derivation-message.ads @@ -267,6 +267,14 @@ is pragma Warnings (On, "precondition is always False"); + function Get_Value (Ctx : Context) return RFLX_Types.Bytes with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Value) + and then Valid_Next (Ctx, F_Value), + Post => + Get_Value'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)); + procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) diff --git a/tests/spark/generated/rflx-ethernet-frame.adb b/tests/spark/generated/rflx-ethernet-frame.adb index c41f505f9..0d5971eed 100644 --- a/tests/spark/generated/rflx-ethernet-frame.adb +++ b/tests/spark/generated/rflx-ethernet-frame.adb @@ -403,6 +403,13 @@ is Verify (Ctx, F_Payload); end Verify_Message; + function Get_Payload (Ctx : Context) return RFLX_Types.Bytes is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); + begin + return Ctx.Buffer.all (First .. Last); + end Get_Payload; + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); diff --git a/tests/spark/generated/rflx-ethernet-frame.ads b/tests/spark/generated/rflx-ethernet-frame.ads index 2fa31e3db..98dd1592e 100644 --- a/tests/spark/generated/rflx-ethernet-frame.ads +++ b/tests/spark/generated/rflx-ethernet-frame.ads @@ -289,6 +289,14 @@ is pragma Warnings (On, "precondition is always False"); + function Get_Payload (Ctx : Context) return RFLX_Types.Bytes with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Payload) + and then Valid_Next (Ctx, F_Payload), + Post => + Get_Payload'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) diff --git a/tests/spark/generated/rflx-expression-message.adb b/tests/spark/generated/rflx-expression-message.adb index e6399e6ac..cfb9c4cbf 100644 --- a/tests/spark/generated/rflx-expression-message.adb +++ b/tests/spark/generated/rflx-expression-message.adb @@ -183,6 +183,13 @@ is Verify (Ctx, F_Payload); end Verify_Message; + function Get_Payload (Ctx : Context) return RFLX_Types.Bytes is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); + begin + return Ctx.Buffer.all (First .. Last); + end Get_Payload; + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); diff --git a/tests/spark/generated/rflx-expression-message.ads b/tests/spark/generated/rflx-expression-message.ads index 1379d5fe9..6711f7ad2 100644 --- a/tests/spark/generated/rflx-expression-message.ads +++ b/tests/spark/generated/rflx-expression-message.ads @@ -261,6 +261,14 @@ is pragma Warnings (On, "precondition is always False"); + function Get_Payload (Ctx : Context) return RFLX_Types.Bytes with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Payload) + and then Valid_Next (Ctx, F_Payload), + Post => + Get_Payload'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) diff --git a/tests/spark/generated/rflx-fixed_size-simple_message.adb b/tests/spark/generated/rflx-fixed_size-simple_message.adb index cc2ad09ea..767e2e3f4 100644 --- a/tests/spark/generated/rflx-fixed_size-simple_message.adb +++ b/tests/spark/generated/rflx-fixed_size-simple_message.adb @@ -230,6 +230,13 @@ is Verify (Ctx, F_Data); end Verify_Message; + function Get_Data (Ctx : Context) return RFLX_Types.Bytes is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).Last); + begin + return Ctx.Buffer.all (First .. Last); + end Get_Data; + procedure Get_Data (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).Last); diff --git a/tests/spark/generated/rflx-fixed_size-simple_message.ads b/tests/spark/generated/rflx-fixed_size-simple_message.ads index 71ee159a9..76e3f11da 100644 --- a/tests/spark/generated/rflx-fixed_size-simple_message.ads +++ b/tests/spark/generated/rflx-fixed_size-simple_message.ads @@ -261,6 +261,14 @@ is pragma Warnings (On, "precondition is always False"); + function Get_Data (Ctx : Context) return RFLX_Types.Bytes with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Data) + and then Valid_Next (Ctx, F_Data), + Post => + Get_Data'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)); + procedure Get_Data (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) diff --git a/tests/spark/generated/rflx-icmp-message.adb b/tests/spark/generated/rflx-icmp-message.adb index a106aa213..f053e8573 100644 --- a/tests/spark/generated/rflx-icmp-message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -900,6 +900,13 @@ is Verify (Ctx, F_Transmit_Timestamp); end Verify_Message; + function Get_Data (Ctx : Context) return RFLX_Types.Bytes is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).Last); + begin + return Ctx.Buffer.all (First .. Last); + end Get_Data; + procedure Get_Data (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).Last); diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index 970fe45ee..760ed1594 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -343,6 +343,14 @@ is pragma Warnings (On, "precondition is always False"); + function Get_Data (Ctx : Context) return RFLX_Types.Bytes with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Data) + and then Valid_Next (Ctx, F_Data), + Post => + Get_Data'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)); + procedure Get_Data (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) diff --git a/tests/spark/generated/rflx-ipv4-option.adb b/tests/spark/generated/rflx-ipv4-option.adb index fe9b22a75..d268e2f33 100644 --- a/tests/spark/generated/rflx-ipv4-option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -338,6 +338,13 @@ is Verify (Ctx, F_Option_Data); end Verify_Message; + function Get_Option_Data (Ctx : Context) return RFLX_Types.Bytes is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Option_Data).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Option_Data).Last); + begin + return Ctx.Buffer.all (First .. Last); + end Get_Option_Data; + procedure Get_Option_Data (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Option_Data).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Option_Data).Last); diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index ba3efd9aa..aaf74bae1 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -280,6 +280,14 @@ is pragma Warnings (On, "precondition is always False"); + function Get_Option_Data (Ctx : Context) return RFLX_Types.Bytes with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Option_Data) + and then Valid_Next (Ctx, F_Option_Data), + Post => + Get_Option_Data'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Option_Data)); + procedure Get_Option_Data (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) diff --git a/tests/spark/generated/rflx-ipv4-packet.adb b/tests/spark/generated/rflx-ipv4-packet.adb index cc7014c77..7a8bd957e 100644 --- a/tests/spark/generated/rflx-ipv4-packet.adb +++ b/tests/spark/generated/rflx-ipv4-packet.adb @@ -911,12 +911,12 @@ is Verify (Ctx, F_Payload); end Verify_Message; - procedure Get_Options (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Options).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Options).Last); + function Get_Payload (Ctx : Context) return RFLX_Types.Bytes is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin - Data := Ctx.Buffer.all (First .. Last); - end Get_Options; + return Ctx.Buffer.all (First .. Last); + end Get_Payload; procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); @@ -925,13 +925,6 @@ is Data := Ctx.Buffer.all (First .. Last); end Get_Payload; - procedure Generic_Get_Options (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Options).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Options).Last); - begin - Process_Options (Ctx.Buffer.all (First .. Last)); - end Generic_Get_Options; - procedure Generic_Get_Payload (Ctx : Context) is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); diff --git a/tests/spark/generated/rflx-ipv4-packet.ads b/tests/spark/generated/rflx-ipv4-packet.ads index 64074ceb6..e5413d495 100644 --- a/tests/spark/generated/rflx-ipv4-packet.ads +++ b/tests/spark/generated/rflx-ipv4-packet.ads @@ -347,12 +347,13 @@ is pragma Warnings (On, "precondition is always False"); - procedure Get_Options (Ctx : Context; Data : out RFLX_Types.Bytes) with + function Get_Payload (Ctx : Context) return RFLX_Types.Bytes with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Options) - and then Valid_Next (Ctx, F_Options) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Options)); + and then Present (Ctx, F_Payload) + and then Valid_Next (Ctx, F_Payload), + Post => + Get_Payload'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => @@ -361,13 +362,6 @@ is and then Valid_Next (Ctx, F_Payload) and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); - generic - with procedure Process_Options (Options : RFLX_Types.Bytes); - procedure Generic_Get_Options (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Options); - generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); procedure Generic_Get_Payload (Ctx : Context) with diff --git a/tests/spark/generated/rflx-sequence-inner_message.adb b/tests/spark/generated/rflx-sequence-inner_message.adb index 489d41eae..365eead0f 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.adb +++ b/tests/spark/generated/rflx-sequence-inner_message.adb @@ -230,6 +230,13 @@ is Verify (Ctx, F_Payload); end Verify_Message; + function Get_Payload (Ctx : Context) return RFLX_Types.Bytes is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); + begin + return Ctx.Buffer.all (First .. Last); + end Get_Payload; + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); diff --git a/tests/spark/generated/rflx-sequence-inner_message.ads b/tests/spark/generated/rflx-sequence-inner_message.ads index 420aa4174..6649e0519 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.ads +++ b/tests/spark/generated/rflx-sequence-inner_message.ads @@ -259,6 +259,14 @@ is pragma Warnings (On, "precondition is always False"); + function Get_Payload (Ctx : Context) return RFLX_Types.Bytes with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Payload) + and then Valid_Next (Ctx, F_Payload), + Post => + Get_Payload'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) diff --git a/tests/spark/generated/rflx-sequence-message.adb b/tests/spark/generated/rflx-sequence-message.adb index d089fd517..a7685cd85 100644 --- a/tests/spark/generated/rflx-sequence-message.adb +++ b/tests/spark/generated/rflx-sequence-message.adb @@ -308,62 +308,6 @@ is Verify (Ctx, F_AV_Enumeration_Vector); end Verify_Message; - procedure Get_Modular_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Modular_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Modular_Vector).Last); - begin - Data := Ctx.Buffer.all (First .. Last); - end Get_Modular_Vector; - - procedure Get_Range_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Range_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Range_Vector).Last); - begin - Data := Ctx.Buffer.all (First .. Last); - end Get_Range_Vector; - - procedure Get_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Enumeration_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Enumeration_Vector).Last); - begin - Data := Ctx.Buffer.all (First .. Last); - end Get_Enumeration_Vector; - - procedure Get_AV_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_AV_Enumeration_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_AV_Enumeration_Vector).Last); - begin - Data := Ctx.Buffer.all (First .. Last); - end Get_AV_Enumeration_Vector; - - procedure Generic_Get_Modular_Vector (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Modular_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Modular_Vector).Last); - begin - Process_Modular_Vector (Ctx.Buffer.all (First .. Last)); - end Generic_Get_Modular_Vector; - - procedure Generic_Get_Range_Vector (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Range_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Range_Vector).Last); - begin - Process_Range_Vector (Ctx.Buffer.all (First .. Last)); - end Generic_Get_Range_Vector; - - procedure Generic_Get_Enumeration_Vector (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Enumeration_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Enumeration_Vector).Last); - begin - Process_Enumeration_Vector (Ctx.Buffer.all (First .. Last)); - end Generic_Get_Enumeration_Vector; - - procedure Generic_Get_AV_Enumeration_Vector (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_AV_Enumeration_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_AV_Enumeration_Vector).Last); - begin - Process_AV_Enumeration_Vector (Ctx.Buffer.all (First .. Last)); - end Generic_Get_AV_Enumeration_Vector; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained diff --git a/tests/spark/generated/rflx-sequence-message.ads b/tests/spark/generated/rflx-sequence-message.ads index 912768953..13e142c68 100644 --- a/tests/spark/generated/rflx-sequence-message.ads +++ b/tests/spark/generated/rflx-sequence-message.ads @@ -263,62 +263,6 @@ is pragma Warnings (On, "precondition is always False"); - procedure Get_Modular_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Present (Ctx, F_Modular_Vector) - and then Valid_Next (Ctx, F_Modular_Vector) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Modular_Vector)); - - procedure Get_Range_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Present (Ctx, F_Range_Vector) - and then Valid_Next (Ctx, F_Range_Vector) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Range_Vector)); - - procedure Get_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Present (Ctx, F_Enumeration_Vector) - and then Valid_Next (Ctx, F_Enumeration_Vector) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Enumeration_Vector)); - - procedure Get_AV_Enumeration_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Present (Ctx, F_AV_Enumeration_Vector) - and then Valid_Next (Ctx, F_AV_Enumeration_Vector) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_AV_Enumeration_Vector)); - - generic - with procedure Process_Modular_Vector (Modular_Vector : RFLX_Types.Bytes); - procedure Generic_Get_Modular_Vector (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Modular_Vector); - - generic - with procedure Process_Range_Vector (Range_Vector : RFLX_Types.Bytes); - procedure Generic_Get_Range_Vector (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Range_Vector); - - generic - with procedure Process_Enumeration_Vector (Enumeration_Vector : RFLX_Types.Bytes); - procedure Generic_Get_Enumeration_Vector (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Enumeration_Vector); - - generic - with procedure Process_AV_Enumeration_Vector (AV_Enumeration_Vector : RFLX_Types.Bytes); - procedure Generic_Get_AV_Enumeration_Vector (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_AV_Enumeration_Vector); - procedure Set_Length (Ctx : in out Context; Val : RFLX.Sequence.Length) with Pre => not Ctx'Constrained diff --git a/tests/spark/generated/rflx-sequence-messages_message.adb b/tests/spark/generated/rflx-sequence-messages_message.adb index 2d0cad919..0fff931c8 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.adb +++ b/tests/spark/generated/rflx-sequence-messages_message.adb @@ -230,20 +230,6 @@ is Verify (Ctx, F_Messages); end Verify_Message; - procedure Get_Messages (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Messages).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Messages).Last); - begin - Data := Ctx.Buffer.all (First .. Last); - end Get_Messages; - - procedure Generic_Get_Messages (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Messages).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Messages).Last); - begin - Process_Messages (Ctx.Buffer.all (First .. Last)); - end Generic_Get_Messages; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained diff --git a/tests/spark/generated/rflx-sequence-messages_message.ads b/tests/spark/generated/rflx-sequence-messages_message.ads index 3af906e90..8f82a9854 100644 --- a/tests/spark/generated/rflx-sequence-messages_message.ads +++ b/tests/spark/generated/rflx-sequence-messages_message.ads @@ -260,20 +260,6 @@ is pragma Warnings (On, "precondition is always False"); - procedure Get_Messages (Ctx : Context; Data : out RFLX_Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Present (Ctx, F_Messages) - and then Valid_Next (Ctx, F_Messages) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Messages)); - - generic - with procedure Process_Messages (Messages : RFLX_Types.Bytes); - procedure Generic_Get_Messages (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Messages); - procedure Set_Length (Ctx : in out Context; Val : RFLX.Sequence.Length) with Pre => not Ctx'Constrained diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb index 8ee0f6bb8..7638c7fc0 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.adb @@ -230,20 +230,6 @@ is Verify (Ctx, F_Vector); end Verify_Message; - procedure Get_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Vector).Last); - begin - Data := Ctx.Buffer.all (First .. Last); - end Get_Vector; - - procedure Generic_Get_Vector (Ctx : Context) is - First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Vector).First); - Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Vector).Last); - begin - Process_Vector (Ctx.Buffer.all (First .. Last)); - end Generic_Get_Vector; - procedure Set_Field_Value (Ctx : in out Context; Val : Field_Dependent_Value; Fst, Lst : out RFLX_Types.Bit_Index) with Pre => not Ctx'Constrained diff --git a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads index 21c20810a..a7bc3fa51 100644 --- a/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads +++ b/tests/spark/generated/rflx-sequence-sequence_size_defined_by_message_size.ads @@ -260,20 +260,6 @@ is pragma Warnings (On, "precondition is always False"); - procedure Get_Vector (Ctx : Context; Data : out RFLX_Types.Bytes) with - Pre => - Has_Buffer (Ctx) - and then Present (Ctx, F_Vector) - and then Valid_Next (Ctx, F_Vector) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Vector)); - - generic - with procedure Process_Vector (Vector : RFLX_Types.Bytes); - procedure Generic_Get_Vector (Ctx : Context) with - Pre => - Has_Buffer (Ctx) - and Present (Ctx, F_Vector); - procedure Set_Header (Ctx : in out Context; Val : RFLX.Sequence.Enumeration) with Pre => not Ctx'Constrained diff --git a/tests/spark/generated/rflx-tlv-message.adb b/tests/spark/generated/rflx-tlv-message.adb index f78587b34..e71fb175e 100644 --- a/tests/spark/generated/rflx-tlv-message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -264,6 +264,13 @@ is Verify (Ctx, F_Value); end Verify_Message; + function Get_Value (Ctx : Context) return RFLX_Types.Bytes is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).Last); + begin + return Ctx.Buffer.all (First .. Last); + end Get_Value; + procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).Last); diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index deea9dd9f..6b21853b5 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -265,6 +265,14 @@ is pragma Warnings (On, "precondition is always False"); + function Get_Value (Ctx : Context) return RFLX_Types.Bytes with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Value) + and then Valid_Next (Ctx, F_Value), + Post => + Get_Value'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)); + procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) diff --git a/tests/spark/generated/rflx-udp-datagram.adb b/tests/spark/generated/rflx-udp-datagram.adb index c57eadcb3..a282b366f 100644 --- a/tests/spark/generated/rflx-udp-datagram.adb +++ b/tests/spark/generated/rflx-udp-datagram.adb @@ -310,6 +310,13 @@ is Verify (Ctx, F_Payload); end Verify_Message; + function Get_Payload (Ctx : Context) return RFLX_Types.Bytes is + First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); + Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); + begin + return Ctx.Buffer.all (First .. Last); + end Get_Payload; + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); diff --git a/tests/spark/generated/rflx-udp-datagram.ads b/tests/spark/generated/rflx-udp-datagram.ads index cb0beb36e..dfb6d4a62 100644 --- a/tests/spark/generated/rflx-udp-datagram.ads +++ b/tests/spark/generated/rflx-udp-datagram.ads @@ -277,6 +277,14 @@ is pragma Warnings (On, "precondition is always False"); + function Get_Payload (Ctx : Context) return RFLX_Types.Bytes with + Pre => + Has_Buffer (Ctx) + and then Present (Ctx, F_Payload) + and then Valid_Next (Ctx, F_Payload), + Post => + Get_Payload'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); + procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) diff --git a/tests/spark/rflx-tlv_tests.adb b/tests/spark/rflx-tlv_tests.adb index 1d29dfa48..f765ba649 100644 --- a/tests/spark/rflx-tlv_tests.adb +++ b/tests/spark/rflx-tlv_tests.adb @@ -48,7 +48,7 @@ package body RFLX.TLV_Tests is Context : TLV.Message.Context; Tag : TLV.Tag; Length : TLV.Length; - Value : RFLX_Builtin_Types.Bytes := (0, 0, 0, 0); + Value : RFLX_Builtin_Types.Bytes := (0, 0, 0, 0); begin TLV.Message.Initialize (Context, Buffer); TLV.Message.Verify_Message (Context); @@ -71,6 +71,7 @@ package body RFLX.TLV_Tests is .. RFLX_Builtin_Types.Index (RFLX_Builtin_Types.Length (Value'First) + RFLX_Types.To_Length (TLV.Message.Field_Size (Context, TLV.Message.F_Value)) - 1))); Assert (Value, (1, 2, 3, 4), "Unexpected Value"); + Assert (TLV.Message.Get_Value (Context), (1, 2, 3, 4), "Unexpected Value returned by function"); end if; end if; end if; From 6d68861423904257932a5c9d279af885cc7f6ae5 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 18 May 2021 18:56:52 +0200 Subject: [PATCH 27/43] Expand generation of record types to definite messages Definite messages are messages with a bounded size and no optional fields. Ref. #292, #650 --- rflx/ada.py | 13 +++ rflx/expression.py | 11 +++ rflx/generator/generator.py | 89 +++++++++++++++++-- rflx/generator/parser.py | 25 ++++-- rflx/model/message.py | 76 ++++++++++++++++ rflx/model/session.py | 1 + .../generated/rflx-derivation-message.adb | 3 +- .../generated/rflx-derivation-message.ads | 6 +- tests/spark/generated/rflx-ethernet-frame.adb | 3 +- tests/spark/generated/rflx-ethernet-frame.ads | 6 +- .../generated/rflx-expression-message.adb | 3 +- .../generated/rflx-expression-message.ads | 6 +- .../rflx-fixed_size-simple_message.adb | 3 +- .../rflx-fixed_size-simple_message.ads | 6 +- tests/spark/generated/rflx-icmp-message.adb | 3 +- tests/spark/generated/rflx-icmp-message.ads | 6 +- tests/spark/generated/rflx-ipv4-option.adb | 3 +- tests/spark/generated/rflx-ipv4-option.ads | 6 +- tests/spark/generated/rflx-ipv4-packet.adb | 3 +- tests/spark/generated/rflx-ipv4-packet.ads | 6 +- .../generated/rflx-sequence-inner_message.adb | 22 ++++- .../generated/rflx-sequence-inner_message.ads | 26 +++++- tests/spark/generated/rflx-tlv-message.adb | 3 +- tests/spark/generated/rflx-tlv-message.ads | 6 +- tests/spark/generated/rflx-udp-datagram.adb | 28 +++++- tests/spark/generated/rflx-udp-datagram.ads | 29 +++++- tests/unit/model/message_test.py | 54 +++++++++++ 27 files changed, 396 insertions(+), 50 deletions(-) diff --git a/rflx/ada.py b/rflx/ada.py index 31c7ce050..18b8ac947 100644 --- a/rflx/ada.py +++ b/rflx/ada.py @@ -1426,6 +1426,19 @@ def __str__(self) -> str: return f"case {self.control_expression} is{indent(cases, 3)}\nend case;" +class Declare(Statement): + def __init__( + self, declarations: Sequence[Declaration], statements: Sequence[Statement] + ) -> None: + self.declarations = declarations + self.statements = statements + + def __str__(self) -> str: + declarations = indent("\n".join(str(s) for s in self.declarations), 3) + statements = indent("\n".join(str(s) for s in self.statements), 3) + return f"declare\n{declarations}\nbegin\n{statements}\nend;" + + class Parameter(Base): def __init__( self, identifiers: Sequence[StrID], type_identifier: StrID, default: Expr = None diff --git a/rflx/expression.py b/rflx/expression.py index 2eae80b87..b0e1677f1 100644 --- a/rflx/expression.py +++ b/rflx/expression.py @@ -2313,6 +2313,17 @@ def substitution( ) +def max_value(target: Expr, facts: Sequence[Expr]) -> Number: + opt = z3.Optimize() + opt.add(*[e.z3expr() for e in facts]) + value = opt.maximize(target.z3expr()) + result = opt.check() + assert result == z3.sat + upper = value.upper() + assert isinstance(upper, z3.IntNumRef) + return Number(upper.as_long()) + + def _entity_name(expr: Expr) -> str: expr_type = ( "variable" diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index de78a7509..9eebea048 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -28,6 +28,7 @@ ContextItem, ContractCases, Declaration, + Declare, DefaultInitialCondition, Depends, Discriminant, @@ -2736,7 +2737,7 @@ def __create_structure(self, message: Message) -> UnitPart: return unit def __create_structure_type(self, message: Message) -> UnitPart: - if not message.has_fixed_size: + if not message.is_definite: return UnitPart() assert len(message.paths(FINAL)) == 1 @@ -2744,6 +2745,9 @@ def __create_structure_type(self, message: Message) -> UnitPart: components = [] for path in message.paths(FINAL): + if any(isinstance(t, Opaque) for t in message.types.values()): + field_size = message.max_field_sizes() + for link in path: if link.target == FINAL: continue @@ -2761,7 +2765,10 @@ def __create_structure_type(self, message: Message) -> UnitPart: First(const.TYPES_INDEX), Add( First(const.TYPES_INDEX), - expr.Sub(expr.Div(link.size, expr.Number(8)), expr.Number(1)) + expr.Sub( + expr.Div(field_size[link.target], expr.Number(8)), + expr.Number(1), + ) .simplified() .ada_expr(), ), @@ -2780,7 +2787,7 @@ def __create_structure_type(self, message: Message) -> UnitPart: @staticmethod def __create_to_structure_procedure(message: Message) -> UnitPart: - if not message.has_fixed_size: + if not message.is_definite: return UnitPart() assert len(message.paths(FINAL)) == 1 @@ -2837,7 +2844,7 @@ def __create_to_structure_procedure(message: Message) -> UnitPart: @staticmethod def __create_to_context_procedure(message: Message) -> UnitPart: - if not message.has_fixed_size: + if not message.is_definite: return UnitPart() assert len(message.paths(FINAL)) == 1 @@ -2874,6 +2881,78 @@ def __create_to_context_procedure(message: Message) -> UnitPart: ) ) statements = dependent_statements + elif isinstance(type_, Opaque) and link.size.variables(): + field_size = f"{link.target.identifier}_Size" + dependent_statements = [ + CallStatement( + f"Set_{link.target.identifier}", + [ + Variable("Ctx"), + Slice( + Variable(f"Struct.{link.target.identifier}"), + First(f"Struct.{link.target.identifier}"), + Add( + First(f"Struct.{link.target.identifier}"), + Call( + const.TYPES_INDEX, + [ + Add( + Call( + const.TYPES_TO_LENGTH, + [Variable(field_size)], + ), + Number(1), + ) + ], + ), + Number(-2), + ), + ), + ], + ) + ] + statements.append( + Declare( + [ + ObjectDeclaration( + [field_size], + const.TYPES_BIT_LENGTH, + Call( + const.TYPES_BIT_LENGTH, + [ + link.size.substituted( + lambda x: expr.Variable("Struct" * x.identifier) + if isinstance(x, expr.Variable) + and Field(x.identifier) in message.fields + else x + ).ada_expr() + ], + ), + constant=True, + ) + ], + [ + IfStatement( + [ + ( + Equal( + Variable(field_size), + Call( + "Field_Size", + [ + Variable("Ctx"), + Variable(link.target.affixed_name), + ], + ), + ), + dependent_statements, + ) + ] + ) + ], + ) + ) + statements = dependent_statements else: set_field = CallStatement( f"Set_{link.target.identifier}", @@ -2906,7 +2985,7 @@ def __create_to_context_procedure(message: Message) -> UnitPart: [Parameter(["Struct"], "Structure"), InOutParameter(["Ctx"], "Context")], ) first_field = message.fields[0] - message_size = message.size() + message_size = message.max_size() assert isinstance(message_size, expr.Number) return UnitPart( diff --git a/rflx/generator/parser.py b/rflx/generator/parser.py index 6649505a5..52886fba5 100644 --- a/rflx/generator/parser.py +++ b/rflx/generator/parser.py @@ -19,9 +19,11 @@ Equal, Expr, ExpressionFunctionDeclaration, + First, FormalSubprogramDeclaration, FunctionSpecification, GenericFunctionInstantiation, + GreaterEqual, If, IfStatement, Indexed, @@ -48,6 +50,7 @@ Size, Slice, String, + Sub, Subprogram, SubprogramBody, SubprogramDeclaration, @@ -762,7 +765,7 @@ def specification(field: Field) -> FunctionSpecification: AndThen( Call("Has_Buffer", [Variable("Ctx")]), Call( - "Present", + "Structural_Valid", [Variable("Ctx"), Variable(f.affixed_name)], ), Call( @@ -858,14 +861,14 @@ def specification(field: Field) -> ProcedureSpecification: AndThen( Call("Has_Buffer", [Variable("Ctx")]), Call( - "Present", + "Structural_Valid", [Variable("Ctx"), Variable(f.affixed_name)], ), Call( "Valid_Next", [Variable("Ctx"), Variable(f.affixed_name)], ), - Equal( + GreaterEqual( Length("Data"), Call( const.TYPES_TO_LENGTH, @@ -928,8 +931,20 @@ def specification(field: Field) -> ProcedureSpecification: [ Assignment( "Data", - Slice(Variable("Ctx.Buffer.all"), Variable("First"), Variable("Last")), - ) + NamedAggregate(("others", First(const.TYPES_BYTE))), + ), + Assignment( + Slice( + Variable("Data"), + First("Data"), + Add(First("Data"), Sub(Variable("Last"), Variable("First"))), + ), + Slice( + Variable("Ctx.Buffer.all"), + Variable("First"), + Variable("Last"), + ), + ), ], ) for f in opaque_fields diff --git a/rflx/model/message.py b/rflx/model/message.py index e8c73cdfd..cd8d2c63f 100644 --- a/rflx/model/message.py +++ b/rflx/model/message.py @@ -668,6 +668,23 @@ def has_fixed_size(self) -> bool: - set(self._type_literals.keys()) ) + @property + def has_bounded_size(self) -> bool: + """ + Return true if the message has a bounded size. + + All messages containing a reference to `Message` in a size aspect are considered unbounded, + even if the affected field size is restricted by a condition. + """ + return all( + v.identifier != ID("Message") for l in self.structure for v in l.size.variables() + ) + + @property + def is_definite(self) -> bool: + """Return true if the message has a bounded size and no optional fields.""" + return len(self.paths(FINAL)) <= 1 and self.has_bounded_size + def size(self, field_values: Mapping[Field, expr.Expr] = None) -> expr.Expr: field_values = field_values if field_values else {} @@ -772,6 +789,65 @@ def remove_variable_prefix(expression: expr.Expr) -> expr.Expr: assert False + def max_size(self) -> expr.Number: + if not self.structure: + return expr.Number(0) + + if not self.has_bounded_size: + fail( + "unable to calculate maximum size of unbounded message", + Subsystem.MODEL, + Severity.ERROR, + self.location, + ) + + max_size = expr.Number(0) + + for path in self.paths(FINAL): + max_size = max(max_size, self.__max_value(expr.Size("Message"), path)) + + return max_size + + def max_field_sizes(self) -> Dict[Field, expr.Number]: + if not self.structure: + return {} + + if not self.has_bounded_size: + fail( + "unable to calculate maximum field sizes of unbounded message", + Subsystem.MODEL, + Severity.ERROR, + self.location, + ) + + result = {f: expr.Number(0) for f in self.fields} + + for path in self.paths(FINAL): + for l in path[:-1]: + result[l.target] = max( + result[l.target], self.__max_value(expr.Size(l.target.name), path) + ) + + return result + + def __max_value(self, target: expr.Expr, path: Tuple[Link, ...]) -> expr.Number: + message_size = expr.Add( + *[ + expr.Size(link.target.name) + for link in path + if link.target != FINAL and link.first == expr.UNDEFINED + ] + ) + link_expressions = [fact for link in path for fact in self.__link_expression(link)] + return expr.max_value( + target, + [ + expr.Equal(expr.Size("Message"), message_size), + *link_expressions, + *self.type_constraints(expr.TRUE), + ], + ) + def __verify_expression_types(self) -> None: types: Dict[ID, mty.Type] = {} diff --git a/rflx/model/session.py b/rflx/model/session.py index 4c3aa9393..596404cba 100644 --- a/rflx/model/session.py +++ b/rflx/model/session.py @@ -368,6 +368,7 @@ def undefined_type(type_identifier: StrID, location: Optional[Location]) -> None ) if type_identifier in self.types: argument_types.append(self.types[type_identifier].type_) + model_type = self.types[type_identifier] else: argument_types.append(rty.Any()) undefined_type(a.type_identifier, d.location) diff --git a/tests/spark/generated/rflx-derivation-message.adb b/tests/spark/generated/rflx-derivation-message.adb index d88ec30d3..a9b1c62b0 100644 --- a/tests/spark/generated/rflx-derivation-message.adb +++ b/tests/spark/generated/rflx-derivation-message.adb @@ -275,7 +275,8 @@ is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).Last); begin - Data := Ctx.Buffer.all (First .. Last); + Data := (others => RFLX_Types.Byte'First); + Data (Data'First .. Data'First + (Last - First)) := Ctx.Buffer.all (First .. Last); end Get_Value; procedure Generic_Get_Value (Ctx : Context) is diff --git a/tests/spark/generated/rflx-derivation-message.ads b/tests/spark/generated/rflx-derivation-message.ads index 2c4f38610..0e7fae123 100644 --- a/tests/spark/generated/rflx-derivation-message.ads +++ b/tests/spark/generated/rflx-derivation-message.ads @@ -270,7 +270,7 @@ is function Get_Value (Ctx : Context) return RFLX_Types.Bytes with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Value) + and then Structural_Valid (Ctx, F_Value) and then Valid_Next (Ctx, F_Value), Post => Get_Value'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)); @@ -278,9 +278,9 @@ is procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Value) + and then Structural_Valid (Ctx, F_Value) and then Valid_Next (Ctx, F_Value) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)); + and then Data'Length >= RFLX_Types.To_Length (Field_Size (Ctx, F_Value)); generic with procedure Process_Value (Value : RFLX_Types.Bytes); diff --git a/tests/spark/generated/rflx-ethernet-frame.adb b/tests/spark/generated/rflx-ethernet-frame.adb index 0d5971eed..48574c560 100644 --- a/tests/spark/generated/rflx-ethernet-frame.adb +++ b/tests/spark/generated/rflx-ethernet-frame.adb @@ -414,7 +414,8 @@ is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin - Data := Ctx.Buffer.all (First .. Last); + Data := (others => RFLX_Types.Byte'First); + Data (Data'First .. Data'First + (Last - First)) := Ctx.Buffer.all (First .. Last); end Get_Payload; procedure Generic_Get_Payload (Ctx : Context) is diff --git a/tests/spark/generated/rflx-ethernet-frame.ads b/tests/spark/generated/rflx-ethernet-frame.ads index 98dd1592e..fdb5abb25 100644 --- a/tests/spark/generated/rflx-ethernet-frame.ads +++ b/tests/spark/generated/rflx-ethernet-frame.ads @@ -292,7 +292,7 @@ is function Get_Payload (Ctx : Context) return RFLX_Types.Bytes with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Payload) + and then Structural_Valid (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload), Post => Get_Payload'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); @@ -300,9 +300,9 @@ is procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Payload) + and then Structural_Valid (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); + and then Data'Length >= RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); diff --git a/tests/spark/generated/rflx-expression-message.adb b/tests/spark/generated/rflx-expression-message.adb index cfb9c4cbf..e5a044101 100644 --- a/tests/spark/generated/rflx-expression-message.adb +++ b/tests/spark/generated/rflx-expression-message.adb @@ -194,7 +194,8 @@ is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin - Data := Ctx.Buffer.all (First .. Last); + Data := (others => RFLX_Types.Byte'First); + Data (Data'First .. Data'First + (Last - First)) := Ctx.Buffer.all (First .. Last); end Get_Payload; procedure Generic_Get_Payload (Ctx : Context) is diff --git a/tests/spark/generated/rflx-expression-message.ads b/tests/spark/generated/rflx-expression-message.ads index 6711f7ad2..1175e4745 100644 --- a/tests/spark/generated/rflx-expression-message.ads +++ b/tests/spark/generated/rflx-expression-message.ads @@ -264,7 +264,7 @@ is function Get_Payload (Ctx : Context) return RFLX_Types.Bytes with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Payload) + and then Structural_Valid (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload), Post => Get_Payload'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); @@ -272,9 +272,9 @@ is procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Payload) + and then Structural_Valid (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); + and then Data'Length >= RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); diff --git a/tests/spark/generated/rflx-fixed_size-simple_message.adb b/tests/spark/generated/rflx-fixed_size-simple_message.adb index 767e2e3f4..f0c5a1526 100644 --- a/tests/spark/generated/rflx-fixed_size-simple_message.adb +++ b/tests/spark/generated/rflx-fixed_size-simple_message.adb @@ -241,7 +241,8 @@ is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).Last); begin - Data := Ctx.Buffer.all (First .. Last); + Data := (others => RFLX_Types.Byte'First); + Data (Data'First .. Data'First + (Last - First)) := Ctx.Buffer.all (First .. Last); end Get_Data; procedure Generic_Get_Data (Ctx : Context) is diff --git a/tests/spark/generated/rflx-fixed_size-simple_message.ads b/tests/spark/generated/rflx-fixed_size-simple_message.ads index 76e3f11da..cd3e9ba57 100644 --- a/tests/spark/generated/rflx-fixed_size-simple_message.ads +++ b/tests/spark/generated/rflx-fixed_size-simple_message.ads @@ -264,7 +264,7 @@ is function Get_Data (Ctx : Context) return RFLX_Types.Bytes with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Data) + and then Structural_Valid (Ctx, F_Data) and then Valid_Next (Ctx, F_Data), Post => Get_Data'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)); @@ -272,9 +272,9 @@ is procedure Get_Data (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Data) + and then Structural_Valid (Ctx, F_Data) and then Valid_Next (Ctx, F_Data) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)); + and then Data'Length >= RFLX_Types.To_Length (Field_Size (Ctx, F_Data)); generic with procedure Process_Data (Data : RFLX_Types.Bytes); diff --git a/tests/spark/generated/rflx-icmp-message.adb b/tests/spark/generated/rflx-icmp-message.adb index f053e8573..19a45cf4d 100644 --- a/tests/spark/generated/rflx-icmp-message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -911,7 +911,8 @@ is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Data).Last); begin - Data := Ctx.Buffer.all (First .. Last); + Data := (others => RFLX_Types.Byte'First); + Data (Data'First .. Data'First + (Last - First)) := Ctx.Buffer.all (First .. Last); end Get_Data; procedure Generic_Get_Data (Ctx : Context) is diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index 760ed1594..19108bf7f 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -346,7 +346,7 @@ is function Get_Data (Ctx : Context) return RFLX_Types.Bytes with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Data) + and then Structural_Valid (Ctx, F_Data) and then Valid_Next (Ctx, F_Data), Post => Get_Data'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)); @@ -354,9 +354,9 @@ is procedure Get_Data (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Data) + and then Structural_Valid (Ctx, F_Data) and then Valid_Next (Ctx, F_Data) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Data)); + and then Data'Length >= RFLX_Types.To_Length (Field_Size (Ctx, F_Data)); generic with procedure Process_Data (Data : RFLX_Types.Bytes); diff --git a/tests/spark/generated/rflx-ipv4-option.adb b/tests/spark/generated/rflx-ipv4-option.adb index d268e2f33..78ec403bd 100644 --- a/tests/spark/generated/rflx-ipv4-option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -349,7 +349,8 @@ is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Option_Data).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Option_Data).Last); begin - Data := Ctx.Buffer.all (First .. Last); + Data := (others => RFLX_Types.Byte'First); + Data (Data'First .. Data'First + (Last - First)) := Ctx.Buffer.all (First .. Last); end Get_Option_Data; procedure Generic_Get_Option_Data (Ctx : Context) is diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index aaf74bae1..c8eb052b0 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -283,7 +283,7 @@ is function Get_Option_Data (Ctx : Context) return RFLX_Types.Bytes with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Option_Data) + and then Structural_Valid (Ctx, F_Option_Data) and then Valid_Next (Ctx, F_Option_Data), Post => Get_Option_Data'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Option_Data)); @@ -291,9 +291,9 @@ is procedure Get_Option_Data (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Option_Data) + and then Structural_Valid (Ctx, F_Option_Data) and then Valid_Next (Ctx, F_Option_Data) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Option_Data)); + and then Data'Length >= RFLX_Types.To_Length (Field_Size (Ctx, F_Option_Data)); generic with procedure Process_Option_Data (Option_Data : RFLX_Types.Bytes); diff --git a/tests/spark/generated/rflx-ipv4-packet.adb b/tests/spark/generated/rflx-ipv4-packet.adb index 7a8bd957e..d3c9092bf 100644 --- a/tests/spark/generated/rflx-ipv4-packet.adb +++ b/tests/spark/generated/rflx-ipv4-packet.adb @@ -922,7 +922,8 @@ is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin - Data := Ctx.Buffer.all (First .. Last); + Data := (others => RFLX_Types.Byte'First); + Data (Data'First .. Data'First + (Last - First)) := Ctx.Buffer.all (First .. Last); end Get_Payload; procedure Generic_Get_Payload (Ctx : Context) is diff --git a/tests/spark/generated/rflx-ipv4-packet.ads b/tests/spark/generated/rflx-ipv4-packet.ads index e5413d495..2d9d75883 100644 --- a/tests/spark/generated/rflx-ipv4-packet.ads +++ b/tests/spark/generated/rflx-ipv4-packet.ads @@ -350,7 +350,7 @@ is function Get_Payload (Ctx : Context) return RFLX_Types.Bytes with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Payload) + and then Structural_Valid (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload), Post => Get_Payload'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); @@ -358,9 +358,9 @@ is procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Payload) + and then Structural_Valid (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); + and then Data'Length >= RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); diff --git a/tests/spark/generated/rflx-sequence-inner_message.adb b/tests/spark/generated/rflx-sequence-inner_message.adb index 365eead0f..e659ef830 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.adb +++ b/tests/spark/generated/rflx-sequence-inner_message.adb @@ -241,7 +241,8 @@ is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin - Data := Ctx.Buffer.all (First .. Last); + Data := (others => RFLX_Types.Byte'First); + Data (Data'First .. Data'First + (Last - First)) := Ctx.Buffer.all (First .. Last); end Get_Payload; procedure Generic_Get_Payload (Ctx : Context) is @@ -383,4 +384,23 @@ is Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Generic_Set_Payload; + procedure To_Structure (Ctx : Context; Struct : out Structure) is + begin + Struct.Length := Get_Length (Ctx); + Get_Payload (Ctx, Struct.Payload); + end To_Structure; + + procedure To_Context (Struct : Structure; Ctx : in out Context) is + begin + Reset (Ctx); + Set_Length (Ctx, Struct.Length); + declare + Payload_Size : constant RFLX_Types.Bit_Length := RFLX_Types.Bit_Length (Struct.Length * 8); + begin + if Payload_Size = Field_Size (Ctx, F_Payload) then + Set_Payload (Ctx, Struct.Payload (Struct.Payload'First .. Struct.Payload'First + RFLX_Types.Index (RFLX_Types.To_Length (Payload_Size) + 1) - 2)); + end if; + end; + end To_Context; + end RFLX.Sequence.Inner_Message; diff --git a/tests/spark/generated/rflx-sequence-inner_message.ads b/tests/spark/generated/rflx-sequence-inner_message.ads index 6649e0519..52a078ac4 100644 --- a/tests/spark/generated/rflx-sequence-inner_message.ads +++ b/tests/spark/generated/rflx-sequence-inner_message.ads @@ -262,7 +262,7 @@ is function Get_Payload (Ctx : Context) return RFLX_Types.Bytes with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Payload) + and then Structural_Valid (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload), Post => Get_Payload'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); @@ -270,9 +270,9 @@ is procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Payload) + and then Structural_Valid (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); + and then Data'Length >= RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); @@ -417,6 +417,26 @@ is (GNATprove, Inline_For_Proof), Ghost; + type Structure is + record + Length : RFLX.Sequence.Length; + Payload : RFLX_Types.Bytes (RFLX_Types.Index'First .. RFLX_Types.Index'First + 254); + end record; + + procedure To_Structure (Ctx : Context; Struct : out Structure) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + procedure To_Context (Struct : Structure; Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Length) + and then Available_Space (Ctx, F_Length) >= 2048, + Post => + Has_Buffer (Ctx); + private type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); diff --git a/tests/spark/generated/rflx-tlv-message.adb b/tests/spark/generated/rflx-tlv-message.adb index e71fb175e..9a8afb5ad 100644 --- a/tests/spark/generated/rflx-tlv-message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -275,7 +275,8 @@ is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Value).Last); begin - Data := Ctx.Buffer.all (First .. Last); + Data := (others => RFLX_Types.Byte'First); + Data (Data'First .. Data'First + (Last - First)) := Ctx.Buffer.all (First .. Last); end Get_Value; procedure Generic_Get_Value (Ctx : Context) is diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index 6b21853b5..408903a87 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -268,7 +268,7 @@ is function Get_Value (Ctx : Context) return RFLX_Types.Bytes with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Value) + and then Structural_Valid (Ctx, F_Value) and then Valid_Next (Ctx, F_Value), Post => Get_Value'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)); @@ -276,9 +276,9 @@ is procedure Get_Value (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Value) + and then Structural_Valid (Ctx, F_Value) and then Valid_Next (Ctx, F_Value) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Value)); + and then Data'Length >= RFLX_Types.To_Length (Field_Size (Ctx, F_Value)); generic with procedure Process_Value (Value : RFLX_Types.Bytes); diff --git a/tests/spark/generated/rflx-udp-datagram.adb b/tests/spark/generated/rflx-udp-datagram.adb index a282b366f..fd38348e0 100644 --- a/tests/spark/generated/rflx-udp-datagram.adb +++ b/tests/spark/generated/rflx-udp-datagram.adb @@ -321,7 +321,8 @@ is First : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).First); Last : constant RFLX_Types.Index := RFLX_Types.To_Index (Ctx.Cursors (F_Payload).Last); begin - Data := Ctx.Buffer.all (First .. Last); + Data := (others => RFLX_Types.Byte'First); + Data (Data'First .. Data'First + (Last - First)) := Ctx.Buffer.all (First .. Last); end Get_Payload; procedure Generic_Get_Payload (Ctx : Context) is @@ -507,4 +508,29 @@ is Process_Payload (Ctx.Buffer.all (Buffer_First .. Buffer_Last)); end Generic_Set_Payload; + procedure To_Structure (Ctx : Context; Struct : out Structure) is + begin + Struct.Source_Port := Get_Source_Port (Ctx); + Struct.Destination_Port := Get_Destination_Port (Ctx); + Struct.Length := Get_Length (Ctx); + Struct.Checksum := Get_Checksum (Ctx); + Get_Payload (Ctx, Struct.Payload); + end To_Structure; + + procedure To_Context (Struct : Structure; Ctx : in out Context) is + begin + Reset (Ctx); + Set_Source_Port (Ctx, Struct.Source_Port); + Set_Destination_Port (Ctx, Struct.Destination_Port); + Set_Length (Ctx, Struct.Length); + Set_Checksum (Ctx, Struct.Checksum); + declare + Payload_Size : constant RFLX_Types.Bit_Length := RFLX_Types.Bit_Length ((Struct.Length - 8) * 8); + begin + if Payload_Size = Field_Size (Ctx, F_Payload) then + Set_Payload (Ctx, Struct.Payload (Struct.Payload'First .. Struct.Payload'First + RFLX_Types.Index (RFLX_Types.To_Length (Payload_Size) + 1) - 2)); + end if; + end; + end To_Context; + end RFLX.UDP.Datagram; diff --git a/tests/spark/generated/rflx-udp-datagram.ads b/tests/spark/generated/rflx-udp-datagram.ads index dfb6d4a62..50e760b22 100644 --- a/tests/spark/generated/rflx-udp-datagram.ads +++ b/tests/spark/generated/rflx-udp-datagram.ads @@ -280,7 +280,7 @@ is function Get_Payload (Ctx : Context) return RFLX_Types.Bytes with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Payload) + and then Structural_Valid (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload), Post => Get_Payload'Result'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); @@ -288,9 +288,9 @@ is procedure Get_Payload (Ctx : Context; Data : out RFLX_Types.Bytes) with Pre => Has_Buffer (Ctx) - and then Present (Ctx, F_Payload) + and then Structural_Valid (Ctx, F_Payload) and then Valid_Next (Ctx, F_Payload) - and then Data'Length = RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); + and then Data'Length >= RFLX_Types.To_Length (Field_Size (Ctx, F_Payload)); generic with procedure Process_Payload (Payload : RFLX_Types.Bytes); @@ -531,6 +531,29 @@ is (GNATprove, Inline_For_Proof), Ghost; + type Structure is + record + Source_Port : RFLX.UDP.Port; + Destination_Port : RFLX.UDP.Port; + Length : RFLX.UDP.Length; + Checksum : RFLX.UDP.Checksum; + Payload : RFLX_Types.Bytes (RFLX_Types.Index'First .. RFLX_Types.Index'First + 65526); + end record; + + procedure To_Structure (Ctx : Context; Struct : out Structure) with + Pre => + Has_Buffer (Ctx) + and then Structural_Valid_Message (Ctx); + + procedure To_Context (Struct : Structure; Ctx : in out Context) with + Pre => + not Ctx'Constrained + and then Has_Buffer (Ctx) + and then Valid_Next (Ctx, F_Source_Port) + and then Available_Space (Ctx, F_Source_Port) >= 524280, + Post => + Has_Buffer (Ctx); + private type Cursor_State is (S_Valid, S_Structural_Valid, S_Invalid, S_Incomplete); diff --git a/tests/unit/model/message_test.py b/tests/unit/model/message_test.py index c8aa545f0..e4ed4be81 100644 --- a/tests/unit/model/message_test.py +++ b/tests/unit/model/message_test.py @@ -2506,6 +2506,22 @@ def test_has_fixed_size() -> None: assert not SEQUENCE_MESSAGE.has_fixed_size +def test_has_bounded_size() -> None: + assert NULL_MESSAGE.has_bounded_size + assert FIXED_SIZE_MESSAGE.has_bounded_size + assert TLV_MESSAGE.has_bounded_size + assert not ETHERNET_FRAME.has_bounded_size + assert SEQUENCE_MESSAGE.has_bounded_size + + +def test_is_definite() -> None: + assert NULL_MESSAGE.is_definite + assert FIXED_SIZE_MESSAGE.is_definite + assert not TLV_MESSAGE.is_definite + assert not ETHERNET_FRAME.is_definite + assert SEQUENCE_MESSAGE.is_definite + + def test_size() -> None: assert NULL_MESSAGE.size() == Number(0) assert FIXED_SIZE_MESSAGE.size() == Number(200) @@ -2628,6 +2644,44 @@ def test_size_error() -> None: ) +def test_max_size() -> None: + assert NULL_MESSAGE.max_size() == Number(0) + assert FIXED_SIZE_MESSAGE.max_size() == Number(8 + 3 * 64) + assert TLV_MESSAGE.max_size() == Number(8 + 16 + (2 ** 16 - 1) * 8) + assert SEQUENCE_MESSAGE.max_size() == Number(8 + (2 ** 8 - 1) * 8 + 3 * 16) + + +def test_max_size_error() -> None: + with pytest.raises( + RecordFluxError, + match=r"^model: error: unable to calculate maximum size of unbounded message$", + ): + ETHERNET_FRAME.max_size() + + +def test_max_field_sizes() -> None: + assert NULL_MESSAGE.max_field_sizes() == {} + assert FIXED_SIZE_MESSAGE.max_field_sizes() == { + Field("Message_Type"): Number(8), + Field("Data"): Number(64), + Field("Values"): Number(64), + Field("Options"): Number(64), + } + assert TLV_MESSAGE.max_field_sizes() == { + Field("Tag"): Number(8), + Field("Length"): Number(16), + Field("Value"): Number((2 ** 16 - 1) * 8), + } + + +def test_max_field_sizes_error() -> None: + with pytest.raises( + RecordFluxError, + match=r"^model: error: unable to calculate maximum field sizes of unbounded message$", + ): + ETHERNET_FRAME.max_field_sizes() + + def test_derived_message_incorrect_base_name() -> None: with pytest.raises( RecordFluxError, From e8f312c6c92e085c691cacee526a722df60b8053 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 25 May 2021 20:34:32 +0200 Subject: [PATCH 28/43] Prevent compiler errors for messages in packages with same name --- rflx/generator/generator.py | 135 +++++++++--------- .../generated/rflx-in_ethernet-contains.adb | 10 +- .../generated/rflx-in_ethernet-contains.ads | 32 ++--- .../spark/generated/rflx-in_ipv4-contains.adb | 20 +-- .../spark/generated/rflx-in_ipv4-contains.ads | 66 ++++----- .../spark/generated/rflx-in_tlv-contains.ads | 8 +- 6 files changed, 136 insertions(+), 135 deletions(-) diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 9eebea048..706d7f93b 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -3290,13 +3290,13 @@ def __enumeration_functions(self, enum: Enumeration) -> UnitPart: return UnitPart(specification) - @staticmethod def __create_contains_function( + self, refinement: Refinement, condition_fields: ty.Mapping[Field, Type], null_sdu: bool, ) -> SubprogramUnitPart: - pdu_identifier = ID(refinement.pdu.identifier) + pdu_identifier = self.__prefix * ID(refinement.pdu.identifier) condition = refinement.condition for f, t in condition_fields.items(): if isinstance(t, Enumeration) and t.always_valid: @@ -3328,7 +3328,9 @@ def __create_contains_function( ExpressionFunctionDeclaration( specification, expr.AndThen( - *refinement_conditions(refinement, "Ctx", condition_fields, null_sdu), + *self.__refinement_conditions( + refinement, "Ctx", condition_fields, null_sdu + ), condition, ) .simplified() @@ -3337,14 +3339,13 @@ def __create_contains_function( ] ) - @staticmethod def __create_switch_procedure( - refinement: Refinement, condition_fields: ty.Mapping[Field, Type] + self, refinement: Refinement, condition_fields: ty.Mapping[Field, Type] ) -> UnitPart: - pdu_identifier = ID(refinement.pdu.identifier) - sdu_identifier = ID(refinement.sdu.identifier) - pdu_context = f"{pdu_identifier.flat}_PDU_Context" - sdu_context = f"{sdu_identifier.flat}_SDU_Context" + pdu_identifier = self.__prefix * ID(refinement.pdu.identifier) + sdu_identifier = self.__prefix * ID(refinement.sdu.identifier) + pdu_context = f"{refinement.pdu.identifier.flat}_PDU_Context" + sdu_context = f"{refinement.sdu.identifier.flat}_SDU_Context" refined_field_affixed_name = pdu_identifier * refinement.field.affixed_name specification = ProcedureSpecification( @@ -3367,7 +3368,7 @@ def __create_switch_procedure( Not(Constrained(sdu_context)), *[ c.ada_expr() - for c in refinement_conditions( + for c in self.__refinement_conditions( refinement, pdu_context, condition_fields, False ) ], @@ -3558,6 +3559,63 @@ def __integer_conversion_functions(self, integer: Integer) -> ty.Sequence[Subpro ), ] + def __refinement_conditions( + self, + refinement: Refinement, + pdu_context: str, + condition_fields: ty.Mapping[Field, Type], + null_sdu: bool, + ) -> ty.Sequence[expr.Expr]: + pdu_identifier = self.__prefix * ID(refinement.pdu.identifier) + + conditions: ty.List[expr.Expr] = [ + expr.Call(pdu_identifier * "Has_Buffer", [expr.Variable(pdu_context)]) + ] + + if null_sdu: + conditions.extend( + [ + expr.Call( + pdu_identifier * "Structural_Valid", + [ + expr.Variable(pdu_context), + expr.Variable(pdu_identifier * refinement.field.affixed_name), + ], + ), + expr.Not( + expr.Call( + pdu_identifier * "Present", + [ + expr.Variable(pdu_context), + expr.Variable(pdu_identifier * refinement.field.affixed_name), + ], + ) + ), + ] + ) + else: + conditions.append( + expr.Call( + pdu_identifier * "Present", + [ + expr.Variable(pdu_context), + expr.Variable(pdu_identifier * refinement.field.affixed_name), + ], + ) + ) + + conditions.extend( + [ + expr.Call( + pdu_identifier * "Valid", + [expr.Variable(pdu_context), expr.Variable(pdu_identifier * f.affixed_name)], + ) + for f in condition_fields + ] + ) + + return conditions + def create_file(filename: Path, content: str) -> None: log.info("Creating %s", filename) @@ -3680,63 +3738,6 @@ def switch_update_conditions(message: Message, field: Field) -> ty.Sequence[Expr ] -def refinement_conditions( - refinement: Refinement, - pdu_context: str, - condition_fields: ty.Mapping[Field, Type], - null_sdu: bool, -) -> ty.Sequence[expr.Expr]: - pdu_identifier = ID(refinement.pdu.identifier) - - conditions: ty.List[expr.Expr] = [ - expr.Call(pdu_identifier * "Has_Buffer", [expr.Variable(pdu_context)]) - ] - - if null_sdu: - conditions.extend( - [ - expr.Call( - pdu_identifier * "Structural_Valid", - [ - expr.Variable(pdu_context), - expr.Variable(pdu_identifier * refinement.field.affixed_name), - ], - ), - expr.Not( - expr.Call( - pdu_identifier * "Present", - [ - expr.Variable(pdu_context), - expr.Variable(pdu_identifier * refinement.field.affixed_name), - ], - ) - ), - ] - ) - else: - conditions.append( - expr.Call( - pdu_identifier * "Present", - [ - expr.Variable(pdu_context), - expr.Variable(pdu_identifier * refinement.field.affixed_name), - ], - ) - ) - - conditions.extend( - [ - expr.Call( - pdu_identifier * "Valid", - [expr.Variable(pdu_context), expr.Variable(pdu_identifier * f.affixed_name)], - ) - for f in condition_fields - ] - ) - - return conditions - - def byte_aligned_field(field: Field) -> Expr: return Equal( Mod( diff --git a/tests/spark/generated/rflx-in_ethernet-contains.adb b/tests/spark/generated/rflx-in_ethernet-contains.adb index fc239c897..fa30eea06 100644 --- a/tests/spark/generated/rflx-in_ethernet-contains.adb +++ b/tests/spark/generated/rflx-in_ethernet-contains.adb @@ -5,14 +5,14 @@ package body RFLX.In_Ethernet.Contains with SPARK_Mode is - procedure Switch_To_Payload (Ethernet_Frame_PDU_Context : in out Ethernet.Frame.Context; IPv4_Packet_SDU_Context : out IPv4.Packet.Context) is - First : constant RFLX_Types.Bit_Index := Ethernet.Frame.Field_First (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload); - Last : constant RFLX_Types.Bit_Length := Ethernet.Frame.Field_Last (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload); + procedure Switch_To_Payload (Ethernet_Frame_PDU_Context : in out RFLX.Ethernet.Frame.Context; IPv4_Packet_SDU_Context : out RFLX.IPv4.Packet.Context) is + First : constant RFLX_Types.Bit_Index := RFLX.Ethernet.Frame.Field_First (Ethernet_Frame_PDU_Context, RFLX.Ethernet.Frame.F_Payload); + Last : constant RFLX_Types.Bit_Length := RFLX.Ethernet.Frame.Field_Last (Ethernet_Frame_PDU_Context, RFLX.Ethernet.Frame.F_Payload); Buffer : RFLX_Types.Bytes_Ptr; begin - Ethernet.Frame.Take_Buffer (Ethernet_Frame_PDU_Context, Buffer); + RFLX.Ethernet.Frame.Take_Buffer (Ethernet_Frame_PDU_Context, Buffer); pragma Warnings (Off, "unused assignment to ""Buffer"""); - IPv4.Packet.Initialize (IPv4_Packet_SDU_Context, Buffer, First, Last); + RFLX.IPv4.Packet.Initialize (IPv4_Packet_SDU_Context, Buffer, First, Last); pragma Warnings (On, "unused assignment to ""Buffer"""); end Switch_To_Payload; diff --git a/tests/spark/generated/rflx-in_ethernet-contains.ads b/tests/spark/generated/rflx-in_ethernet-contains.ads index f5a0fcad7..3b567d2a6 100644 --- a/tests/spark/generated/rflx-in_ethernet-contains.ads +++ b/tests/spark/generated/rflx-in_ethernet-contains.ads @@ -14,33 +14,33 @@ is use type RFLX_Types.Index, RFLX_Types.Bit_Index; - function IPv4_Packet_In_Ethernet_Frame_Payload (Ctx : Ethernet.Frame.Context) return Boolean is - (Ethernet.Frame.Has_Buffer (Ctx) - and then Ethernet.Frame.Present (Ctx, Ethernet.Frame.F_Payload) - and then Ethernet.Frame.Valid (Ctx, Ethernet.Frame.F_Type_Length) - and then Ethernet.Frame.Get_Type_Length (Ctx) = 16#800#); + function IPv4_Packet_In_Ethernet_Frame_Payload (Ctx : RFLX.Ethernet.Frame.Context) return Boolean is + (RFLX.Ethernet.Frame.Has_Buffer (Ctx) + and then RFLX.Ethernet.Frame.Present (Ctx, RFLX.Ethernet.Frame.F_Payload) + and then RFLX.Ethernet.Frame.Valid (Ctx, RFLX.Ethernet.Frame.F_Type_Length) + and then RFLX.Ethernet.Frame.Get_Type_Length (Ctx) = 16#800#); - use type Ethernet.Frame.Field_Cursors; + use type RFLX.Ethernet.Frame.Field_Cursors; - procedure Switch_To_Payload (Ethernet_Frame_PDU_Context : in out Ethernet.Frame.Context; IPv4_Packet_SDU_Context : out IPv4.Packet.Context) with + procedure Switch_To_Payload (Ethernet_Frame_PDU_Context : in out RFLX.Ethernet.Frame.Context; IPv4_Packet_SDU_Context : out RFLX.IPv4.Packet.Context) with Pre => not Ethernet_Frame_PDU_Context'Constrained and not IPv4_Packet_SDU_Context'Constrained - and Ethernet.Frame.Has_Buffer (Ethernet_Frame_PDU_Context) - and Ethernet.Frame.Present (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload) - and Ethernet.Frame.Valid (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Type_Length) + and RFLX.Ethernet.Frame.Has_Buffer (Ethernet_Frame_PDU_Context) + and RFLX.Ethernet.Frame.Present (Ethernet_Frame_PDU_Context, RFLX.Ethernet.Frame.F_Payload) + and RFLX.Ethernet.Frame.Valid (Ethernet_Frame_PDU_Context, RFLX.Ethernet.Frame.F_Type_Length) and IPv4_Packet_In_Ethernet_Frame_Payload (Ethernet_Frame_PDU_Context), Post => - not Ethernet.Frame.Has_Buffer (Ethernet_Frame_PDU_Context) - and IPv4.Packet.Has_Buffer (IPv4_Packet_SDU_Context) + not RFLX.Ethernet.Frame.Has_Buffer (Ethernet_Frame_PDU_Context) + and RFLX.IPv4.Packet.Has_Buffer (IPv4_Packet_SDU_Context) and Ethernet_Frame_PDU_Context.Buffer_First = IPv4_Packet_SDU_Context.Buffer_First and Ethernet_Frame_PDU_Context.Buffer_Last = IPv4_Packet_SDU_Context.Buffer_Last - and IPv4_Packet_SDU_Context.First = Ethernet.Frame.Field_First (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload) - and IPv4_Packet_SDU_Context.Last = Ethernet.Frame.Field_Last (Ethernet_Frame_PDU_Context, Ethernet.Frame.F_Payload) - and IPv4.Packet.Initialized (IPv4_Packet_SDU_Context) + and IPv4_Packet_SDU_Context.First = RFLX.Ethernet.Frame.Field_First (Ethernet_Frame_PDU_Context, RFLX.Ethernet.Frame.F_Payload) + and IPv4_Packet_SDU_Context.Last = RFLX.Ethernet.Frame.Field_Last (Ethernet_Frame_PDU_Context, RFLX.Ethernet.Frame.F_Payload) + and RFLX.IPv4.Packet.Initialized (IPv4_Packet_SDU_Context) and Ethernet_Frame_PDU_Context.Buffer_First = Ethernet_Frame_PDU_Context.Buffer_First'Old and Ethernet_Frame_PDU_Context.Buffer_Last = Ethernet_Frame_PDU_Context.Buffer_Last'Old and Ethernet_Frame_PDU_Context.First = Ethernet_Frame_PDU_Context.First'Old - and Ethernet.Frame.Context_Cursors (Ethernet_Frame_PDU_Context) = Ethernet.Frame.Context_Cursors (Ethernet_Frame_PDU_Context)'Old; + and RFLX.Ethernet.Frame.Context_Cursors (Ethernet_Frame_PDU_Context) = RFLX.Ethernet.Frame.Context_Cursors (Ethernet_Frame_PDU_Context)'Old; end RFLX.In_Ethernet.Contains; diff --git a/tests/spark/generated/rflx-in_ipv4-contains.adb b/tests/spark/generated/rflx-in_ipv4-contains.adb index ea1ed288d..c5e5e4db0 100644 --- a/tests/spark/generated/rflx-in_ipv4-contains.adb +++ b/tests/spark/generated/rflx-in_ipv4-contains.adb @@ -5,25 +5,25 @@ package body RFLX.In_IPv4.Contains with SPARK_Mode is - procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4.Packet.Context; UDP_Datagram_SDU_Context : out UDP.Datagram.Context) is - First : constant RFLX_Types.Bit_Index := IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); - Last : constant RFLX_Types.Bit_Length := IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); + procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out RFLX.IPv4.Packet.Context; UDP_Datagram_SDU_Context : out RFLX.UDP.Datagram.Context) is + First : constant RFLX_Types.Bit_Index := RFLX.IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Payload); + Last : constant RFLX_Types.Bit_Length := RFLX.IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Payload); Buffer : RFLX_Types.Bytes_Ptr; begin - IPv4.Packet.Take_Buffer (IPv4_Packet_PDU_Context, Buffer); + RFLX.IPv4.Packet.Take_Buffer (IPv4_Packet_PDU_Context, Buffer); pragma Warnings (Off, "unused assignment to ""Buffer"""); - UDP.Datagram.Initialize (UDP_Datagram_SDU_Context, Buffer, First, Last); + RFLX.UDP.Datagram.Initialize (UDP_Datagram_SDU_Context, Buffer, First, Last); pragma Warnings (On, "unused assignment to ""Buffer"""); end Switch_To_Payload; - procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4.Packet.Context; ICMP_Message_SDU_Context : out ICMP.Message.Context) is - First : constant RFLX_Types.Bit_Index := IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); - Last : constant RFLX_Types.Bit_Length := IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload); + procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out RFLX.IPv4.Packet.Context; ICMP_Message_SDU_Context : out RFLX.ICMP.Message.Context) is + First : constant RFLX_Types.Bit_Index := RFLX.IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Payload); + Last : constant RFLX_Types.Bit_Length := RFLX.IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Payload); Buffer : RFLX_Types.Bytes_Ptr; begin - IPv4.Packet.Take_Buffer (IPv4_Packet_PDU_Context, Buffer); + RFLX.IPv4.Packet.Take_Buffer (IPv4_Packet_PDU_Context, Buffer); pragma Warnings (Off, "unused assignment to ""Buffer"""); - ICMP.Message.Initialize (ICMP_Message_SDU_Context, Buffer, First, Last); + RFLX.ICMP.Message.Initialize (ICMP_Message_SDU_Context, Buffer, First, Last); pragma Warnings (On, "unused assignment to ""Buffer"""); end Switch_To_Payload; diff --git a/tests/spark/generated/rflx-in_ipv4-contains.ads b/tests/spark/generated/rflx-in_ipv4-contains.ads index 7ca536449..13c5bb61b 100644 --- a/tests/spark/generated/rflx-in_ipv4-contains.ads +++ b/tests/spark/generated/rflx-in_ipv4-contains.ads @@ -15,62 +15,62 @@ is use type RFLX_Types.Index, RFLX_Types.Bit_Index; - function UDP_Datagram_In_IPv4_Packet_Payload (Ctx : IPv4.Packet.Context) return Boolean is - (IPv4.Packet.Has_Buffer (Ctx) - and then IPv4.Packet.Present (Ctx, IPv4.Packet.F_Payload) - and then IPv4.Packet.Valid (Ctx, IPv4.Packet.F_Protocol) - and then IPv4.Packet.Get_Protocol (Ctx).Known - and then IPv4.Packet.Get_Protocol (Ctx).Enum = IPv4.PROTOCOL_UDP); + function UDP_Datagram_In_IPv4_Packet_Payload (Ctx : RFLX.IPv4.Packet.Context) return Boolean is + (RFLX.IPv4.Packet.Has_Buffer (Ctx) + and then RFLX.IPv4.Packet.Present (Ctx, RFLX.IPv4.Packet.F_Payload) + and then RFLX.IPv4.Packet.Valid (Ctx, RFLX.IPv4.Packet.F_Protocol) + and then RFLX.IPv4.Packet.Get_Protocol (Ctx).Known + and then RFLX.IPv4.Packet.Get_Protocol (Ctx).Enum = IPv4.PROTOCOL_UDP); - use type IPv4.Packet.Field_Cursors; + use type RFLX.IPv4.Packet.Field_Cursors; - procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4.Packet.Context; UDP_Datagram_SDU_Context : out UDP.Datagram.Context) with + procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out RFLX.IPv4.Packet.Context; UDP_Datagram_SDU_Context : out RFLX.UDP.Datagram.Context) with Pre => not IPv4_Packet_PDU_Context'Constrained and not UDP_Datagram_SDU_Context'Constrained - and IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) - and IPv4.Packet.Present (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) - and IPv4.Packet.Valid (IPv4_Packet_PDU_Context, IPv4.Packet.F_Protocol) + and RFLX.IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) + and RFLX.IPv4.Packet.Present (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Payload) + and RFLX.IPv4.Packet.Valid (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Protocol) and UDP_Datagram_In_IPv4_Packet_Payload (IPv4_Packet_PDU_Context), Post => - not IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) - and UDP.Datagram.Has_Buffer (UDP_Datagram_SDU_Context) + not RFLX.IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) + and RFLX.UDP.Datagram.Has_Buffer (UDP_Datagram_SDU_Context) and IPv4_Packet_PDU_Context.Buffer_First = UDP_Datagram_SDU_Context.Buffer_First and IPv4_Packet_PDU_Context.Buffer_Last = UDP_Datagram_SDU_Context.Buffer_Last - and UDP_Datagram_SDU_Context.First = IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) - and UDP_Datagram_SDU_Context.Last = IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) - and UDP.Datagram.Initialized (UDP_Datagram_SDU_Context) + and UDP_Datagram_SDU_Context.First = RFLX.IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Payload) + and UDP_Datagram_SDU_Context.Last = RFLX.IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Payload) + and RFLX.UDP.Datagram.Initialized (UDP_Datagram_SDU_Context) and IPv4_Packet_PDU_Context.Buffer_First = IPv4_Packet_PDU_Context.Buffer_First'Old and IPv4_Packet_PDU_Context.Buffer_Last = IPv4_Packet_PDU_Context.Buffer_Last'Old and IPv4_Packet_PDU_Context.First = IPv4_Packet_PDU_Context.First'Old - and IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context) = IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context)'Old; + and RFLX.IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context) = RFLX.IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context)'Old; - function ICMP_Message_In_IPv4_Packet_Payload (Ctx : IPv4.Packet.Context) return Boolean is - (IPv4.Packet.Has_Buffer (Ctx) - and then IPv4.Packet.Present (Ctx, IPv4.Packet.F_Payload) - and then IPv4.Packet.Valid (Ctx, IPv4.Packet.F_Protocol) - and then IPv4.Packet.Get_Protocol (Ctx).Known - and then IPv4.Packet.Get_Protocol (Ctx).Enum = IPv4.PROTOCOL_ICMP); + function ICMP_Message_In_IPv4_Packet_Payload (Ctx : RFLX.IPv4.Packet.Context) return Boolean is + (RFLX.IPv4.Packet.Has_Buffer (Ctx) + and then RFLX.IPv4.Packet.Present (Ctx, RFLX.IPv4.Packet.F_Payload) + and then RFLX.IPv4.Packet.Valid (Ctx, RFLX.IPv4.Packet.F_Protocol) + and then RFLX.IPv4.Packet.Get_Protocol (Ctx).Known + and then RFLX.IPv4.Packet.Get_Protocol (Ctx).Enum = IPv4.PROTOCOL_ICMP); - procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out IPv4.Packet.Context; ICMP_Message_SDU_Context : out ICMP.Message.Context) with + procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out RFLX.IPv4.Packet.Context; ICMP_Message_SDU_Context : out RFLX.ICMP.Message.Context) with Pre => not IPv4_Packet_PDU_Context'Constrained and not ICMP_Message_SDU_Context'Constrained - and IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) - and IPv4.Packet.Present (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) - and IPv4.Packet.Valid (IPv4_Packet_PDU_Context, IPv4.Packet.F_Protocol) + and RFLX.IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) + and RFLX.IPv4.Packet.Present (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Payload) + and RFLX.IPv4.Packet.Valid (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Protocol) and ICMP_Message_In_IPv4_Packet_Payload (IPv4_Packet_PDU_Context), Post => - not IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) - and ICMP.Message.Has_Buffer (ICMP_Message_SDU_Context) + not RFLX.IPv4.Packet.Has_Buffer (IPv4_Packet_PDU_Context) + and RFLX.ICMP.Message.Has_Buffer (ICMP_Message_SDU_Context) and IPv4_Packet_PDU_Context.Buffer_First = ICMP_Message_SDU_Context.Buffer_First and IPv4_Packet_PDU_Context.Buffer_Last = ICMP_Message_SDU_Context.Buffer_Last - and ICMP_Message_SDU_Context.First = IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) - and ICMP_Message_SDU_Context.Last = IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, IPv4.Packet.F_Payload) - and ICMP.Message.Initialized (ICMP_Message_SDU_Context) + and ICMP_Message_SDU_Context.First = RFLX.IPv4.Packet.Field_First (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Payload) + and ICMP_Message_SDU_Context.Last = RFLX.IPv4.Packet.Field_Last (IPv4_Packet_PDU_Context, RFLX.IPv4.Packet.F_Payload) + and RFLX.ICMP.Message.Initialized (ICMP_Message_SDU_Context) and IPv4_Packet_PDU_Context.Buffer_First = IPv4_Packet_PDU_Context.Buffer_First'Old and IPv4_Packet_PDU_Context.Buffer_Last = IPv4_Packet_PDU_Context.Buffer_Last'Old and IPv4_Packet_PDU_Context.First = IPv4_Packet_PDU_Context.First'Old - and IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context) = IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context)'Old; + and RFLX.IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context) = RFLX.IPv4.Packet.Context_Cursors (IPv4_Packet_PDU_Context)'Old; end RFLX.In_IPv4.Contains; diff --git a/tests/spark/generated/rflx-in_tlv-contains.ads b/tests/spark/generated/rflx-in_tlv-contains.ads index 5dc272368..faaa2e341 100644 --- a/tests/spark/generated/rflx-in_tlv-contains.ads +++ b/tests/spark/generated/rflx-in_tlv-contains.ads @@ -10,9 +10,9 @@ package RFLX.In_TLV.Contains with (GNATprove, Terminating) is - function Null_Message_In_TLV_Message_Value (Ctx : TLV.Message.Context) return Boolean is - (TLV.Message.Has_Buffer (Ctx) - and then TLV.Message.Structural_Valid (Ctx, TLV.Message.F_Value) - and then not TLV.Message.Present (Ctx, TLV.Message.F_Value)); + function Null_Message_In_TLV_Message_Value (Ctx : RFLX.TLV.Message.Context) return Boolean is + (RFLX.TLV.Message.Has_Buffer (Ctx) + and then RFLX.TLV.Message.Structural_Valid (Ctx, RFLX.TLV.Message.F_Value) + and then not RFLX.TLV.Message.Present (Ctx, RFLX.TLV.Message.F_Value)); end RFLX.In_TLV.Contains; From 5fa768e0983c112ff1a60e1eaf9d5c7165817a63 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 25 May 2021 15:46:37 +0200 Subject: [PATCH 29/43] Remove dependency of tests on example specs Ref. #669 --- rflx/pyrflx/pyrflx.py | 4 +- tests/data/fixtures/pyrflx.py | 18 +-- tests/data/specs/ethernet.rflx | 33 +++++ tests/data/specs/icmp.rflx | 115 ++++++++++++++++++ tests/data/specs/in_ethernet.rflx | 9 ++ tests/data/specs/in_ipv4.rflx | 13 ++ tests/data/specs/ipv4.rflx | 66 ++++++++++ tests/data/specs/tls_alert.rflx | 44 +++++++ tests/data/specs/tls_record.rflx | 37 ++++++ tests/data/specs/udp.rflx | 17 +++ tests/integration/benchmark.py | 2 +- tests/integration/pyrflx_test.py | 6 +- tests/integration/session/session_test.py | 4 +- tests/integration/specs_test.py | 50 +++----- .../spark/generated/rflx-in_ipv4-contains.ads | 4 +- tests/spark/generated/rflx-ipv4.ads | 12 +- tests/spark/rflx-in_ethernet_tests.adb | 2 +- tests/spark/rflx-in_ipv4_tests.adb | 2 +- tests/spark/rflx-ipv4_tests.adb | 4 +- tests/unit/pyrflx_test.py | 14 +-- tests/unit/specification/parser_test.py | 6 +- tests/utils.py | 4 +- tools/generate_spark_test_code.py | 12 +- 23 files changed, 399 insertions(+), 79 deletions(-) create mode 100644 tests/data/specs/ethernet.rflx create mode 100644 tests/data/specs/icmp.rflx create mode 100644 tests/data/specs/in_ethernet.rflx create mode 100644 tests/data/specs/in_ipv4.rflx create mode 100644 tests/data/specs/ipv4.rflx create mode 100644 tests/data/specs/tls_alert.rflx create mode 100644 tests/data/specs/tls_record.rflx create mode 100644 tests/data/specs/udp.rflx diff --git a/rflx/pyrflx/pyrflx.py b/rflx/pyrflx/pyrflx.py index 84857296f..838b37a19 100644 --- a/rflx/pyrflx/pyrflx.py +++ b/rflx/pyrflx/pyrflx.py @@ -1,6 +1,6 @@ import logging from pathlib import Path -from typing import Dict, Iterator, Sequence +from typing import Dict, Iterable, Iterator, Union from rflx.identifier import ID from rflx.model import Model @@ -37,7 +37,7 @@ def __init__( @classmethod def from_specs( cls, - files: Sequence[str], + files: Iterable[Union[str, Path]], skip_model_verification: bool = False, skip_message_verification: bool = False, ) -> "PyRFLX": diff --git a/tests/data/fixtures/pyrflx.py b/tests/data/fixtures/pyrflx.py index b8a7c5e80..8109f53fe 100644 --- a/tests/data/fixtures/pyrflx.py +++ b/tests/data/fixtures/pyrflx.py @@ -2,21 +2,21 @@ from rflx import expression as expr, model, pyrflx from rflx.identifier import ID -from tests.const import EX_SPEC_DIR, SPEC_DIR +from tests.const import SPEC_DIR @pytest.fixture(name="pyrflx_", scope="session") def fixture_pyrflx() -> pyrflx.PyRFLX: return pyrflx.PyRFLX.from_specs( [ - f"{EX_SPEC_DIR}/ethernet.rflx", - f"{EX_SPEC_DIR}/icmp.rflx", - f"{EX_SPEC_DIR}/in_ethernet.rflx", - f"{EX_SPEC_DIR}/in_ipv4.rflx", - f"{EX_SPEC_DIR}/ipv4.rflx", - f"{EX_SPEC_DIR}/tls_alert.rflx", - f"{EX_SPEC_DIR}/tls_record.rflx", - f"{EX_SPEC_DIR}/udp.rflx", + f"{SPEC_DIR}/ethernet.rflx", + f"{SPEC_DIR}/icmp.rflx", + f"{SPEC_DIR}/in_ethernet.rflx", + f"{SPEC_DIR}/in_ipv4.rflx", + f"{SPEC_DIR}/ipv4.rflx", + f"{SPEC_DIR}/tls_alert.rflx", + f"{SPEC_DIR}/tls_record.rflx", + f"{SPEC_DIR}/udp.rflx", f"{SPEC_DIR}/sequence_message.rflx", f"{SPEC_DIR}/sequence_type.rflx", f"{SPEC_DIR}/no_conditionals.rflx", diff --git a/tests/data/specs/ethernet.rflx b/tests/data/specs/ethernet.rflx new file mode 100644 index 000000000..5791ea398 --- /dev/null +++ b/tests/data/specs/ethernet.rflx @@ -0,0 +1,33 @@ +package Ethernet is + + type Address is mod 2**48; + type Type_Length is range 46 .. 2**16 - 1 with Size => 16; + type TPID is range 16#8100# .. 16#8100# with Size => 16; + type TCI is mod 2**16; + + type Frame is + message + Destination : Address; + Source : Address; + Type_Length_TPID : Type_Length + then TPID + with First => Type_Length_TPID'First + if Type_Length_TPID = 16#8100# + then Type_Length + with First => Type_Length_TPID'First + if Type_Length_TPID /= 16#8100#; + TPID : TPID; + TCI : TCI; + Type_Length : Type_Length + then Payload + with Size => Type_Length * 8 + if Type_Length <= 1500 + then Payload + with Size => Message'Last - Type_Length'Last + if Type_Length >= 1536; + Payload : Opaque + then null + if Payload'Size / 8 >= 46 and Payload'Size / 8 <= 1500; + end message; + +end Ethernet; diff --git a/tests/data/specs/icmp.rflx b/tests/data/specs/icmp.rflx new file mode 100644 index 000000000..f6d87cd96 --- /dev/null +++ b/tests/data/specs/icmp.rflx @@ -0,0 +1,115 @@ +package ICMP is + + type Tag is ( + Echo_Reply => 0, + Echo_Request => 8, + Destination_Unreachable => 3, + Time_Exceeded => 11, + Parameter_Problem => 12, + Source_Quench => 4, + Redirect => 5, + Timestamp_Msg => 13, + Timestamp_Reply => 14, + Information_Request => 15, + Information_Reply => 16 + ) with Size => 8; + + type Code_Destination_Unreachable is ( + Net_Unreachable => 0, + Host_Unreachable => 1, + Protocol_Unreachable => 2, + Port_Unreachable => 3, + Fragmentation_Needed_DF_Set => 4, + Source_Route_Failed => 5 + ) with Size => 8; + + type Code_Time_Exceeded is ( + TTL_Exceeded => 0, + Fragment_Reassembly_Time_Exceeded => 1 + ) with Size => 8; + + type Code_Redirect is ( + Redirect_for_Network => 0, + Redirect_for_Host => 1, + Redirect_for_Service_Network => 2, + Redirect_for_Service_Host => 3 + ) with Size => 8; + + type Code_Zero is range 0 .. 0 with Size => 8; + type Checksum is mod 2**16; + type Identifier is mod 2**16; + type Sequence_Number is mod 2**16; + type Pointer is mod 2**8; + type Timestamp is mod 2**32; + type Gateway_Internet_Address is mod 2**32; + type Unused_32 is range 0 .. 0 with Size => 32; + type Unused_24 is range 0 .. 0 with Size => 24; + + type Message is + message + Tag : Tag + then Code_Destination_Unreachable + if Tag = Destination_Unreachable + then Code_Time_Exceeded + if Tag = Time_Exceeded + then Code_Redirect + if Tag = Redirect + then Code_Zero + if (Tag = Echo_Reply + or Tag = Echo_Request + or Tag = Source_Quench + or Tag = Parameter_Problem + or Tag = Timestamp_Msg + or Tag = Timestamp_Reply + or Tag = Information_Request + or Tag = Information_Reply); + Code_Destination_Unreachable : Code_Destination_Unreachable + then Checksum; + Code_Time_Exceeded : Code_Time_Exceeded + then Checksum; + Code_Redirect : Code_Redirect + then Checksum; + Code_Zero : Code_Zero; + Checksum : Checksum + then Unused_32 + if (Tag = Destination_Unreachable + or Tag = Source_Quench + or Tag = Time_Exceeded) + then Identifier + if (Tag = Echo_Request + or Tag = Echo_Reply + or Tag = Timestamp_Msg + or Tag = Timestamp_Reply + or Tag = Information_Request + or Tag = Information_Reply) + then Pointer + if Tag = Parameter_Problem + then Gateway_Internet_Address + if Tag = Redirect; + Gateway_Internet_Address : Gateway_Internet_Address + then Data + with Size => 224; + Pointer : Pointer; + Unused_24 : Unused_24 + then Data + with Size => 224; + Unused_32 : Unused_32 + then Data + with Size => 224; + Identifier : Identifier; + Sequence_Number : Sequence_Number + then Originate_Timestamp + if Tag = Timestamp_Msg or Tag = Timestamp_Reply + then null + if Tag = Information_Request or Tag = Information_Reply + then Data + with Size => Message'Last - Sequence_Number'Last + if Tag = Echo_Reply or Tag = Echo_Request; + Originate_Timestamp : Timestamp; + Receive_Timestamp : Timestamp; + Transmit_Timestamp : Timestamp + then null; + Data : Opaque; + end message; + +end ICMP; diff --git a/tests/data/specs/in_ethernet.rflx b/tests/data/specs/in_ethernet.rflx new file mode 100644 index 000000000..4cd388b1b --- /dev/null +++ b/tests/data/specs/in_ethernet.rflx @@ -0,0 +1,9 @@ +with Ethernet; +with IPv4; + +package In_Ethernet is + + for Ethernet::Frame use (Payload => IPv4::Packet) + if Type_Length = 16#0800#; + +end In_Ethernet; diff --git a/tests/data/specs/in_ipv4.rflx b/tests/data/specs/in_ipv4.rflx new file mode 100644 index 000000000..ef3381ef6 --- /dev/null +++ b/tests/data/specs/in_ipv4.rflx @@ -0,0 +1,13 @@ +with IPv4; +with UDP; +with ICMP; + +package In_IPv4 is + + for IPv4::Packet use (Payload => UDP::Datagram) + if Protocol = IPv4::P_UDP; + + for IPv4::Packet use (Payload => ICMP::Message) + if Protocol = IPv4::P_ICMP; + +end In_IPv4; diff --git a/tests/data/specs/ipv4.rflx b/tests/data/specs/ipv4.rflx new file mode 100644 index 000000000..732b542dd --- /dev/null +++ b/tests/data/specs/ipv4.rflx @@ -0,0 +1,66 @@ +package IPv4 is + + type Version is range 4 .. 4 with Size => 4; + type IHL is range 5 .. 15 with Size => 4; + type DCSP is mod 2**6; + type ECN is mod 2**2; + type Total_Length is mod 2**16; + type Identification is mod 2**16; + type Fragment_Offset is mod 2**13; + type TTL is mod 2**8; + type Protocol is (P_ICMP => 1, P_UDP => 17) with Size => 8, Always_Valid; + type Header_Checksum is mod 2**16; + type Address is mod 2**32; + + type Option_Class is (Control => 0, Debugging_And_Measurement => 2) with Size => 2; + type Option_Number is mod 2**5; + type Option_Length is range 2 .. 2**8 - 1 with Size => 8; + + type Option is + message + Copied : Boolean; + Option_Class : Option_Class; + Option_Number : Option_Number + then null + if Option_Class = Control and Option_Number = 1 + then Option_Length + if Option_Number > 1; + Option_Length : Option_Length; + Option_Data : Opaque + with Size => (Option_Length - 2) * 8 + if (Option_Class = Control and Option_Number = 2 and Option_Length = 11) + or (Option_Class = Control and Option_Number = 8 and Option_Length = 4) + or (Option_Class = Control and (Option_Number = 3 or Option_Number = 7 or Option_Number = 9)) + or (Option_Class = Debugging_And_Measurement and Option_Number = 4); + end message; + + type Options is sequence of Option; + + type Packet is + message + Version : Version; + IHL : IHL; + DSCP : DCSP; + ECN : ECN; + Total_Length : Total_Length; + Identification : Identification + if Total_Length >= IHL * 4; + Flag_R : Boolean; + Flag_DF : Boolean + if Flag_R = False; + Flag_MF : Boolean; + Fragment_Offset : Fragment_Offset; + TTL : TTL; + Protocol : Protocol; + Header_Checksum : Header_Checksum; + Source : Address; + Destination : Address + then Options + with Size => (IHL - 5) * 32; + Options : Options + then Payload + with Size => Total_Length * 8 - (IHL * 32); + Payload : Opaque; + end message; + +end IPv4; diff --git a/tests/data/specs/tls_alert.rflx b/tests/data/specs/tls_alert.rflx new file mode 100644 index 000000000..941d5ae8b --- /dev/null +++ b/tests/data/specs/tls_alert.rflx @@ -0,0 +1,44 @@ +package TLS_Alert is + + type Alert_Level is (Warning => 1, Fatal => 2) with Size => 8; + + type Alert_Description is + (Close_Notify => 0, + Unexpected_Message => 10, + Bad_Record_MAC => 20, + Record_Overflow => 22, + Handshake_Failure => 40, + Bad_Certificate => 42, + Unsupported_Certificate => 43, + Certificate_Revoked => 44, + Certificate_Expired => 45, + Certificate_Unknown => 46, + Illegal_Parameter => 47, + Unknown_CA => 48, + Access_Denied => 49, + Decode_Error => 50, + Decrypt_Error => 51, + Protocol_Version => 70, + Insufficient_Security => 71, + Internal_Error => 80, + Inappropriate_Fallback => 86, + User_Canceled => 90, + Missing_Extension => 109, + Unsupported_Extension => 110, + Unrecognized_Name => 112, + Bad_Certificate_Status_Response => 113, + Unknown_PSK_Identity => 115, + Certificate_Required => 116, + No_Application_Protocol => 120) + with Size => 8; + + type Alert is + message + Level : Alert_Level; + Description : Alert_Description + then null + if (Level = Warning and (Description = Close_Notify or Description = User_Canceled)) + or (Level = Fatal and Description /= Close_Notify and Description /= User_Canceled); + end message; + +end TLS_Alert; diff --git a/tests/data/specs/tls_record.rflx b/tests/data/specs/tls_record.rflx new file mode 100644 index 000000000..b010e35ea --- /dev/null +++ b/tests/data/specs/tls_record.rflx @@ -0,0 +1,37 @@ +package TLS_Record is + + type Content_Type is + (Invalid => 0, + Change_Cipher_Spec => 20, + Alert => 21, + Handshake => 22, + Application_Data => 23, + Heartbeat => 24) + with Size => 8; + + type Protocol_Version is + (TLS_1_0 => 16#0301#, + TLS_1_1 => 16#0302#, + TLS_1_2 => 16#0303#, + TLS_1_3 => 16#0304#) + with Size => 16; + + type Length is range 0 .. 2**14 + 256 with Size => 16; + + type TLS_Record is + message + Tag : Content_Type; + Legacy_Record_Version : Protocol_Version; + Length : Length + then Fragment + with Size => Length * 8 + if Tag /= Application_Data and Length <= 2**14 + then Encrypted_Record + with Size => Length * 8 + if Tag = Application_Data and Legacy_Record_Version = TLS_1_2; + Fragment : Opaque + then null; + Encrypted_Record : Opaque; + end message; + +end TLS_Record; diff --git a/tests/data/specs/udp.rflx b/tests/data/specs/udp.rflx new file mode 100644 index 000000000..a37d582a0 --- /dev/null +++ b/tests/data/specs/udp.rflx @@ -0,0 +1,17 @@ +package UDP is + + type Port is mod 2**16; + type Length is range 8 .. 2**16 - 1 with Size => 16; + type Checksum is mod 2**16; + + type Datagram is + message + Source_Port : Port; + Destination_Port : Port; + Length : Length; + Checksum : Checksum; + Payload : Opaque + with Size => (Length - 8) * 8; + end message; + +end UDP; diff --git a/tests/integration/benchmark.py b/tests/integration/benchmark.py index 91a4c3d60..3fadcd4db 100755 --- a/tests/integration/benchmark.py +++ b/tests/integration/benchmark.py @@ -47,7 +47,7 @@ def generate(self, count: int = 2 ** 16) -> Generator[bytes, None, None]: pkt.set("Flag_MF", "False") pkt.set("Fragment_Offset", 0) pkt.set("TTL", 64) - pkt.set("Protocol", "PROTOCOL_ICMP") + pkt.set("Protocol", "P_ICMP") pkt.set("Header_Checksum", 0) pkt.set("Source", 0) pkt.set("Destination", 0) diff --git a/tests/integration/pyrflx_test.py b/tests/integration/pyrflx_test.py index bd4fbbf2f..d8c4be22d 100644 --- a/tests/integration/pyrflx_test.py +++ b/tests/integration/pyrflx_test.py @@ -7,7 +7,7 @@ from rflx.identifier import ID from rflx.model import FINAL, Link, Message from rflx.pyrflx import MessageValue, Package, PyRFLX, PyRFLXError, TypeValue, utils -from tests.const import CAPTURED_DIR, EX_SPEC_DIR, SPEC_DIR +from tests.const import CAPTURED_DIR, SPEC_DIR def test_ethernet_set_tltpid(ethernet_frame_value: MessageValue) -> None: @@ -247,7 +247,7 @@ def test_no_verification_ethernet(ethernet_frame_value: MessageValue) -> None: ethernet_frame_value.set("Payload", payload) assert ethernet_frame_value.valid_message pyrflx_ = PyRFLX.from_specs( - [f"{EX_SPEC_DIR}/ethernet.rflx"], + [SPEC_DIR / "ethernet.rflx"], skip_model_verification=True, skip_message_verification=True, ) @@ -274,7 +274,7 @@ def test_no_verification_sequence_nested_messages( assert message_sequence_value.valid_message pyrflx_ = PyRFLX.from_specs( - [f"{SPEC_DIR}/sequence_message.rflx"], + [SPEC_DIR / "sequence_message.rflx"], skip_model_verification=True, skip_message_verification=True, ) diff --git a/tests/integration/session/session_test.py b/tests/integration/session/session_test.py index fbf0ff891..63d696a48 100644 --- a/tests/integration/session/session_test.py +++ b/tests/integration/session/session_test.py @@ -3,13 +3,15 @@ import pytest from rflx.specification.parser import Parser +from tests import utils TESTDIR = "tests/integration/session" @pytest.mark.parametrize("spec", ["tls_handshake_session", "tls_record_session"]) -def test_session(spec: str) -> None: +def test_session(spec: str, tmp_path: Path) -> None: p = Parser() p.parse(Path(f"{TESTDIR}/{spec}.rflx")) model = p.create_model() assert len(model.sessions) == 1 + utils.assert_compilable_code(model, tmp_path) diff --git a/tests/integration/specs_test.py b/tests/integration/specs_test.py index 301edfcc0..83bd741e2 100644 --- a/tests/integration/specs_test.py +++ b/tests/integration/specs_test.py @@ -1,6 +1,6 @@ import itertools from pathlib import Path -from typing import List +from typing import Sequence import pytest @@ -10,10 +10,10 @@ from rflx.pyrflx import PyRFLXError from rflx.specification import Parser from tests import utils -from tests.const import CAPTURED_DIR, EX_SPEC_DIR, GENERATED_DIR, SPEC_DIR +from tests.const import CAPTURED_DIR, GENERATED_DIR, SPEC_DIR -def assert_equal_code(spec_files: List[str]) -> None: +def assert_equal_code(spec_files: Sequence[Path]) -> None: parser = Parser() for spec_file in spec_files: @@ -34,7 +34,7 @@ def assert_equal_code(spec_files: List[str]) -> None: def test_ethernet() -> None: - assert_equal_code([f"{EX_SPEC_DIR}/ethernet.rflx"]) + assert_equal_code([SPEC_DIR / "ethernet.rflx"]) # rflx-ethernet-tests.adb @@ -212,7 +212,7 @@ def test_ethernet_generating_ethernet_2_vlan_dynamic() -> None: def test_ipv4() -> None: - assert_equal_code([f"{EX_SPEC_DIR}/ipv4.rflx"]) + assert_equal_code([SPEC_DIR / "ipv4.rflx"]) # rflx-ipv4-tests.adb @@ -233,7 +233,7 @@ def test_ipv4_parsing_ipv4(ipv4_packet_value: pyrflx.MessageValue) -> None: assert ipv4_packet_value.get("Flag_MF") == "False" assert ipv4_packet_value.get("Fragment_Offset") == 0 assert ipv4_packet_value.get("TTL") == 64 - assert ipv4_packet_value.get("Protocol") == "PROTOCOL_UDP" + assert ipv4_packet_value.get("Protocol") == "P_UDP" assert ipv4_packet_value.get("Header_Checksum") == int("7CBE", 16) assert ipv4_packet_value.get("Source") == int("7f000001", 16) assert ipv4_packet_value.get("Destination") == int("7f000001", 16) @@ -276,7 +276,7 @@ def test_ipv4_generating_ipv4(ipv4_packet_value: pyrflx.MessageValue) -> None: ipv4_packet_value.set("Flag_MF", "False") ipv4_packet_value.set("Fragment_Offset", 0) ipv4_packet_value.set("TTL", 64) - ipv4_packet_value.set("Protocol", "PROTOCOL_UDP") + ipv4_packet_value.set("Protocol", "P_UDP") ipv4_packet_value.set("Header_Checksum", int("7CBE", 16)) ipv4_packet_value.set("Source", int("7f000001", 16)) ipv4_packet_value.set("Destination", int("7f000001", 16)) @@ -297,23 +297,23 @@ def test_ipv4_generating_ipv4_option_value(ipv4_option_value: pyrflx.MessageValu def test_in_ethernet() -> None: assert_equal_code( [ - f"{EX_SPEC_DIR}/ethernet.rflx", - f"{EX_SPEC_DIR}/ipv4.rflx", - f"{EX_SPEC_DIR}/in_ethernet.rflx", + SPEC_DIR / "ethernet.rflx", + SPEC_DIR / "ipv4.rflx", + SPEC_DIR / "in_ethernet.rflx", ] ) def test_udp() -> None: - assert_equal_code([f"{EX_SPEC_DIR}/udp.rflx"]) + assert_equal_code([SPEC_DIR / "udp.rflx"]) def test_in_ipv4() -> None: assert_equal_code( [ - f"{EX_SPEC_DIR}/ipv4.rflx", - f"{EX_SPEC_DIR}/udp.rflx", - f"{EX_SPEC_DIR}/in_ipv4.rflx", + SPEC_DIR / "ipv4.rflx", + SPEC_DIR / "udp.rflx", + SPEC_DIR / "in_ipv4.rflx", ] ) @@ -376,7 +376,7 @@ def test_in_ipv4_generating_udp_in_ipv4_in_ethernet( ipv4_packet_value.set("Flag_MF", "False") ipv4_packet_value.set("Fragment_Offset", 0) ipv4_packet_value.set("TTL", 64) - ipv4_packet_value.set("Protocol", "PROTOCOL_UDP") + ipv4_packet_value.set("Protocol", "P_UDP") ipv4_packet_value.set("Header_Checksum", int("7CBC", 16)) ipv4_packet_value.set("Source", int("7f000001", 16)) ipv4_packet_value.set("Destination", int("7f000001", 16)) @@ -395,7 +395,7 @@ def test_in_ipv4_generating_udp_in_ipv4_in_ethernet( def test_tlv() -> None: - assert_equal_code([f"{SPEC_DIR}/tlv.rflx"]) + assert_equal_code([SPEC_DIR / "tlv.rflx"]) # rflx-tlv-tests.adb @@ -459,21 +459,5 @@ def test_tlv_generating_tlv_error(tlv_message_value: pyrflx.MessageValue) -> Non assert tlv_message_value.bytestring == b"\x03" -def test_tls(tmp_path: Path) -> None: - utils.assert_compilable_code_specs( - [ - f"{EX_SPEC_DIR}/tls_alert.rflx", - f"{EX_SPEC_DIR}/tls_handshake.rflx", - f"{EX_SPEC_DIR}/tls_heartbeat.rflx", - f"{EX_SPEC_DIR}/tls_record.rflx", - ], - tmp_path, - ) - - -def test_icmp(tmp_path: Path) -> None: - utils.assert_compilable_code_specs([f"{EX_SPEC_DIR}/icmp.rflx"], tmp_path) - - def test_feature_integeration(tmp_path: Path) -> None: - utils.assert_compilable_code_specs([f"{SPEC_DIR}/feature_integration.rflx"], tmp_path) + utils.assert_compilable_code_specs([SPEC_DIR / "feature_integration.rflx"], tmp_path) diff --git a/tests/spark/generated/rflx-in_ipv4-contains.ads b/tests/spark/generated/rflx-in_ipv4-contains.ads index 13c5bb61b..dcba33f0f 100644 --- a/tests/spark/generated/rflx-in_ipv4-contains.ads +++ b/tests/spark/generated/rflx-in_ipv4-contains.ads @@ -20,7 +20,7 @@ is and then RFLX.IPv4.Packet.Present (Ctx, RFLX.IPv4.Packet.F_Payload) and then RFLX.IPv4.Packet.Valid (Ctx, RFLX.IPv4.Packet.F_Protocol) and then RFLX.IPv4.Packet.Get_Protocol (Ctx).Known - and then RFLX.IPv4.Packet.Get_Protocol (Ctx).Enum = IPv4.PROTOCOL_UDP); + and then RFLX.IPv4.Packet.Get_Protocol (Ctx).Enum = IPv4.P_UDP); use type RFLX.IPv4.Packet.Field_Cursors; @@ -50,7 +50,7 @@ is and then RFLX.IPv4.Packet.Present (Ctx, RFLX.IPv4.Packet.F_Payload) and then RFLX.IPv4.Packet.Valid (Ctx, RFLX.IPv4.Packet.F_Protocol) and then RFLX.IPv4.Packet.Get_Protocol (Ctx).Known - and then RFLX.IPv4.Packet.Get_Protocol (Ctx).Enum = IPv4.PROTOCOL_ICMP); + and then RFLX.IPv4.Packet.Get_Protocol (Ctx).Enum = IPv4.P_ICMP); procedure Switch_To_Payload (IPv4_Packet_PDU_Context : in out RFLX.IPv4.Packet.Context; ICMP_Message_SDU_Context : out RFLX.ICMP.Message.Context) with Pre => diff --git a/tests/spark/generated/rflx-ipv4.ads b/tests/spark/generated/rflx-ipv4.ads index a438730d0..4036c709c 100644 --- a/tests/spark/generated/rflx-ipv4.ads +++ b/tests/spark/generated/rflx-ipv4.ads @@ -191,10 +191,10 @@ is type Protocol_Base is mod 2**8; - type Protocol_Enum is (PROTOCOL_ICMP, PROTOCOL_UDP) with + type Protocol_Enum is (P_ICMP, P_UDP) with Size => 8; - for Protocol_Enum use (PROTOCOL_ICMP => 1, PROTOCOL_UDP => 17); + for Protocol_Enum use (P_ICMP => 1, P_UDP => 17); type Protocol (Known : Boolean := False) is record @@ -219,9 +219,9 @@ is function To_Base (Enum : RFLX.IPv4.Protocol_Enum) return RFLX.IPv4.Protocol_Base is ((case Enum is - when PROTOCOL_ICMP => + when P_ICMP => 1, - when PROTOCOL_UDP => + when P_UDP => 17)); function To_Actual (Enum : Protocol_Enum) return RFLX.IPv4.Protocol is @@ -230,9 +230,9 @@ is function To_Actual (Val : RFLX.IPv4.Protocol_Base) return RFLX.IPv4.Protocol is ((case Val is when 1 => - (True, PROTOCOL_ICMP), + (True, P_ICMP), when 17 => - (True, PROTOCOL_UDP), + (True, P_UDP), when others => (False, Val))) with diff --git a/tests/spark/rflx-in_ethernet_tests.adb b/tests/spark/rflx-in_ethernet_tests.adb index c4b723c39..289858306 100644 --- a/tests/spark/rflx-in_ethernet_tests.adb +++ b/tests/spark/rflx-in_ethernet_tests.adb @@ -106,7 +106,7 @@ package body RFLX.In_Ethernet_Tests is IPv4.Packet.Set_Flag_MF (IPv4_Packet_Context, False); IPv4.Packet.Set_Fragment_Offset (IPv4_Packet_Context, 0); IPv4.Packet.Set_TTL (IPv4_Packet_Context, 64); - IPv4.Packet.Set_Protocol (IPv4_Packet_Context, IPv4.PROTOCOL_UDP); + IPv4.Packet.Set_Protocol (IPv4_Packet_Context, IPv4.P_UDP); IPv4.Packet.Set_Header_Checksum (IPv4_Packet_Context, 16#7CBC#); IPv4.Packet.Set_Source (IPv4_Packet_Context, 16#7f000001#); IPv4.Packet.Set_Destination (IPv4_Packet_Context, 16#7f000001#); diff --git a/tests/spark/rflx-in_ipv4_tests.adb b/tests/spark/rflx-in_ipv4_tests.adb index d635bef94..f28f8a367 100644 --- a/tests/spark/rflx-in_ipv4_tests.adb +++ b/tests/spark/rflx-in_ipv4_tests.adb @@ -156,7 +156,7 @@ package body RFLX.In_IPv4_Tests is IPv4.Packet.Set_Flag_MF (IPv4_Packet_Context, False); IPv4.Packet.Set_Fragment_Offset (IPv4_Packet_Context, 0); IPv4.Packet.Set_TTL (IPv4_Packet_Context, 64); - IPv4.Packet.Set_Protocol (IPv4_Packet_Context, IPv4.PROTOCOL_UDP); + IPv4.Packet.Set_Protocol (IPv4_Packet_Context, IPv4.P_UDP); IPv4.Packet.Set_Header_Checksum (IPv4_Packet_Context, 16#7CBC#); IPv4.Packet.Set_Source (IPv4_Packet_Context, 16#7f000001#); IPv4.Packet.Set_Destination (IPv4_Packet_Context, 16#7f000001#); diff --git a/tests/spark/rflx-ipv4_tests.adb b/tests/spark/rflx-ipv4_tests.adb index 7ba6c8ca9..1288d25ba 100644 --- a/tests/spark/rflx-ipv4_tests.adb +++ b/tests/spark/rflx-ipv4_tests.adb @@ -141,7 +141,7 @@ package body RFLX.IPv4_Tests is Protocol := IPv4.Packet.Get_Protocol (Context); Assert (Protocol.Known, "Unknown Protocol"); if Protocol.Known then - Assert (Protocol.Enum'Image, IPv4.Protocol_Enum'Image (IPv4.PROTOCOL_UDP), + Assert (Protocol.Enum'Image, IPv4.Protocol_Enum'Image (IPv4.P_UDP), "Invalid Protocol"); end if; Valid := IPv4.Packet.Valid (Context, IPv4.Packet.F_Header_Checksum); @@ -318,7 +318,7 @@ package body RFLX.IPv4_Tests is IPv4.Packet.Set_Flag_MF (Context, False); IPv4.Packet.Set_Fragment_Offset (Context, 0); IPv4.Packet.Set_TTL (Context, 64); - IPv4.Packet.Set_Protocol (Context, IPv4.PROTOCOL_UDP); + IPv4.Packet.Set_Protocol (Context, IPv4.P_UDP); IPv4.Packet.Set_Header_Checksum (Context, 16#7CBE#); IPv4.Packet.Set_Source (Context, 16#7f000001#); IPv4.Packet.Set_Destination (Context, 16#7f000001#); diff --git a/tests/unit/pyrflx_test.py b/tests/unit/pyrflx_test.py index a9dd24e0a..fcc1c463b 100644 --- a/tests/unit/pyrflx_test.py +++ b/tests/unit/pyrflx_test.py @@ -32,7 +32,7 @@ utils, ) from rflx.pyrflx.error import PyRFLXError -from tests.const import EX_SPEC_DIR, SPEC_DIR +from tests.const import SPEC_DIR def assert_bytestring_error(msg: MessageValue, msg_name: ID) -> None: @@ -79,7 +79,7 @@ def test_pyrflx_iterator(pyrflx_: PyRFLX) -> None: def test_attributes(pyrflx_: PyRFLX) -> None: - pyrflx_ = PyRFLX.from_specs([f"{SPEC_DIR}/tlv.rflx"]) + pyrflx_ = PyRFLX.from_specs([SPEC_DIR / "tlv.rflx"]) assert isinstance(pyrflx_["TLV"], Package) tlv_package = pyrflx_["TLV"] assert isinstance(tlv_package["Message"], MessageValue) @@ -87,7 +87,7 @@ def test_attributes(pyrflx_: PyRFLX) -> None: def test_no_verification(icmp_message_value: MessageValue) -> None: pyrflx_ = PyRFLX.from_specs( - [f"{EX_SPEC_DIR}/icmp.rflx"], skip_model_verification=True, skip_message_verification=True + [SPEC_DIR / "icmp.rflx"], skip_model_verification=True, skip_message_verification=True ) icmp_message_value_unv = pyrflx_["ICMP"]["Message"] icmp_message_value.set("Tag", "Echo_Request") @@ -1029,7 +1029,7 @@ def test_checksum_message_first(icmp_checksum_message_first: MessageValue) -> No def test_checksum_no_verification() -> None: # pylint: disable = protected-access pyrflx_ = PyRFLX.from_specs( - [f"{EX_SPEC_DIR}/icmp.rflx"], skip_model_verification=True, skip_message_verification=True + [SPEC_DIR / "icmp.rflx"], skip_model_verification=True, skip_message_verification=True ) icmp_message = pyrflx_["ICMP"]["Message"]._type icmp_msg = MessageValue( @@ -1142,7 +1142,7 @@ def msg_checksum(_: bytes, **__: object) -> int: return 0xFF pyrflx_ = PyRFLX.from_specs( - [f"{SPEC_DIR}/refinement_with_checksum.rflx", f"{SPEC_DIR}/tlv_with_checksum.rflx"] + [SPEC_DIR / "refinement_with_checksum.rflx", SPEC_DIR / "tlv_with_checksum.rflx"] ) refinement_package = pyrflx_["Refinement_With_Checksum"] tlv_package = pyrflx_["TLV_With_Checksum"] @@ -1168,7 +1168,7 @@ def msg_checksum(_: bytes, **__: object) -> int: ], ) def test_unaligned_field_serialization(data: bytes, f1: int, f2: int, f3: int) -> None: - msg = PyRFLX.from_specs([f"{SPEC_DIR}/unaligned_field.rflx"])["Unaligned_Field"]["M1"] + msg = PyRFLX.from_specs([SPEC_DIR / "unaligned_field.rflx"])["Unaligned_Field"]["M1"] msg.parse(data) assert msg.get("F1") == f1 assert msg.get("F2") == f2 @@ -1188,7 +1188,7 @@ def test_message_size(message_size_value: MessageValue) -> None: def test_message_size_unverified() -> None: pyrflx_ = PyRFLX.from_specs( - [f"{SPEC_DIR}/message_size.rflx"], + [SPEC_DIR / "message_size.rflx"], skip_model_verification=True, skip_message_verification=True, ) diff --git a/tests/unit/specification/parser_test.py b/tests/unit/specification/parser_test.py index d3a6652fd..3d414850e 100644 --- a/tests/unit/specification/parser_test.py +++ b/tests/unit/specification/parser_test.py @@ -11,7 +11,7 @@ from rflx.identifier import ID from rflx.model import FINAL, INITIAL, OPAQUE, Field, Link, Message, ModularInteger from rflx.specification import cache, parser -from tests.const import EX_SPEC_DIR, SPEC_DIR +from tests.const import SPEC_DIR from tests.data import models T = ModularInteger("Test::T", expr.Number(256)) @@ -1678,7 +1678,7 @@ def test_parse_ethernet_spec() -> None: } } - assert_ast_files([f"{EX_SPEC_DIR}/ethernet.rflx"], spec) + assert_ast_files([f"{SPEC_DIR}/ethernet.rflx"], spec) def test_parse_error_illegal_package_identifiers() -> None: @@ -2026,7 +2026,7 @@ def test_create_model_message_in_message() -> None: def test_create_model_ethernet_frame() -> None: - assert_messages_files([f"{EX_SPEC_DIR}/ethernet.rflx"], [models.ETHERNET_FRAME]) + assert_messages_files([f"{SPEC_DIR}/ethernet.rflx"], [models.ETHERNET_FRAME]) def test_create_model_type_derivation_message() -> None: diff --git a/tests/utils.py b/tests/utils.py index bb478eb0f..a8c9cffbe 100644 --- a/tests/utils.py +++ b/tests/utils.py @@ -1,7 +1,7 @@ import pathlib import shutil import subprocess -from typing import Any, Callable, Mapping, Sequence +from typing import Any, Callable, Iterable, Mapping, Sequence, Union import pytest @@ -65,7 +65,7 @@ def assert_type_error(instance: Type, regex: str) -> None: def assert_compilable_code_specs( - spec_files: Sequence[str], tmp_path: pathlib.Path, prefix: str = None + spec_files: Iterable[Union[str, pathlib.Path]], tmp_path: pathlib.Path, prefix: str = None ) -> None: parser = Parser() diff --git a/tools/generate_spark_test_code.py b/tools/generate_spark_test_code.py index 630d7aa68..49841bb69 100755 --- a/tools/generate_spark_test_code.py +++ b/tools/generate_spark_test_code.py @@ -10,7 +10,7 @@ from rflx.generator import Generator from rflx.model import Model from rflx.specification import Parser -from tests.const import EX_SPEC_DIR +from tests.const import SPEC_DIR logging.basicConfig(level=logging.INFO, format="%(message)s") logging.disable(logging.NOTSET) @@ -28,11 +28,11 @@ ] SPECIFICATION_FILES = [ - EX_SPEC_DIR / "ethernet.rflx", - EX_SPEC_DIR / "in_ethernet.rflx", - EX_SPEC_DIR / "in_ipv4.rflx", - EX_SPEC_DIR / "ipv4.rflx", - EX_SPEC_DIR / "udp.rflx", + SPEC_DIR / "ethernet.rflx", + SPEC_DIR / "in_ethernet.rflx", + SPEC_DIR / "in_ipv4.rflx", + SPEC_DIR / "ipv4.rflx", + SPEC_DIR / "udp.rflx", ] From 75890a1271b7e20ea50230fb4e410779559962dd Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 25 May 2021 16:02:05 +0200 Subject: [PATCH 30/43] Add testing of example specs Ref. #669 --- .github/workflows/tests.yml | 61 ++++++++++++++++++++++++++++++++++++- Makefile | 5 ++- 2 files changed, 64 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 6d9becf2a..0007553a0 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -16,7 +16,7 @@ jobs: - id: skip_check uses: fkirc/skip-duplicate-actions@v3.4.0 with: - paths_ignore: '["*.gpr", "examples/apps/**", "tests/spark/**"]' + paths_ignore: '["*.gpr", "examples/**", "tests/spark/**"]' checks: name: Checks @@ -485,3 +485,62 @@ jobs: - name: Verify run: | make prove_apps + + skip_check_specs: + name: Skip Check Specs + continue-on-error: true + runs-on: ubuntu-latest + outputs: + should_skip: ${{ steps.skip_check.outputs.should_skip }} + steps: + - id: skip_check + uses: fkirc/skip-duplicate-actions@v3.4.0 + with: + paths: '["defaults.gpr", "examples/specs/**", "rflx/**"]' + + tests_specs: + name: Tests (specs) + needs: skip_check_specs + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + if: ${{ needs.skip_check_specs.outputs.should_skip != 'true' }} + with: + submodules: true + - name: Set up Python ${{ matrix.python-version }} + if: ${{ needs.skip_check_specs.outputs.should_skip != 'true' }} + uses: actions/setup-python@v2 + with: + python-version: 3.7 + - name: Determine exact Python version + if: ${{ needs.skip_check_specs.outputs.should_skip != 'true' }} + run: + echo "PYTHON_VERSION=$(python -c 'import platform; print(platform.python_version())')" >> $GITHUB_ENV + - name: Cache Python dependencies + if: ${{ needs.skip_check_specs.outputs.should_skip != 'true' }} + uses: actions/cache@v2 + with: + path: | + ~/.cache/pip + ~/.local/lib/python${{ matrix.python-version }}/site-packages + ~/.local/bin + key: ${{ runner.os }}-python${{ env.PYTHON_VERSION }}-${{ hashFiles('setup.py', '*.cfg', '*.ini', '.pylintrc', '.flake8') }} + - name: Install toolchain + if: ${{ needs.skip_check_specs.outputs.should_skip != 'true' }} + uses: ada-actions/toolchain@ce2021 + with: + distrib: community + - name: Install dependencies + if: ${{ needs.skip_check_specs.outputs.should_skip != 'true' }} + run: | + echo "$HOME/.local/bin" >> $GITHUB_PATH + echo "PYTHONPATH=$PWD" >> $GITHUB_ENV + echo "HYPOTHESIS_PROFILE=ci" >> $GITHUB_ENV + echo "PYTEST_ADDOPTS=--basetemp=build" >> $GITHUB_ENV + sudo apt install graphviz libgmp-dev patchelf + python -m pip install --upgrade pip wheel + pip install .[devel] + - name: Test + if: ${{ needs.skip_check_specs.outputs.should_skip != 'true' }} + run: | + make test_specs diff --git a/Makefile b/Makefile index 7082ea48c..47a298831 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,7 @@ test-files := $(addprefix $(noprefix-dir)/, $(subst /rflx-,/,$(test-files))) endif .PHONY: check check_black check_isort check_flake8 check_pylint check_mypy format \ - test test_python test_spark test_apps prove prove_tests prove_apps clean + test test_python test_spark test_apps test_specs prove prove_tests prove_apps clean all: check test prove @@ -91,6 +91,9 @@ test_spark_optimized: $(test-files) test_apps: python3 -m pytest -n$(shell nproc) -vv -m "root or not root" tests/integration/example_apps_test.py +test_specs: + cd examples/specs && python3 -m pytest -n$(shell nproc) -vv tests/test_specs.py + prove: prove_tests prove_apps prove_tests: $(test-files) From 7b6dfc2421aa7bf6e1ff772778298e0fb4db1b65 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 25 May 2021 16:07:01 +0200 Subject: [PATCH 31/43] Change testing of example apps --- Makefile | 4 +++- tests/integration/example_apps_test.py | 17 ----------------- 2 files changed, 3 insertions(+), 18 deletions(-) delete mode 100644 tests/integration/example_apps_test.py diff --git a/Makefile b/Makefile index 47a298831..c7490bb7d 100644 --- a/Makefile +++ b/Makefile @@ -89,7 +89,9 @@ test_spark_optimized: $(test-files) $(test-bin) test_apps: - python3 -m pytest -n$(shell nproc) -vv -m "root or not root" tests/integration/example_apps_test.py + python3 examples/apps/icmp_socket.py + $(MAKE) -C examples/apps/ping test_python + $(MAKE) -C examples/apps/ping test_spark test_specs: cd examples/specs && python3 -m pytest -n$(shell nproc) -vv tests/test_specs.py diff --git a/tests/integration/example_apps_test.py b/tests/integration/example_apps_test.py deleted file mode 100644 index 70dcd906b..000000000 --- a/tests/integration/example_apps_test.py +++ /dev/null @@ -1,17 +0,0 @@ -import subprocess - -import pytest - - -def test_icmp_socket() -> None: - subprocess.run(["python3", "examples/apps/icmp_socket.py"], check=True) - - -@pytest.mark.root -def test_ping_python() -> None: - subprocess.run(["make", "-C", "examples/apps/ping", "test_python"], check=True) - - -@pytest.mark.root -def test_ping_spark() -> None: - subprocess.run(["make", "-C", "examples/apps/ping", "test_spark"], check=True) From 5b37c3555c66c66b2aef964cd69ebbb0eee41755 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 25 May 2021 17:10:26 +0200 Subject: [PATCH 32/43] Update example specifications --- examples/specs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/specs b/examples/specs index 2d5af2068..cda3a5ced 160000 --- a/examples/specs +++ b/examples/specs @@ -1 +1 @@ -Subproject commit 2d5af206874f8fd165d3f05959812ace9bab0f4e +Subproject commit cda3a5ced5d96280b265e637ef18468ad4e903be From bf5c23bf638406e3a434c813589bdd2a15fa14db Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Wed, 26 May 2021 10:56:48 +0200 Subject: [PATCH 33/43] Update parser to 0.5.0 Ref. #292, #663 --- rflx/expression.py | 6 ++ rflx/model/session.py | 17 ---- rflx/specification/parser.py | 6 +- setup.py | 2 +- .../session/tls_record_session.rflx | 12 +-- tests/unit/model/session_test.py | 99 +------------------ tests/unit/specification/grammar_test.py | 1 + 7 files changed, 23 insertions(+), 120 deletions(-) diff --git a/rflx/expression.py b/rflx/expression.py index b0e1677f1..84dd9b7b5 100644 --- a/rflx/expression.py +++ b/rflx/expression.py @@ -1176,6 +1176,12 @@ def _check_type_subexpr(self) -> RecordFluxError: return error +class HasData(Attribute): + def _check_type_subexpr(self) -> RecordFluxError: + self.type_ = rty.BOOLEAN + return self.prefix.check_type(rty.Channel(readable=True, writable=False)) + + class Head(Attribute): def _check_type_subexpr(self) -> RecordFluxError: error = self.prefix.check_type_instance(rty.Composite) diff --git a/rflx/model/session.py b/rflx/model/session.py index 596404cba..012bca2c5 100644 --- a/rflx/model/session.py +++ b/rflx/model/session.py @@ -11,10 +11,6 @@ from . import type_ as mty -CHANNEL_FUNCTIONS = { - ID("Data_Available"): rty.Channel(readable=True, writable=False), -} - class Transition(Base): def __init__( @@ -289,8 +285,6 @@ def __validate_declarations( declarations: Mapping[ID, decl.Declaration], visible_declarations: Mapping[ID, decl.Declaration], ) -> None: - # pylint: disable=too-many-branches - visible_declarations = dict(visible_declarations) def undefined_type(type_identifier: StrID, location: Optional[Location]) -> None: @@ -302,14 +296,6 @@ def undefined_type(type_identifier: StrID, location: Optional[Location]) -> None ) for k, d in declarations.items(): - if any(str(d.identifier).upper() == str(f).upper() for f in CHANNEL_FUNCTIONS): - self.error.append( - f'{d.DESCRIPTIVE_NAME} declaration shadows built-in function "{k}"', - Subsystem.MODEL, - Severity.ERROR, - d.location, - ) - if k in visible_declarations: self.error.append( f'local variable "{k}" shadows previous declaration', @@ -452,9 +438,6 @@ def __typify_variable( declaration = declarations[identifier] assert isinstance(declaration, decl.FunctionDeclaration) expression.argument_types = declaration.argument_types - if identifier in CHANNEL_FUNCTIONS: - expression.type_ = rty.BOOLEAN - expression.argument_types = [CHANNEL_FUNCTIONS[identifier]] if isinstance(expression, expr.Conversion): if identifier in self.types: expression.type_ = self.types[identifier].type_ diff --git a/rflx/specification/parser.py b/rflx/specification/parser.py index 0813c2571..99aa065ec 100644 --- a/rflx/specification/parser.py +++ b/rflx/specification/parser.py @@ -132,7 +132,7 @@ def create_assignment(assignment: Statement, filename: Path) -> stmt.Statement: ) -def create_list_attribute(expression: Statement, filename: Path) -> stmt.Statement: +def create_attribute_statement(expression: Statement, filename: Path) -> stmt.Statement: attrs = { "Append": stmt.Append, "Extend": stmt.Extend, @@ -152,7 +152,7 @@ def create_statement(statement: Statement, filename: Path) -> stmt.Statement: handlers = { "Reset": create_reset, "Assignment": create_assignment, - "ListAttribute": create_list_attribute, + "AttributeStatement": create_attribute_statement, } return handlers[statement.kind_name](statement, filename) @@ -431,6 +431,8 @@ def create_attribute(expression: Expr, filename: Path) -> expr.Expr: return expr.Size(inner) if expression.f_kind.kind_name == "AttrValidChecksum": return expr.ValidChecksum(inner) + if expression.f_kind.kind_name == "AttrHasData": + return expr.HasData(inner) if expression.f_kind.kind_name == "AttrHead": return expr.Head(inner) if expression.f_kind.kind_name == "AttrOpaque": diff --git a/setup.py b/setup.py index 85372c318..8e4e0aa25 100644 --- a/setup.py +++ b/setup.py @@ -48,7 +48,7 @@ "pydotplus >=2, <3", "z3-solver >=4, <5", "RecordFlux-language@git+https://github.com/Componolit/RecordFlux-language.git" - "@v0.3.0#egg=RecordFlux-language", + "@v0.5.0#egg=RecordFlux-language", ], extras_require={ "devel": [ diff --git a/tests/integration/session/tls_record_session.rflx b/tests/integration/session/tls_record_session.rflx index 1832ac7b6..301b53b86 100644 --- a/tests/integration/session/tls_record_session.rflx +++ b/tests/integration/session/tls_record_session.rflx @@ -52,7 +52,7 @@ package TLS_Record_Session is state Idle_Message is Available : Boolean := False; begin - Available := Data_Available (Application_Control_Channel); + Available := Application_Control_Channel'Has_Data; transition then Control if Available = True @@ -62,7 +62,7 @@ package TLS_Record_Session is state Idle_Handshake_Control is Available : Boolean := False; begin - Available := Data_Available (Handshake_Control_Channel); + Available := Handshake_Control_Channel'Has_Data; transition then Handshake_Control if Available = True @@ -72,7 +72,7 @@ package TLS_Record_Session is state Idle_Handshake is Available : Boolean := False; begin - Available := Data_Available (Handshake_Data_Channel); + Available := Handshake_Data_Channel'Has_Data; transition then Handshake if Available = True @@ -82,7 +82,7 @@ package TLS_Record_Session is state Idle_Network is Available : Boolean := False; begin - Available := Data_Available (Network_Channel); + Available := Network_Channel'Has_Data; transition then Network_In if Available = True @@ -93,7 +93,7 @@ package TLS_Record_Session is state Idle_Application is Available : Boolean := False; begin - Available := Data_Available (Data_Channel); + Available := Data_Channel'Has_Data; transition then Network_Out_Application if Available = True @@ -103,7 +103,7 @@ package TLS_Record_Session is state Idle_Heartbeat is Available : Boolean := False; begin - Available := Data_Available (Heartbeat_Data_Channel); + Available := Heartbeat_Data_Channel'Has_Data; transition then Heartbeat if Available = True diff --git a/tests/unit/model/session_test.py b/tests/unit/model/session_test.py index 599757cd5..4468103d6 100644 --- a/tests/unit/model/session_test.py +++ b/tests/unit/model/session_test.py @@ -972,7 +972,7 @@ def test_channel_write_invalid_mode() -> None: ) -def test_channel_function_data_available() -> None: +def test_channel_attribute_has_data() -> None: Session( identifier="P::S", initial=ID("Start"), @@ -982,11 +982,7 @@ def test_channel_function_data_available() -> None: "Start", transitions=[Transition(target=ID("End"))], declarations=[], - actions=[ - stmt.Assignment( - "Result", expr.Call("Data_Available", [expr.Variable("Channel")]) - ) - ], + actions=[stmt.Assignment("Result", expr.HasData(expr.Variable("Channel")))], ), State("End"), ], @@ -1000,7 +996,7 @@ def test_channel_function_data_available() -> None: ) -def test_channel_function_data_available_invalid_mode() -> None: +def test_channel_attribute_has_data_invalid_mode() -> None: assert_session_model_error( states=[ State( @@ -1010,11 +1006,8 @@ def test_channel_function_data_available_invalid_mode() -> None: actions=[ stmt.Assignment( "Result", - expr.Call( - "Data_Available", - [expr.Variable("Out_Channel", location=Location((10, 20)))], - ), - ) + expr.HasData(expr.Variable("Out_Channel", location=Location((10, 20)))), + ), ], ), State("End"), @@ -1071,67 +1064,6 @@ def test_undeclared_variable_in_function_call() -> None: ) -def test_function_shadows_builtin_data_available() -> None: - assert_session_model_error( - states=[ - State( - "Start", - transitions=[Transition(target=ID("End"))], - declarations=[], - ), - State("End"), - ], - declarations=[], - parameters=[ - decl.FunctionDeclaration( - "Data_Available", - [], - "Boolean", - location=Location((10, 20)), - ), - ], - types=[BOOLEAN], - regex=( - r"^" - r":10:20: model: error: function declaration shadows built-in function " - r'"Data_Available"\n' - r':10:20: model: error: unused function "Data_Available"' - r"$" - ), - ) - - -def test_renaming_shadows_builtin_data_available() -> None: - assert_session_model_error( - states=[ - State( - "Start", - transitions=[Transition(target=ID("End"))], - declarations=[], - ), - State("End"), - ], - declarations=[ - decl.VariableDeclaration("Message", "TLV::Message"), - decl.RenamingDeclaration( - "Data_Available", - "Null::Message", - expr.Selected(expr.Variable("Message"), "Value"), - location=Location((10, 20)), - ), - ], - parameters=[], - types=[BOOLEAN, TLV_MESSAGE, NULL_MESSAGE, NULL_MESSAGE_IN_TLV_MESSAGE], - regex=( - r"^" - r":10:20: model: error: renaming declaration shadows built-in function " - r'"Data_Available"\n' - r':10:20: model: error: unused renaming "Data_Available"' - r"$" - ), - ) - - def test_local_variable_shadows_global() -> None: assert_session_model_error( states=[ @@ -1892,27 +1824,6 @@ def test_private_type() -> None: ) -def test_private_type_shadows_builtin_data_available() -> None: - assert_session_model_error( - states=[ - State( - "Start", - transitions=[Transition(target=ID("End"))], - declarations=[], - ), - State("End"), - ], - declarations=[], - parameters=[decl.TypeDeclaration(Private("Data_Available", location=Location((10, 20))))], - types=[], - regex=( - r"^:10:20: model: error: type declaration shadows built-in function" - r' "Data_Available"\n' - r':10:20: model: error: unused type "Data_Available"$' - ), - ) - - def test_private_type_shadows_type() -> None: assert_session_model_error( states=[ diff --git a/tests/unit/specification/grammar_test.py b/tests/unit/specification/grammar_test.py index fcbffb8d4..09fd7d86f 100644 --- a/tests/unit/specification/grammar_test.py +++ b/tests/unit/specification/grammar_test.py @@ -132,6 +132,7 @@ def test_variable(string: str, expected: decl.Declaration) -> None: ("X'Present", expr.Present(expr.Variable("X"))), ("X'Valid", expr.Valid(expr.Variable("X"))), ("X'Valid_Checksum", expr.ValidChecksum(expr.Variable("X"))), + ("X'Has_Data", expr.HasData(expr.Variable("X"))), ("X where X = 42", expr.Binding(expr.Variable("X"), {ID("X"): expr.Number(42)})), ("X'Head.Y", expr.Selected(expr.Head(expr.Variable("X")), "Y")), ], From 221114d9ce22d2119eed4996fa9a4d5c54a01f8d Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Thu, 27 May 2021 12:28:15 +0200 Subject: [PATCH 34/43] Add make targets for installation and runtime compatibility tests Ref. #263 --- .github/workflows/tests.yml | 12 ++---------- Makefile | 16 ++++++++++++++-- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 0007553a0..41f9b5392 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -85,8 +85,7 @@ jobs: python -m pip install --upgrade pip wheel - name: Install run: | - python setup.py sdist - pip install RecordFlux --no-deps --no-index --find-links dist/ + make test_installation skip_check_python: name: Skip Check Python @@ -262,16 +261,9 @@ jobs: uses: ada-actions/toolchain@ce2021 with: distrib: community - - name: Build runtime - run: | - git clone https://github.com/Componolit/ada-runtime - cd ada-runtime - git checkout 280a4867f1d872412aec00f35aa28b35ff295e60 - cd .. - make -C ada-runtime - name: Build run: | - gprbuild -Ptest --RTS=ada-runtime/build/posix/obj -Xaunit=no -Xoptimization=yes + make test_runtime verification_spark: name: Verification diff --git a/Makefile b/Makefile index c7490bb7d..d42515edb 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,8 @@ test-files := $(addprefix $(noprefix-dir)/, $(subst /rflx-,/,$(test-files))) endif .PHONY: check check_black check_isort check_flake8 check_pylint check_mypy format \ - test test_python test_spark test_apps test_specs prove prove_tests prove_apps clean + test test_python test_spark test_apps test_specs test_runtime \ + prove prove_tests prove_apps clean all: check test prove @@ -57,7 +58,7 @@ format: black -l 100 $(python-packages) ide/gnatstudio isort $(python-packages) ide/gnatstudio -test: test_python_coverage test_python_property test_spark +test: test_python_coverage test_python_property test_spark test_runtime test_installation test_python: python3 -m pytest -n$(shell nproc) -vv -m "not hypothesis" tests @@ -96,6 +97,17 @@ test_apps: test_specs: cd examples/specs && python3 -m pytest -n$(shell nproc) -vv tests/test_specs.py +test_runtime: + rm -rf $(build-dir)/ada-runtime + git clone --depth=1 https://github.com/Componolit/ada-runtime $(build-dir)/ada-runtime + $(MAKE) -C build/ada-runtime + gprbuild -Ptest --RTS=build/ada-runtime/build/posix/obj -Xaunit=no -Xoptimization=yes + +test_installation: + rm -rf $(build-dir)/pip + python setup.py sdist + pip install RecordFlux --no-deps --no-index --find-links dist/ --target $(build-dir)/pip + prove: prove_tests prove_apps prove_tests: $(test-files) From fba6b97636bfb93aeb3d26f46a7ab852527a8d96 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Thu, 27 May 2021 13:36:06 +0200 Subject: [PATCH 35/43] Change version of Ada runtime used for compatibility test Ref. #494 --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index d42515edb..b01891066 100644 --- a/Makefile +++ b/Makefile @@ -99,7 +99,7 @@ test_specs: test_runtime: rm -rf $(build-dir)/ada-runtime - git clone --depth=1 https://github.com/Componolit/ada-runtime $(build-dir)/ada-runtime + git clone --depth=1 --branch recordflux https://github.com/Componolit/ada-runtime $(build-dir)/ada-runtime $(MAKE) -C build/ada-runtime gprbuild -Ptest --RTS=build/ada-runtime/build/posix/obj -Xaunit=no -Xoptimization=yes From 3e71fc14e78fb6b130b7222ce5d90fd388fe9e25 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Thu, 27 May 2021 16:10:10 +0200 Subject: [PATCH 36/43] Fix generation of structure for messages with built-in types --- rflx/generator/common.py | 2 +- rflx/generator/generator.py | 4 +++- .../specification_model_generator_test.py | 19 +++++++++++++++++++ tests/unit/generator_test.py | 2 +- 4 files changed, 24 insertions(+), 3 deletions(-) diff --git a/rflx/generator/common.py b/rflx/generator/common.py index acf41ed79..5203226f5 100644 --- a/rflx/generator/common.py +++ b/rflx/generator/common.py @@ -695,7 +695,7 @@ def field_condition_call(message: model.Message, field: model.Field, value: ada. def prefixed_type_identifier(type_identifier: ada.ID, prefix: str) -> ada.ID: if model.is_builtin_type(type_identifier): - return type_identifier + return type_identifier.name return prefix * type_identifier diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 706d7f93b..4ec98a779 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -2757,7 +2757,9 @@ def __create_structure_type(self, message: Message) -> UnitPart: component_type: ty.Union[ID, Expr] if isinstance(type_, Scalar): - component_type = ID(self.__prefix * type_.identifier) + component_type = common.prefixed_type_identifier( + ID(type_.identifier), self.__prefix + ) elif isinstance(type_, Opaque): component_type = Indexed( Variable(const.TYPES_BYTES), diff --git a/tests/integration/specification_model_generator_test.py b/tests/integration/specification_model_generator_test.py index 96c279435..f847829d4 100644 --- a/tests/integration/specification_model_generator_test.py +++ b/tests/integration/specification_model_generator_test.py @@ -341,3 +341,22 @@ def test_refinement_with_self(tmp_path: Path) -> None: """, tmp_path, ) + + +def test_definite_message_with_builtin_type(tmp_path: Path) -> None: + spec = """ + package Test is + + type Length is range 0 .. 2**7 - 1 with Size => 7; + + type Message is + message + Flag : Boolean; + Length : Length; + Data : Opaque + with Size => Length * 8; + end message; + + end Test; + """ + utils.assert_compilable_code_string(spec, tmp_path) diff --git a/tests/unit/generator_test.py b/tests/unit/generator_test.py index b84466201..23c82043c 100644 --- a/tests/unit/generator_test.py +++ b/tests/unit/generator_test.py @@ -175,7 +175,7 @@ def test_substitution_relation_scalar( def test_prefixed_type_identifier() -> None: assert common.prefixed_type_identifier(ID("Modular"), "P") == ID("P.Modular") for t in BUILTIN_TYPES: - assert common.prefixed_type_identifier(ID(t), "P") == t + assert common.prefixed_type_identifier(ID(t), "P") == t.name def test_base_type_name() -> None: From 6407b9ce8f377f1e79577a4aa562d8bb22b88c8b Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 28 May 2021 14:35:06 +0200 Subject: [PATCH 37/43] Loosen restrictions on strings for extending identifiers --- rflx/identifier.py | 3 ++- tests/unit/identifier_test.py | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/rflx/identifier.py b/rflx/identifier.py index 6e1cd203b..8b8e2ee28 100644 --- a/rflx/identifier.py +++ b/rflx/identifier.py @@ -1,3 +1,4 @@ +import re from typing import Optional, Sequence, TypeVar, Union from rflx.error import Location, RecordFluxError, Severity, Subsystem @@ -13,7 +14,7 @@ def __init__( self.location = location if isinstance(identifier, str): - self._parts = identifier.split(self._separator) + self._parts = re.split(r"\.|::", identifier) elif isinstance(identifier, list): self._parts = identifier elif isinstance(identifier, ID): diff --git a/tests/unit/identifier_test.py b/tests/unit/identifier_test.py index ed1b5ad6e..75d272607 100644 --- a/tests/unit/identifier_test.py +++ b/tests/unit/identifier_test.py @@ -80,6 +80,8 @@ def test_id_add_str() -> None: assert ID("B::C") + "D" == ID("B::CD") assert ID("B::C") + "" == ID("B::C") assert "" + ID("B::C") == ID("B::C") + assert "A.B" + ID("C") == ID("A::BC") + assert ID("A") + "B.C" == ID("AB::C") def test_id_mul_id() -> None: @@ -92,6 +94,8 @@ def test_id_mul_str() -> None: assert ID("B::C") * "D" == ID("B::C::D") assert "" * ID("B::C") == ID("B::C") assert ID("B::C") * "" == ID("B::C") + assert "A.B" * ID("C") == ID("A::B::C") + assert ID("A") * "B.C" == ID("A::B::C") def test_id_name() -> None: From 5800110e91a05d4353d0ed6d88f989c97efe6c43 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 28 May 2021 11:46:17 +0200 Subject: [PATCH 38/43] Prevent name conflicts with enum literals in generated code Ref. #663 --- rflx/generator/common.py | 6 +- rflx/model/__init__.py | 1 + rflx/model/type_.py | 10 + rflx/specification/const.py | 5 + .../specification_model_generator_test.py | 81 +- tests/spark/generated/rflx-icmp-message.adb | 56 +- tests/spark/generated/rflx-icmp-message.ads | 722 +++++++++--------- tests/spark/generated/rflx-ipv4-option.adb | 10 +- tests/spark/generated/rflx-ipv4-option.ads | 70 +- tests/spark/generated/rflx-tlv-message.adb | 4 +- tests/spark/generated/rflx-tlv-message.ads | 22 +- 11 files changed, 525 insertions(+), 462 deletions(-) diff --git a/rflx/generator/common.py b/rflx/generator/common.py index 5203226f5..4609dcacd 100644 --- a/rflx/generator/common.py +++ b/rflx/generator/common.py @@ -189,7 +189,11 @@ def type_conversion(expression: expr.Expr) -> expr.Expr: for f, t in message.types.items() }, **{ - expr.Variable(l): type_conversion(expr.Call("To_Base", [expr.Variable(l)])) + expr.Variable(l): type_conversion( + expr.Call( + "To_Base", [expr.Variable(model.qualified_enum_literal(l, message.package))] + ) + ) for t in message.types.values() if isinstance(t, model.Enumeration) for l in t.literals.keys() diff --git a/rflx/model/__init__.py b/rflx/model/__init__.py index a635ca1b7..331d5b108 100644 --- a/rflx/model/__init__.py +++ b/rflx/model/__init__.py @@ -30,5 +30,6 @@ Type, is_builtin_type, is_internal_type, + qualified_enum_literal, qualified_type_identifier, ) diff --git a/rflx/model/type_.py b/rflx/model/type_.py index b77c8ba19..b9d692f8b 100644 --- a/rflx/model/type_.py +++ b/rflx/model/type_.py @@ -608,6 +608,16 @@ def qualified_type_identifier(identifier: ID, package: ID = None) -> ID: return identifier +def qualified_enum_literal(identifier: ID, package: ID = None) -> ID: + if identifier in BUILTIN_LITERALS: + return identifier + + if len(identifier.parts) == 1 and package: + return ID(package * identifier, location=identifier.location) + + assert False + + def qualified_enum_literals(types: ty.Iterable[Type], package: ID) -> ty.Dict[ID, Enumeration]: literals = {} diff --git a/rflx/specification/const.py b/rflx/specification/const.py index bbc5009e0..63cca409b 100644 --- a/rflx/specification/const.py +++ b/rflx/specification/const.py @@ -1,4 +1,5 @@ RESERVED_WORDS = [ + # Ada "abort", "abs", "abstract", @@ -72,6 +73,10 @@ "while", "with", "xor", + # Code generation "initial", "final", + "ctx", + "val", + "enum", ] diff --git a/tests/integration/specification_model_generator_test.py b/tests/integration/specification_model_generator_test.py index f847829d4..eb3043072 100644 --- a/tests/integration/specification_model_generator_test.py +++ b/tests/integration/specification_model_generator_test.py @@ -92,27 +92,65 @@ def test_comparison_opaque(condition: str, tmp_path: Path) -> None: ) -def test_potential_name_conflicts_fields_literals(tmp_path: Path) -> None: - utils.assert_compilable_code_string( - """ +def test_potential_name_conflicts_with_enum_literals(tmp_path: Path) -> None: + literals = [ + "Buffer", + "Bytes", + "Bytes_Ptr", + "Context", + "Data", + "F_A", + "F_B", + "F_C", + "F_Final", + "F_Inital", + "Field", + "First", + "Fld", + "Fst", + "Invalid", + "Last", + "Length", + "Lst", + "Opaque", + "S_Invalid", + "S_Valid", + "Seq_Ctx", + "Sequence", + "Size", + "Valid", + "Value", + ] + enum_literals = ", ".join(literals) + condition = " or ".join(f"A = {l}" for l in literals) + spec = f""" package Test is - type E is (F_A => 0, F_B => 1) with Size => 8; + type A is ({enum_literals}) with Size => 8; - type M is + type B is sequence of A; + + type Message is message - A : E - then null - if A = F_A + A : A then B - if A = F_B; - B : E; + if {condition}; + B : B + with Size => 8 + then C + if {condition}; + C : Opaque + with Size => 8 + then null + if {condition}; end message; + for Message use (C => Message) + if {condition}; + end Test; - """, - tmp_path, - ) + """ + utils.assert_compilable_code_string(spec, tmp_path) def test_sequence_with_imported_element_type_scalar(tmp_path: Path) -> None: @@ -326,17 +364,22 @@ def test_refinement_with_self(tmp_path: Path) -> None: utils.assert_compilable_code_string( """ package Test is + type Tag is (T1 => 1) with Size => 8; - type Len is mod 2**8; - type Packet is + + type Length is mod 2**8; + + type Message is message Tag : Tag; - Len : Len; - Val : Opaque - with Size => 8 * Len; + Length : Length; + Value : Opaque + with Size => 8 * Length; end message; - for Packet use (Val => Packet) + + for Message use (Value => Message) if Tag = T1; + end Test; """, tmp_path, diff --git a/tests/spark/generated/rflx-icmp-message.adb b/tests/spark/generated/rflx-icmp-message.adb index 19a45cf4d..e9a6c63c6 100644 --- a/tests/spark/generated/rflx-icmp-message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -70,26 +70,26 @@ is ((case Fld is when F_Tag => (if - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) then F_Code_Destination_Unreachable elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) then F_Code_Redirect elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) then F_Code_Time_Exceeded elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) then F_Code_Zero else @@ -98,26 +98,26 @@ is F_Checksum, when F_Checksum => (if - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) then F_Gateway_Internet_Address elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) then F_Identifier elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) then F_Pointer elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) then F_Unused_32 else @@ -132,18 +132,18 @@ is F_Data, when F_Sequence_Number => (if - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) then F_Data elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) then F_Final elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) then F_Originate_Timestamp else diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index 19108bf7f..10672904b 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -393,29 +393,29 @@ is and Invalid (Ctx, F_Receive_Timestamp) and Invalid (Ctx, F_Transmit_Timestamp) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) then Predecessor (Ctx, F_Code_Destination_Unreachable) = F_Tag and Valid_Next (Ctx, F_Code_Destination_Unreachable)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Redirect)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) then Predecessor (Ctx, F_Code_Redirect) = F_Tag and Valid_Next (Ctx, F_Code_Redirect)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) then Predecessor (Ctx, F_Code_Time_Exceeded) = F_Tag and Valid_Next (Ctx, F_Code_Time_Exceeded)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Parameter_Problem)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Source_Quench)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Request)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) then Predecessor (Ctx, F_Code_Zero) = F_Tag and Valid_Next (Ctx, F_Code_Zero)) @@ -596,29 +596,29 @@ is and Invalid (Ctx, F_Receive_Timestamp) and Invalid (Ctx, F_Transmit_Timestamp) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Redirect)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) then Predecessor (Ctx, F_Gateway_Internet_Address) = F_Checksum and Valid_Next (Ctx, F_Gateway_Internet_Address)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Reply)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) then Predecessor (Ctx, F_Identifier) = F_Checksum and Valid_Next (Ctx, F_Identifier)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) then Predecessor (Ctx, F_Pointer) = F_Checksum and Valid_Next (Ctx, F_Pointer)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Source_Quench)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) then Predecessor (Ctx, F_Unused_32) = F_Checksum and Valid_Next (Ctx, F_Unused_32)) @@ -808,14 +808,14 @@ is and Invalid (Ctx, F_Receive_Timestamp) and Invalid (Ctx, F_Transmit_Timestamp) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Echo_Request)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) then Predecessor (Ctx, F_Data) = F_Sequence_Number and Valid_Next (Ctx, F_Data)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) then Predecessor (Ctx, F_Originate_Timestamp) = F_Sequence_Number and Valid_Next (Ctx, F_Originate_Timestamp)) @@ -1233,32 +1233,32 @@ private then (Valid (Cursors (F_Tag)) and then Cursors (F_Code_Destination_Unreachable).Predecessor = F_Tag - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)))) and then (if Structural_Valid (Cursors (F_Code_Redirect)) then (Valid (Cursors (F_Tag)) and then Cursors (F_Code_Redirect).Predecessor = F_Tag - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)))) and then (if Structural_Valid (Cursors (F_Code_Time_Exceeded)) then (Valid (Cursors (F_Tag)) and then Cursors (F_Code_Time_Exceeded).Predecessor = F_Tag - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)))) and then (if Structural_Valid (Cursors (F_Code_Zero)) then (Valid (Cursors (F_Tag)) and then Cursors (F_Code_Zero).Predecessor = F_Tag - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))))) and then (if Structural_Valid (Cursors (F_Checksum)) then @@ -1275,32 +1275,32 @@ private then (Valid (Cursors (F_Checksum)) and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)))) and then (if Structural_Valid (Cursors (F_Identifier)) then (Valid (Cursors (F_Checksum)) and then Cursors (F_Identifier).Predecessor = F_Checksum - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))))) and then (if Structural_Valid (Cursors (F_Pointer)) then (Valid (Cursors (F_Checksum)) and then Cursors (F_Pointer).Predecessor = F_Checksum - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)))) and then (if Structural_Valid (Cursors (F_Unused_32)) then (Valid (Cursors (F_Checksum)) and then Cursors (F_Unused_32).Predecessor = F_Checksum - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))))) and then (if Structural_Valid (Cursors (F_Sequence_Number)) then @@ -1316,8 +1316,8 @@ private then (Valid (Cursors (F_Sequence_Number)) and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))))) and then (if Structural_Valid (Cursors (F_Data)) then @@ -1325,8 +1325,8 @@ private and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address) or (Valid (Cursors (F_Sequence_Number)) and then Cursors (F_Data).Predecessor = F_Sequence_Number - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) or (Valid (Cursors (F_Unused_24)) and then Cursors (F_Data).Predecessor = F_Unused_24) or (Valid (Cursors (F_Unused_32)) @@ -1415,7 +1415,7 @@ private and then Cursors (F_Tag).First = First and then (if Structural_Valid (Cursors (F_Code_Destination_Unreachable)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) then Cursors (F_Code_Destination_Unreachable).Last - Cursors (F_Code_Destination_Unreachable).First + 1 = RFLX.ICMP.Code_Destination_Unreachable_Base'Size and then Cursors (F_Code_Destination_Unreachable).Predecessor = F_Tag @@ -1428,7 +1428,7 @@ private and then Cursors (F_Checksum).First = Cursors (F_Code_Destination_Unreachable).Last + 1 and then (if Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) then Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum @@ -1441,12 +1441,12 @@ private and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) and then (if Structural_Valid (Cursors (F_Identifier)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) then Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size and then Cursors (F_Identifier).Predecessor = F_Checksum @@ -1459,16 +1459,16 @@ private and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 and then (if Structural_Valid (Cursors (F_Data)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) then Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) and then Cursors (F_Data).Predecessor = F_Sequence_Number and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) and then (if Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) then Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number @@ -1487,7 +1487,7 @@ private and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) and then (if Structural_Valid (Cursors (F_Pointer)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) then Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size and then Cursors (F_Pointer).Predecessor = F_Checksum @@ -1506,9 +1506,9 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) and then (if Structural_Valid (Cursors (F_Unused_32)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) then Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size and then Cursors (F_Unused_32).Predecessor = F_Checksum @@ -1521,7 +1521,7 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) and then (if Structural_Valid (Cursors (F_Code_Redirect)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) then Cursors (F_Code_Redirect).Last - Cursors (F_Code_Redirect).First + 1 = RFLX.ICMP.Code_Redirect_Base'Size and then Cursors (F_Code_Redirect).Predecessor = F_Tag @@ -1534,7 +1534,7 @@ private and then Cursors (F_Checksum).First = Cursors (F_Code_Redirect).Last + 1 and then (if Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) then Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum @@ -1547,12 +1547,12 @@ private and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) and then (if Structural_Valid (Cursors (F_Identifier)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) then Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size and then Cursors (F_Identifier).Predecessor = F_Checksum @@ -1565,16 +1565,16 @@ private and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 and then (if Structural_Valid (Cursors (F_Data)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) then Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) and then Cursors (F_Data).Predecessor = F_Sequence_Number and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) and then (if Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) then Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number @@ -1593,7 +1593,7 @@ private and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) and then (if Structural_Valid (Cursors (F_Pointer)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) then Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size and then Cursors (F_Pointer).Predecessor = F_Checksum @@ -1612,9 +1612,9 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) and then (if Structural_Valid (Cursors (F_Unused_32)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) then Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size and then Cursors (F_Unused_32).Predecessor = F_Checksum @@ -1627,7 +1627,7 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) and then (if Structural_Valid (Cursors (F_Code_Time_Exceeded)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) then Cursors (F_Code_Time_Exceeded).Last - Cursors (F_Code_Time_Exceeded).First + 1 = RFLX.ICMP.Code_Time_Exceeded_Base'Size and then Cursors (F_Code_Time_Exceeded).Predecessor = F_Tag @@ -1640,7 +1640,7 @@ private and then Cursors (F_Checksum).First = Cursors (F_Code_Time_Exceeded).Last + 1 and then (if Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) then Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum @@ -1653,12 +1653,12 @@ private and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) and then (if Structural_Valid (Cursors (F_Identifier)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) then Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size and then Cursors (F_Identifier).Predecessor = F_Checksum @@ -1671,16 +1671,16 @@ private and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 and then (if Structural_Valid (Cursors (F_Data)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) then Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) and then Cursors (F_Data).Predecessor = F_Sequence_Number and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) and then (if Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) then Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number @@ -1699,7 +1699,7 @@ private and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) and then (if Structural_Valid (Cursors (F_Pointer)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) then Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size and then Cursors (F_Pointer).Predecessor = F_Checksum @@ -1718,9 +1718,9 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) and then (if Structural_Valid (Cursors (F_Unused_32)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) then Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size and then Cursors (F_Unused_32).Predecessor = F_Checksum @@ -1733,14 +1733,14 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) and then (if Structural_Valid (Cursors (F_Code_Zero)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) then Cursors (F_Code_Zero).Last - Cursors (F_Code_Zero).First + 1 = RFLX.ICMP.Code_Zero_Base'Size and then Cursors (F_Code_Zero).Predecessor = F_Tag @@ -1753,7 +1753,7 @@ private and then Cursors (F_Checksum).First = Cursors (F_Code_Zero).Last + 1 and then (if Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) then Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum @@ -1766,12 +1766,12 @@ private and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) and then (if Structural_Valid (Cursors (F_Identifier)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) then Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size and then Cursors (F_Identifier).Predecessor = F_Checksum @@ -1784,16 +1784,16 @@ private and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 and then (if Structural_Valid (Cursors (F_Data)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) then Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) and then Cursors (F_Data).Predecessor = F_Sequence_Number and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) and then (if Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) then Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number @@ -1812,7 +1812,7 @@ private and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) and then (if Structural_Valid (Cursors (F_Pointer)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) then Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size and then Cursors (F_Pointer).Predecessor = F_Checksum @@ -1831,9 +1831,9 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) and then (if Structural_Valid (Cursors (F_Unused_32)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) then Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size and then Cursors (F_Unused_32).Predecessor = F_Checksum @@ -1895,20 +1895,20 @@ private when F_Tag => (case Fld is when F_Code_Destination_Unreachable => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)), when F_Code_Redirect => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)), when F_Code_Time_Exceeded => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)), when F_Code_Zero => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)), when others => False), when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => @@ -1920,20 +1920,20 @@ private when F_Checksum => (case Fld is when F_Gateway_Internet_Address => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)), when F_Identifier => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)), when F_Pointer => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)), when F_Unused_32 => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)), when others => False), when F_Gateway_Internet_Address => @@ -1963,11 +1963,11 @@ private when F_Sequence_Number => (case Fld is when F_Data => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)), when F_Originate_Timestamp => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)), when others => False), when F_Unused_24 => @@ -1998,40 +1998,40 @@ private when F_Initial => True, when F_Tag => - RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)), + RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)), when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => True, when F_Checksum => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)), when F_Gateway_Internet_Address | F_Identifier | F_Pointer | F_Unused_32 => True, when F_Sequence_Number => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)), when F_Unused_24 | F_Originate_Timestamp | F_Data | F_Receive_Timestamp | F_Transmit_Timestamp => True, when F_Final => @@ -2137,7 +2137,7 @@ private when F_Code_Destination_Unreachable => (if Ctx.Cursors (Fld).Predecessor = F_Tag - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2145,7 +2145,7 @@ private when F_Code_Redirect => (if Ctx.Cursors (Fld).Predecessor = F_Tag - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2153,7 +2153,7 @@ private when F_Code_Time_Exceeded => (if Ctx.Cursors (Fld).Predecessor = F_Tag - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2161,14 +2161,14 @@ private when F_Code_Zero => (if Ctx.Cursors (Fld).Predecessor = F_Tag - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2195,7 +2195,7 @@ private when F_Gateway_Internet_Address => (if Ctx.Cursors (Fld).Predecessor = F_Checksum - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2203,12 +2203,12 @@ private when F_Identifier => (if Ctx.Cursors (Fld).Predecessor = F_Checksum - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2216,7 +2216,7 @@ private when F_Pointer => (if Ctx.Cursors (Fld).Predecessor = F_Checksum - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2224,9 +2224,9 @@ private when F_Unused_32 => (if Ctx.Cursors (Fld).Predecessor = F_Checksum - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2248,8 +2248,8 @@ private when F_Originate_Timestamp => (if Ctx.Cursors (Fld).Predecessor = F_Sequence_Number - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2261,8 +2261,8 @@ private Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 elsif Ctx.Cursors (Fld).Predecessor = F_Sequence_Number - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 elsif @@ -2382,285 +2382,285 @@ private function Structural_Valid_Message (Ctx : Context) return Boolean is (Valid (Ctx, F_Tag) and then ((Valid (Ctx, F_Code_Destination_Unreachable) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Structural_Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) and then Structural_Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Redirect) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Structural_Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) and then Structural_Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Time_Exceeded) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Structural_Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) and then Structural_Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Zero) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Structural_Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) and then Structural_Valid (Ctx, F_Data)))))); function Valid_Message (Ctx : Context) return Boolean is (Valid (Ctx, F_Tag) and then ((Valid (Ctx, F_Code_Destination_Unreachable) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) and then Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Redirect) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) and then Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Time_Exceeded) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) and then Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Zero) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) and then Valid (Ctx, F_Data)))))); function Incomplete_Message (Ctx : Context) return Boolean is diff --git a/tests/spark/generated/rflx-ipv4-option.adb b/tests/spark/generated/rflx-ipv4-option.adb index 78ec403bd..2ba4278dc 100644 --- a/tests/spark/generated/rflx-ipv4-option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -74,7 +74,7 @@ is F_Option_Number, when F_Option_Number => (if - RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 1 then F_Final @@ -86,17 +86,17 @@ is F_Initial), when F_Option_Length => (if - (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8) then F_Option_Data diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index c8eb052b0..e8d2a9a2b 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -401,17 +401,17 @@ is and Get_Option_Length (Ctx) = Val and Invalid (Ctx, F_Option_Data) and (if - (RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + (RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) and Get_Option_Number (Ctx) = 4) - or (RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (Control)) + or (RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (IPv4.Control)) and (Get_Option_Number (Ctx) = 9 or Get_Option_Number (Ctx) = 3 or Get_Option_Number (Ctx) = 7)) or (Get_Option_Length (Ctx) = 11 - and RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Get_Option_Number (Ctx) = 2) or (Get_Option_Length (Ctx) = 4 - and RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Get_Option_Number (Ctx) = 8) then Predecessor (Ctx, F_Option_Data) = F_Option_Length @@ -654,17 +654,17 @@ private then (Valid (Cursors (F_Option_Length)) and then Cursors (F_Option_Data).Predecessor = F_Option_Length - and then ((RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and then ((RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) and Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + or (RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and (Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Cursors (F_Option_Number).Value.Option_Number_Value = 8))))) and then ((if Invalid (Cursors (F_Copied)) @@ -709,17 +709,17 @@ private and then Cursors (F_Option_Length).First = Cursors (F_Option_Number).Last + 1 and then (if Structural_Valid (Cursors (F_Option_Data)) - and then ((RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and then ((RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) and Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + or (RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and (Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Cursors (F_Option_Number).Value.Option_Number_Value = 8)) then Cursors (F_Option_Data).Last - Cursors (F_Option_Data).First + 1 = (RFLX_Types.Bit_Length (Cursors (F_Option_Length).Value.Option_Length_Value) - 2) * 8 @@ -783,17 +783,17 @@ private when F_Option_Length => (case Fld is when F_Option_Data => - (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8), when others => False), @@ -805,21 +805,21 @@ private when F_Initial | F_Copied | F_Option_Class => True, when F_Option_Number => - (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and RFLX_Types.U64 (Val.Option_Number_Value) = 1) or RFLX_Types.U64 (Val.Option_Number_Value) > 1, when F_Option_Length => - (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (RFLX_Types.U64 (Val.Option_Length_Value) = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (RFLX_Types.U64 (Val.Option_Length_Value) = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8), when F_Option_Data => True, @@ -890,17 +890,17 @@ private when F_Option_Data => (if Ctx.Cursors (Fld).Predecessor = F_Option_Length - and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 @@ -971,44 +971,44 @@ private (Valid (Ctx, F_Copied) and then Valid (Ctx, F_Option_Class) and then Valid (Ctx, F_Option_Number) - and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 1) or (Valid (Ctx, F_Option_Length) and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 and then Structural_Valid (Ctx, F_Option_Data) - and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8))))); function Valid_Message (Ctx : Context) return Boolean is (Valid (Ctx, F_Copied) and then Valid (Ctx, F_Option_Class) and then Valid (Ctx, F_Option_Number) - and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 1) or (Valid (Ctx, F_Option_Length) and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 and then Valid (Ctx, F_Option_Data) - and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Debugging_And_Measurement)) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8))))); function Incomplete_Message (Ctx : Context) return Boolean is diff --git a/tests/spark/generated/rflx-tlv-message.adb b/tests/spark/generated/rflx-tlv-message.adb index 9a8afb5ad..967befd30 100644 --- a/tests/spark/generated/rflx-tlv-message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -70,11 +70,11 @@ is ((case Fld is when F_Tag => (if - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Error)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) then F_Final elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) then F_Length else diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index 408903a87..fd292d60a 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -306,7 +306,7 @@ is and Invalid (Ctx, F_Length) and Invalid (Ctx, F_Value) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (Msg_Data)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) then Predecessor (Ctx, F_Length) = F_Tag and Valid_Next (Ctx, F_Length)) @@ -538,7 +538,7 @@ private then (Valid (Cursors (F_Tag)) and then Cursors (F_Length).Predecessor = F_Tag - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)))) and then (if Structural_Valid (Cursors (F_Value)) then @@ -560,7 +560,7 @@ private and then Cursors (F_Tag).First = First and then (if Structural_Valid (Cursors (F_Length)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) then Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.TLV.Length'Size and then Cursors (F_Length).Predecessor = F_Tag @@ -609,7 +609,7 @@ private when F_Tag => (case Fld is when F_Length => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)), when others => False), when F_Length => @@ -626,8 +626,8 @@ private when F_Initial => True, when F_Tag => - RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Error)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)), + RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)), when F_Length | F_Value => True, when F_Final => @@ -663,7 +663,7 @@ private when F_Length => (if Ctx.Cursors (Fld).Predecessor = F_Tag - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -732,16 +732,16 @@ private function Structural_Valid_Message (Ctx : Context) return Boolean is (Valid (Ctx, F_Tag) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Error)) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) or (Valid (Ctx, F_Length) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) and then Structural_Valid (Ctx, F_Value)))); function Valid_Message (Ctx : Context) return Boolean is (Valid (Ctx, F_Tag) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Error)) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) or (Valid (Ctx, F_Length) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (Msg_Data)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) and then Valid (Ctx, F_Value)))); function Incomplete_Message (Ctx : Context) return Boolean is From fced842f0770649bb41411d13c0bfcd589b492f7 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 28 May 2021 12:21:14 +0200 Subject: [PATCH 39/43] Prevent compiler errors for messages in packages with same name --- rflx/generator/common.py | 19 +- rflx/generator/generator.py | 37 +- rflx/generator/parser.py | 69 +- rflx/generator/serializer.py | 5 +- tests/spark/generated/rflx-icmp-message.adb | 56 +- tests/spark/generated/rflx-icmp-message.ads | 722 ++++++++++---------- tests/spark/generated/rflx-ipv4-option.adb | 10 +- tests/spark/generated/rflx-ipv4-option.ads | 70 +- tests/spark/generated/rflx-tlv-message.adb | 4 +- tests/spark/generated/rflx-tlv-message.ads | 22 +- tests/unit/generator_test.py | 6 +- 11 files changed, 513 insertions(+), 507 deletions(-) diff --git a/rflx/generator/common.py b/rflx/generator/common.py index 4609dcacd..4cbfa2d11 100644 --- a/rflx/generator/common.py +++ b/rflx/generator/common.py @@ -8,11 +8,12 @@ def substitution( message: model.Message, + prefix: str, embedded: bool = False, public: bool = False, target_type: Optional[ada.ID] = const.TYPES_U64, ) -> Callable[[expr.Expr], expr.Expr]: - facts = substitution_facts(message, embedded, public, target_type) + facts = substitution_facts(message, prefix, embedded, public, target_type) def func(expression: expr.Expr) -> expr.Expr: def byte_aggregate(aggregate: expr.Aggregate) -> expr.Aggregate: @@ -114,6 +115,7 @@ def field_value(field: model.Field) -> expr.Expr: def substitution_facts( message: model.Message, + prefix: str, embedded: bool = False, public: bool = False, target_type: Optional[ada.ID] = const.TYPES_U64, @@ -191,7 +193,8 @@ def type_conversion(expression: expr.Expr) -> expr.Expr: **{ expr.Variable(l): type_conversion( expr.Call( - "To_Base", [expr.Variable(model.qualified_enum_literal(l, message.package))] + "To_Base", + [expr.Variable(model.qualified_enum_literal(l, prefix * message.package))], ) ) for t in message.types.values() @@ -229,19 +232,19 @@ def prefixed(name: str) -> expr.Expr: return ada.TRUE field_type = message.types[target] - condition = link.condition.substituted(substitution(message, embedded)).simplified() + condition = link.condition.substituted(substitution(message, prefix, embedded)).simplified() size = ( expr.Size(prefix * full_base_type_name(field_type)) if isinstance(field_type, model.Scalar) else link.size.substituted( - substitution(message, embedded, target_type=const.TYPES_BIT_LENGTH) + substitution(message, prefix, embedded, target_type=const.TYPES_BIT_LENGTH) ).simplified() ) first = ( prefixed("First") if source == model.INITIAL else link.first.substituted( - substitution(message, embedded, target_type=const.TYPES_BIT_INDEX) + substitution(message, prefix, embedded, target_type=const.TYPES_BIT_INDEX) ) .substituted( mapping={ @@ -367,7 +370,7 @@ def valid_predecessors_invariant() -> ada.Expr: expr.Variable(l.source.affixed_name), ), l.condition.substituted( - substitution(message, embedded=True) + substitution(message, embedded=True, prefix=prefix) ), ) .simplified() @@ -510,13 +513,13 @@ def public_context_predicate() -> ada.Expr: def valid_path_to_next_field_condition( - message: model.Message, field: model.Field + message: model.Message, field: model.Field, prefix: str ) -> Sequence[ada.Expr]: return [ ada.If( [ ( - l.condition.substituted(substitution(message, public=True)) + l.condition.substituted(substitution(message, public=True, prefix=prefix)) .simplified() .ada_expr(), ada.And( diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index 4ec98a779..e4c509c70 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -1292,14 +1292,13 @@ def __create_write_procedure() -> UnitPart: ], ) - @staticmethod - def __create_path_condition_function(message: Message) -> UnitPart: + def __create_path_condition_function(self, message: Message) -> UnitPart: def condition(field: Field, message: Message) -> Expr: cases: ty.List[ty.Tuple[Expr, Expr]] = [ ( target, expr.Or(*[c for _, c in conditions]) - .substituted(common.substitution(message)) + .substituted(common.substitution(message, self.__prefix)) .simplified() .ada_expr(), ) @@ -1354,7 +1353,9 @@ def size(field: Field, message: Message) -> Expr: def substituted(expression: expr.Expr) -> Expr: return ( expression.substituted( - common.substitution(message, target_type=const.TYPES_BIT_LENGTH) + common.substitution( + message, self.__prefix, target_type=const.TYPES_BIT_LENGTH + ) ) .simplified() .ada_expr() @@ -1423,14 +1424,15 @@ def substituted(expression: expr.Expr) -> Expr: ], ) - @staticmethod - def __create_field_first_function(message: Message) -> UnitPart: + def __create_field_first_function(self, message: Message) -> UnitPart: def first(field: Field, message: Message) -> Expr: def substituted( expression: expr.Expr, target_type: ty.Optional[ID] = const.TYPES_U64 ) -> Expr: return ( - expression.substituted(common.substitution(message, target_type=target_type)) + expression.substituted( + common.substitution(message, self.__prefix, target_type=target_type) + ) .simplified() .ada_expr() ) @@ -1546,8 +1548,7 @@ def __create_field_last_function() -> UnitPart: ], ) - @staticmethod - def __create_field_condition_function(message: Message) -> UnitPart: + def __create_field_condition_function(self, message: Message) -> UnitPart: def condition(field: Field, message: Message) -> Expr: c: expr.Expr = expr.Or(*[l.condition for l in message.outgoing(field)]) c = c.substituted( @@ -1586,7 +1587,9 @@ def condition(field: Field, message: Message) -> Expr: if x == expr.Variable(field.name) else x ) - return c.substituted(common.substitution(message)).simplified().ada_expr() + return ( + c.substituted(common.substitution(message, self.__prefix)).simplified().ada_expr() + ) parameters = [Parameter(["Ctx"], "Context"), Parameter(["Val"], "Field_Dependent_Value")] @@ -1656,8 +1659,7 @@ def __create_predecessor_function() -> UnitPart: ], ) - @staticmethod - def __create_successor_function(message: Message) -> UnitPart: + def __create_successor_function(self, message: Message) -> UnitPart: specification = FunctionSpecification( "Successor", "Virtual_Field", @@ -1679,7 +1681,9 @@ def __create_successor_function(message: Message) -> UnitPart: If( [ ( - l.condition.substituted(common.substitution(message)) + l.condition.substituted( + common.substitution(message, self.__prefix) + ) .simplified() .ada_expr(), Variable(l.target.affixed_name), @@ -2206,9 +2210,8 @@ def __create_equal_function( ], ) - @staticmethod def __create_switch_procedures( - message: Message, sequence_fields: ty.Mapping[Field, Type] + self, message: Message, sequence_fields: ty.Mapping[Field, Type] ) -> UnitPart: def specification(field: Field) -> ProcedureSpecification: return ProcedureSpecification( @@ -2349,7 +2352,9 @@ def specification(field: Field) -> ProcedureSpecification: ( Variable("others"), And( - *common.valid_path_to_next_field_condition(message, f), + *common.valid_path_to_next_field_condition( + message, f, self.__prefix + ), *[ Call( "Invalid", diff --git a/rflx/generator/parser.py b/rflx/generator/parser.py index 52886fba5..d3f96cf88 100644 --- a/rflx/generator/parser.py +++ b/rflx/generator/parser.py @@ -633,8 +633,7 @@ def create_invalid_function() -> UnitPart: ], ) - @staticmethod - def create_structural_valid_message_function(message: Message) -> UnitPart: + def create_structural_valid_message_function(self, message: Message) -> UnitPart: specification = FunctionSpecification( "Structural_Valid_Message", "Boolean", [Parameter(["Ctx"], "Context")] ) @@ -649,13 +648,12 @@ def create_structural_valid_message_function(message: Message) -> UnitPart: private=[ ExpressionFunctionDeclaration( specification, - valid_message_condition(message, structural=True), + self.valid_message_condition(message, structural=True), ) ], ) - @staticmethod - def create_valid_message_function(message: Message) -> UnitPart: + def create_valid_message_function(self, message: Message) -> UnitPart: specification = FunctionSpecification( "Valid_Message", "Boolean", [Parameter(["Ctx"], "Context")] ) @@ -670,7 +668,7 @@ def create_valid_message_function(message: Message) -> UnitPart: private=[ ExpressionFunctionDeclaration( specification, - valid_message_condition(message), + self.valid_message_condition(message), ) ], ) @@ -1037,39 +1035,38 @@ def specification(field: Field) -> ProcedureSpecification: ], ) + def valid_message_condition( + self, message: Message, field: Field = INITIAL, structural: bool = False + ) -> Expr: + def condition(message: Message, field: Field, structural: bool) -> expr.Expr: + return expr.Or( + *[ + l.condition + if l.target == FINAL + else expr.AndThen( + expr.Call( + "Structural_Valid" + if structural and isinstance(message.types[l.target], Composite) + else "Valid", + [ + expr.Variable("Ctx"), + expr.Variable(l.target.affixed_name, immutable=True), + ], + ), + l.condition, + condition(message, l.target, structural), + ) + for l in message.outgoing(field) + ] + ) -def valid_message_condition( - message: Message, field: Field = INITIAL, structural: bool = False -) -> Expr: - def condition(message: Message, field: Field, structural: bool) -> expr.Expr: - return expr.Or( - *[ - l.condition - if l.target == FINAL - else expr.AndThen( - expr.Call( - "Structural_Valid" - if structural and isinstance(message.types[l.target], Composite) - else "Valid", - [ - expr.Variable("Ctx"), - expr.Variable(l.target.affixed_name, immutable=True), - ], - ), - l.condition, - condition(message, l.target, structural), - ) - for l in message.outgoing(field) - ] + return ( + condition(message, field, structural) + .substituted(common.substitution(message, self.prefix)) + .simplified() + .ada_expr() ) - return ( - condition(message, field, structural) - .substituted(common.substitution(message)) - .simplified() - .ada_expr() - ) - def set_context_cursor_scalar() -> Assignment: return Assignment( diff --git a/rflx/generator/serializer.py b/rflx/generator/serializer.py index 1350b46e7..c061cf97d 100644 --- a/rflx/generator/serializer.py +++ b/rflx/generator/serializer.py @@ -833,15 +833,14 @@ def public_setter_postconditions(self, message: Message, field: Field) -> Sequen *self.setter_postconditions(message, field), ] - @staticmethod - def setter_postconditions(message: Message, field: Field) -> Sequence[Expr]: + def setter_postconditions(self, message: Message, field: Field) -> Sequence[Expr]: return [ *[ Call("Invalid", [Variable("Ctx"), Variable(p.affixed_name)]) for p in message.successors(field) if p != FINAL ], - *common.valid_path_to_next_field_condition(message, field), + *common.valid_path_to_next_field_condition(message, field, self.prefix), *const.CONTEXT_INVARIANT, *[ Equal(e, Old(e)) diff --git a/tests/spark/generated/rflx-icmp-message.adb b/tests/spark/generated/rflx-icmp-message.adb index e9a6c63c6..1364ab1e9 100644 --- a/tests/spark/generated/rflx-icmp-message.adb +++ b/tests/spark/generated/rflx-icmp-message.adb @@ -70,26 +70,26 @@ is ((case Fld is when F_Tag => (if - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) then F_Code_Destination_Unreachable elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) then F_Code_Redirect elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) then F_Code_Time_Exceeded elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) then F_Code_Zero else @@ -98,26 +98,26 @@ is F_Checksum, when F_Checksum => (if - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) then F_Gateway_Internet_Address elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) then F_Identifier elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) then F_Pointer elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)) then F_Unused_32 else @@ -132,18 +132,18 @@ is F_Data, when F_Sequence_Number => (if - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) then F_Data elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) then F_Final elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) then F_Originate_Timestamp else diff --git a/tests/spark/generated/rflx-icmp-message.ads b/tests/spark/generated/rflx-icmp-message.ads index 10672904b..4a49364d5 100644 --- a/tests/spark/generated/rflx-icmp-message.ads +++ b/tests/spark/generated/rflx-icmp-message.ads @@ -393,29 +393,29 @@ is and Invalid (Ctx, F_Receive_Timestamp) and Invalid (Ctx, F_Transmit_Timestamp) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) then Predecessor (Ctx, F_Code_Destination_Unreachable) = F_Tag and Valid_Next (Ctx, F_Code_Destination_Unreachable)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) then Predecessor (Ctx, F_Code_Redirect) = F_Tag and Valid_Next (Ctx, F_Code_Redirect)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) then Predecessor (Ctx, F_Code_Time_Exceeded) = F_Tag and Valid_Next (Ctx, F_Code_Time_Exceeded)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) then Predecessor (Ctx, F_Code_Zero) = F_Tag and Valid_Next (Ctx, F_Code_Zero)) @@ -596,29 +596,29 @@ is and Invalid (Ctx, F_Receive_Timestamp) and Invalid (Ctx, F_Transmit_Timestamp) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) then Predecessor (Ctx, F_Gateway_Internet_Address) = F_Checksum and Valid_Next (Ctx, F_Gateway_Internet_Address)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) then Predecessor (Ctx, F_Identifier) = F_Checksum and Valid_Next (Ctx, F_Identifier)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) then Predecessor (Ctx, F_Pointer) = F_Checksum and Valid_Next (Ctx, F_Pointer)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)) then Predecessor (Ctx, F_Unused_32) = F_Checksum and Valid_Next (Ctx, F_Unused_32)) @@ -808,14 +808,14 @@ is and Invalid (Ctx, F_Receive_Timestamp) and Invalid (Ctx, F_Transmit_Timestamp) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) then Predecessor (Ctx, F_Data) = F_Sequence_Number and Valid_Next (Ctx, F_Data)) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) then Predecessor (Ctx, F_Originate_Timestamp) = F_Sequence_Number and Valid_Next (Ctx, F_Originate_Timestamp)) @@ -1233,32 +1233,32 @@ private then (Valid (Cursors (F_Tag)) and then Cursors (F_Code_Destination_Unreachable).Predecessor = F_Tag - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)))) and then (if Structural_Valid (Cursors (F_Code_Redirect)) then (Valid (Cursors (F_Tag)) and then Cursors (F_Code_Redirect).Predecessor = F_Tag - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)))) and then (if Structural_Valid (Cursors (F_Code_Time_Exceeded)) then (Valid (Cursors (F_Tag)) and then Cursors (F_Code_Time_Exceeded).Predecessor = F_Tag - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)))) and then (if Structural_Valid (Cursors (F_Code_Zero)) then (Valid (Cursors (F_Tag)) and then Cursors (F_Code_Zero).Predecessor = F_Tag - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request))))) and then (if Structural_Valid (Cursors (F_Checksum)) then @@ -1275,32 +1275,32 @@ private then (Valid (Cursors (F_Checksum)) and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)))) and then (if Structural_Valid (Cursors (F_Identifier)) then (Valid (Cursors (F_Checksum)) and then Cursors (F_Identifier).Predecessor = F_Checksum - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))))) and then (if Structural_Valid (Cursors (F_Pointer)) then (Valid (Cursors (F_Checksum)) and then Cursors (F_Pointer).Predecessor = F_Checksum - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)))) and then (if Structural_Valid (Cursors (F_Unused_32)) then (Valid (Cursors (F_Checksum)) and then Cursors (F_Unused_32).Predecessor = F_Checksum - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))))) and then (if Structural_Valid (Cursors (F_Sequence_Number)) then @@ -1316,8 +1316,8 @@ private then (Valid (Cursors (F_Sequence_Number)) and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))))) and then (if Structural_Valid (Cursors (F_Data)) then @@ -1325,8 +1325,8 @@ private and then Cursors (F_Data).Predecessor = F_Gateway_Internet_Address) or (Valid (Cursors (F_Sequence_Number)) and then Cursors (F_Data).Predecessor = F_Sequence_Number - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)))) or (Valid (Cursors (F_Unused_24)) and then Cursors (F_Data).Predecessor = F_Unused_24) or (Valid (Cursors (F_Unused_32)) @@ -1415,7 +1415,7 @@ private and then Cursors (F_Tag).First = First and then (if Structural_Valid (Cursors (F_Code_Destination_Unreachable)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) then Cursors (F_Code_Destination_Unreachable).Last - Cursors (F_Code_Destination_Unreachable).First + 1 = RFLX.ICMP.Code_Destination_Unreachable_Base'Size and then Cursors (F_Code_Destination_Unreachable).Predecessor = F_Tag @@ -1428,7 +1428,7 @@ private and then Cursors (F_Checksum).First = Cursors (F_Code_Destination_Unreachable).Last + 1 and then (if Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) then Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum @@ -1441,12 +1441,12 @@ private and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) and then (if Structural_Valid (Cursors (F_Identifier)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) then Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size and then Cursors (F_Identifier).Predecessor = F_Checksum @@ -1459,16 +1459,16 @@ private and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 and then (if Structural_Valid (Cursors (F_Data)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request))) then Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) and then Cursors (F_Data).Predecessor = F_Sequence_Number and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) and then (if Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) then Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number @@ -1487,7 +1487,7 @@ private and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) and then (if Structural_Valid (Cursors (F_Pointer)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) then Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size and then Cursors (F_Pointer).Predecessor = F_Checksum @@ -1506,9 +1506,9 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) and then (if Structural_Valid (Cursors (F_Unused_32)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) then Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size and then Cursors (F_Unused_32).Predecessor = F_Checksum @@ -1521,7 +1521,7 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) and then (if Structural_Valid (Cursors (F_Code_Redirect)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) then Cursors (F_Code_Redirect).Last - Cursors (F_Code_Redirect).First + 1 = RFLX.ICMP.Code_Redirect_Base'Size and then Cursors (F_Code_Redirect).Predecessor = F_Tag @@ -1534,7 +1534,7 @@ private and then Cursors (F_Checksum).First = Cursors (F_Code_Redirect).Last + 1 and then (if Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) then Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum @@ -1547,12 +1547,12 @@ private and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) and then (if Structural_Valid (Cursors (F_Identifier)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) then Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size and then Cursors (F_Identifier).Predecessor = F_Checksum @@ -1565,16 +1565,16 @@ private and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 and then (if Structural_Valid (Cursors (F_Data)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request))) then Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) and then Cursors (F_Data).Predecessor = F_Sequence_Number and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) and then (if Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) then Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number @@ -1593,7 +1593,7 @@ private and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) and then (if Structural_Valid (Cursors (F_Pointer)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) then Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size and then Cursors (F_Pointer).Predecessor = F_Checksum @@ -1612,9 +1612,9 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) and then (if Structural_Valid (Cursors (F_Unused_32)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) then Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size and then Cursors (F_Unused_32).Predecessor = F_Checksum @@ -1627,7 +1627,7 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) and then (if Structural_Valid (Cursors (F_Code_Time_Exceeded)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) then Cursors (F_Code_Time_Exceeded).Last - Cursors (F_Code_Time_Exceeded).First + 1 = RFLX.ICMP.Code_Time_Exceeded_Base'Size and then Cursors (F_Code_Time_Exceeded).Predecessor = F_Tag @@ -1640,7 +1640,7 @@ private and then Cursors (F_Checksum).First = Cursors (F_Code_Time_Exceeded).Last + 1 and then (if Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) then Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum @@ -1653,12 +1653,12 @@ private and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) and then (if Structural_Valid (Cursors (F_Identifier)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) then Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size and then Cursors (F_Identifier).Predecessor = F_Checksum @@ -1671,16 +1671,16 @@ private and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 and then (if Structural_Valid (Cursors (F_Data)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request))) then Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) and then Cursors (F_Data).Predecessor = F_Sequence_Number and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) and then (if Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) then Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number @@ -1699,7 +1699,7 @@ private and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) and then (if Structural_Valid (Cursors (F_Pointer)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) then Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size and then Cursors (F_Pointer).Predecessor = F_Checksum @@ -1718,9 +1718,9 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) and then (if Structural_Valid (Cursors (F_Unused_32)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) then Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size and then Cursors (F_Unused_32).Predecessor = F_Checksum @@ -1733,14 +1733,14 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_32).Last + 1)))) and then (if Structural_Valid (Cursors (F_Code_Zero)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request))) then Cursors (F_Code_Zero).Last - Cursors (F_Code_Zero).First + 1 = RFLX.ICMP.Code_Zero_Base'Size and then Cursors (F_Code_Zero).Predecessor = F_Tag @@ -1753,7 +1753,7 @@ private and then Cursors (F_Checksum).First = Cursors (F_Code_Zero).Last + 1 and then (if Structural_Valid (Cursors (F_Gateway_Internet_Address)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) then Cursors (F_Gateway_Internet_Address).Last - Cursors (F_Gateway_Internet_Address).First + 1 = RFLX.ICMP.Gateway_Internet_Address'Size and then Cursors (F_Gateway_Internet_Address).Predecessor = F_Checksum @@ -1766,12 +1766,12 @@ private and then Cursors (F_Data).First = Cursors (F_Gateway_Internet_Address).Last + 1)) and then (if Structural_Valid (Cursors (F_Identifier)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) then Cursors (F_Identifier).Last - Cursors (F_Identifier).First + 1 = RFLX.ICMP.Identifier'Size and then Cursors (F_Identifier).Predecessor = F_Checksum @@ -1784,16 +1784,16 @@ private and then Cursors (F_Sequence_Number).First = Cursors (F_Identifier).Last + 1 and then (if Structural_Valid (Cursors (F_Data)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request))) then Cursors (F_Data).Last - Cursors (F_Data).First + 1 = RFLX_Types.Bit_Length (Last) - RFLX_Types.Bit_Length (Cursors (F_Sequence_Number).Last) and then Cursors (F_Data).Predecessor = F_Sequence_Number and then Cursors (F_Data).First = Cursors (F_Sequence_Number).Last + 1) and then (if Structural_Valid (Cursors (F_Originate_Timestamp)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) then Cursors (F_Originate_Timestamp).Last - Cursors (F_Originate_Timestamp).First + 1 = RFLX.ICMP.Timestamp'Size and then Cursors (F_Originate_Timestamp).Predecessor = F_Sequence_Number @@ -1812,7 +1812,7 @@ private and then Cursors (F_Transmit_Timestamp).First = Cursors (F_Receive_Timestamp).Last + 1))))) and then (if Structural_Valid (Cursors (F_Pointer)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) then Cursors (F_Pointer).Last - Cursors (F_Pointer).First + 1 = RFLX.ICMP.Pointer'Size and then Cursors (F_Pointer).Predecessor = F_Checksum @@ -1831,9 +1831,9 @@ private and then Cursors (F_Data).First = Cursors (F_Unused_24).Last + 1))) and then (if Structural_Valid (Cursors (F_Unused_32)) - and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) then Cursors (F_Unused_32).Last - Cursors (F_Unused_32).First + 1 = RFLX.ICMP.Unused_32_Base'Size and then Cursors (F_Unused_32).Predecessor = F_Checksum @@ -1895,20 +1895,20 @@ private when F_Tag => (case Fld is when F_Code_Destination_Unreachable => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)), when F_Code_Redirect => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)), when F_Code_Time_Exceeded => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)), when F_Code_Zero => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)), when others => False), when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => @@ -1920,20 +1920,20 @@ private when F_Checksum => (case Fld is when F_Gateway_Internet_Address => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)), when F_Identifier => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)), when F_Pointer => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)), when F_Unused_32 => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)), when others => False), when F_Gateway_Internet_Address => @@ -1963,11 +1963,11 @@ private when F_Sequence_Number => (case Fld is when F_Data => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)), when F_Originate_Timestamp => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)), when others => False), when F_Unused_24 => @@ -1998,40 +1998,40 @@ private when F_Initial => True, when F_Tag => - RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)), + RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)), when F_Code_Destination_Unreachable | F_Code_Redirect | F_Code_Time_Exceeded | F_Code_Zero => True, when F_Checksum => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)), when F_Gateway_Internet_Address | F_Identifier | F_Pointer | F_Unused_32 => True, when F_Sequence_Number => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)), when F_Unused_24 | F_Originate_Timestamp | F_Data | F_Receive_Timestamp | F_Transmit_Timestamp => True, when F_Final => @@ -2137,7 +2137,7 @@ private when F_Code_Destination_Unreachable => (if Ctx.Cursors (Fld).Predecessor = F_Tag - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2145,7 +2145,7 @@ private when F_Code_Redirect => (if Ctx.Cursors (Fld).Predecessor = F_Tag - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2153,7 +2153,7 @@ private when F_Code_Time_Exceeded => (if Ctx.Cursors (Fld).Predecessor = F_Tag - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2161,14 +2161,14 @@ private when F_Code_Zero => (if Ctx.Cursors (Fld).Predecessor = F_Tag - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request))) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2195,7 +2195,7 @@ private when F_Gateway_Internet_Address => (if Ctx.Cursors (Fld).Predecessor = F_Checksum - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2203,12 +2203,12 @@ private when F_Identifier => (if Ctx.Cursors (Fld).Predecessor = F_Checksum - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2216,7 +2216,7 @@ private when F_Pointer => (if Ctx.Cursors (Fld).Predecessor = F_Checksum - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2224,9 +2224,9 @@ private when F_Unused_32 => (if Ctx.Cursors (Fld).Predecessor = F_Checksum - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2248,8 +2248,8 @@ private when F_Originate_Timestamp => (if Ctx.Cursors (Fld).Predecessor = F_Sequence_Number - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -2261,8 +2261,8 @@ private Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 elsif Ctx.Cursors (Fld).Predecessor = F_Sequence_Number - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request))) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 elsif @@ -2382,285 +2382,285 @@ private function Structural_Valid_Message (Ctx : Context) return Boolean is (Valid (Ctx, F_Tag) and then ((Valid (Ctx, F_Code_Destination_Unreachable) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Structural_Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) and then Structural_Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Redirect) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Structural_Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) and then Structural_Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Time_Exceeded) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Structural_Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) and then Structural_Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Zero) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request))) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Structural_Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Structural_Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) and then Structural_Valid (Ctx, F_Data)))))); function Valid_Message (Ctx : Context) return Boolean is (Valid (Ctx, F_Tag) and then ((Valid (Ctx, F_Code_Destination_Unreachable) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) and then Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Redirect) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) and then Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Time_Exceeded) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) and then Valid (Ctx, F_Data)))) or (Valid (Ctx, F_Code_Zero) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request))) and then Valid (Ctx, F_Checksum) and then ((Valid (Ctx, F_Gateway_Internet_Address) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Redirect)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Redirect)) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Identifier) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply))) and then Valid (Ctx, F_Sequence_Number) and then ((Valid (Ctx, F_Data) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Reply)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Echo_Request)))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Reply)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Echo_Request)))) or (Valid (Ctx, F_Originate_Timestamp) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Msg)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Timestamp_Reply))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Msg)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Timestamp_Reply))) and then Valid (Ctx, F_Receive_Timestamp) and then Valid (Ctx, F_Transmit_Timestamp)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Request)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Information_Reply)))) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Request)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Information_Reply)))) or (Valid (Ctx, F_Pointer) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Parameter_Problem)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Parameter_Problem)) and then Valid (Ctx, F_Unused_24) and then Valid (Ctx, F_Data)) or (Valid (Ctx, F_Unused_32) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Time_Exceeded)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Destination_Unreachable)) - or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (ICMP.Source_Quench))) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Time_Exceeded)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Destination_Unreachable)) + or RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.ICMP.Source_Quench))) and then Valid (Ctx, F_Data)))))); function Incomplete_Message (Ctx : Context) return Boolean is diff --git a/tests/spark/generated/rflx-ipv4-option.adb b/tests/spark/generated/rflx-ipv4-option.adb index 2ba4278dc..e1485e9d0 100644 --- a/tests/spark/generated/rflx-ipv4-option.adb +++ b/tests/spark/generated/rflx-ipv4-option.adb @@ -74,7 +74,7 @@ is F_Option_Number, when F_Option_Number => (if - RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 1 then F_Final @@ -86,17 +86,17 @@ is F_Initial), when F_Option_Length => (if - (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8) then F_Option_Data diff --git a/tests/spark/generated/rflx-ipv4-option.ads b/tests/spark/generated/rflx-ipv4-option.ads index e8d2a9a2b..eba21ce5d 100644 --- a/tests/spark/generated/rflx-ipv4-option.ads +++ b/tests/spark/generated/rflx-ipv4-option.ads @@ -401,17 +401,17 @@ is and Get_Option_Length (Ctx) = Val and Invalid (Ctx, F_Option_Data) and (if - (RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) + (RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Debugging_And_Measurement)) and Get_Option_Number (Ctx) = 4) - or (RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (IPv4.Control)) + or (RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and (Get_Option_Number (Ctx) = 9 or Get_Option_Number (Ctx) = 3 or Get_Option_Number (Ctx) = 7)) or (Get_Option_Length (Ctx) = 11 - and RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Get_Option_Number (Ctx) = 2) or (Get_Option_Length (Ctx) = 4 - and RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (To_Base (Get_Option_Class (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Get_Option_Number (Ctx) = 8) then Predecessor (Ctx, F_Option_Data) = F_Option_Length @@ -654,17 +654,17 @@ private then (Valid (Cursors (F_Option_Length)) and then Cursors (F_Option_Data).Predecessor = F_Option_Length - and then ((RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) + and then ((RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Debugging_And_Measurement)) and Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + or (RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and (Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Cursors (F_Option_Number).Value.Option_Number_Value = 8))))) and then ((if Invalid (Cursors (F_Copied)) @@ -709,17 +709,17 @@ private and then Cursors (F_Option_Length).First = Cursors (F_Option_Number).Last + 1 and then (if Structural_Valid (Cursors (F_Option_Data)) - and then ((RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) + and then ((RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Debugging_And_Measurement)) and Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + or (RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and (Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Cursors (F_Option_Number).Value.Option_Number_Value = 8)) then Cursors (F_Option_Data).Last - Cursors (F_Option_Data).First + 1 = (RFLX_Types.Bit_Length (Cursors (F_Option_Length).Value.Option_Length_Value) - 2) * 8 @@ -783,17 +783,17 @@ private when F_Option_Length => (case Fld is when F_Option_Data => - (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8), when others => False), @@ -805,21 +805,21 @@ private when F_Initial | F_Copied | F_Option_Class => True, when F_Option_Number => - (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and RFLX_Types.U64 (Val.Option_Number_Value) = 1) or RFLX_Types.U64 (Val.Option_Number_Value) > 1, when F_Option_Length => - (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) + (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (RFLX_Types.U64 (Val.Option_Length_Value) = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (RFLX_Types.U64 (Val.Option_Length_Value) = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8), when F_Option_Data => True, @@ -890,17 +890,17 @@ private when F_Option_Data => (if Ctx.Cursors (Fld).Predecessor = F_Option_Length - and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 @@ -971,44 +971,44 @@ private (Valid (Ctx, F_Copied) and then Valid (Ctx, F_Option_Class) and then Valid (Ctx, F_Option_Number) - and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 1) or (Valid (Ctx, F_Option_Length) and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 and then Structural_Valid (Ctx, F_Option_Data) - and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8))))); function Valid_Message (Ctx : Context) return Boolean is (Valid (Ctx, F_Copied) and then Valid (Ctx, F_Option_Class) and then Valid (Ctx, F_Option_Number) - and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 1) or (Valid (Ctx, F_Option_Length) and then Ctx.Cursors (F_Option_Number).Value.Option_Number_Value > 1 and then Valid (Ctx, F_Option_Data) - and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Debugging_And_Measurement)) + and then ((RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Debugging_And_Measurement)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 4) - or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + or (RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and (Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 9 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 3 or Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 7)) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 11 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 2) or (Ctx.Cursors (F_Option_Length).Value.Option_Length_Value = 4 - and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (IPv4.Control)) + and RFLX_Types.U64 (Ctx.Cursors (F_Option_Class).Value.Option_Class_Value) = RFLX_Types.U64 (To_Base (RFLX.IPv4.Control)) and Ctx.Cursors (F_Option_Number).Value.Option_Number_Value = 8))))); function Incomplete_Message (Ctx : Context) return Boolean is diff --git a/tests/spark/generated/rflx-tlv-message.adb b/tests/spark/generated/rflx-tlv-message.adb index 967befd30..f4bc08a82 100644 --- a/tests/spark/generated/rflx-tlv-message.adb +++ b/tests/spark/generated/rflx-tlv-message.adb @@ -70,11 +70,11 @@ is ((case Fld is when F_Tag => (if - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Error)) then F_Final elsif - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Data)) then F_Length else diff --git a/tests/spark/generated/rflx-tlv-message.ads b/tests/spark/generated/rflx-tlv-message.ads index fd292d60a..7928a68c2 100644 --- a/tests/spark/generated/rflx-tlv-message.ads +++ b/tests/spark/generated/rflx-tlv-message.ads @@ -306,7 +306,7 @@ is and Invalid (Ctx, F_Length) and Invalid (Ctx, F_Value) and (if - RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + RFLX_Types.U64 (To_Base (Get_Tag (Ctx))) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Data)) then Predecessor (Ctx, F_Length) = F_Tag and Valid_Next (Ctx, F_Length)) @@ -538,7 +538,7 @@ private then (Valid (Cursors (F_Tag)) and then Cursors (F_Length).Predecessor = F_Tag - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)))) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Data)))) and then (if Structural_Valid (Cursors (F_Value)) then @@ -560,7 +560,7 @@ private and then Cursors (F_Tag).First = First and then (if Structural_Valid (Cursors (F_Length)) - and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + and then RFLX_Types.U64 (Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Data)) then Cursors (F_Length).Last - Cursors (F_Length).First + 1 = RFLX.TLV.Length'Size and then Cursors (F_Length).Predecessor = F_Tag @@ -609,7 +609,7 @@ private when F_Tag => (case Fld is when F_Length => - RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)), + RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Data)), when others => False), when F_Length => @@ -626,8 +626,8 @@ private when F_Initial => True, when F_Tag => - RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) - or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)), + RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Error)) + or RFLX_Types.U64 (Val.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Data)), when F_Length | F_Value => True, when F_Final => @@ -663,7 +663,7 @@ private when F_Length => (if Ctx.Cursors (Fld).Predecessor = F_Tag - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Data)) then Ctx.Cursors (Ctx.Cursors (Fld).Predecessor).Last + 1 else @@ -732,16 +732,16 @@ private function Structural_Valid_Message (Ctx : Context) return Boolean is (Valid (Ctx, F_Tag) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Error)) or (Valid (Ctx, F_Length) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Data)) and then Structural_Valid (Ctx, F_Value)))); function Valid_Message (Ctx : Context) return Boolean is (Valid (Ctx, F_Tag) - and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Error)) + and then (RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Error)) or (Valid (Ctx, F_Length) - and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (TLV.Msg_Data)) + and then RFLX_Types.U64 (Ctx.Cursors (F_Tag).Value.Tag_Value) = RFLX_Types.U64 (To_Base (RFLX.TLV.Msg_Data)) and then Valid (Ctx, F_Value)))); function Incomplete_Message (Ctx : Context) return Boolean is diff --git a/tests/unit/generator_test.py b/tests/unit/generator_test.py index 23c82043c..c67578182 100644 --- a/tests/unit/generator_test.py +++ b/tests/unit/generator_test.py @@ -138,7 +138,7 @@ def test_substitution_relation_aggregate( ) assert_equal( - relation(left, right).substituted(common.substitution(models.TLV_MESSAGE)), + relation(left, right).substituted(common.substitution(models.TLV_MESSAGE, "")), equal_call if relation == expr.Equal else expr.Not(equal_call), ) @@ -167,7 +167,9 @@ def test_substitution_relation_scalar( expected: Tuple[expr.Expr, expr.Expr], ) -> None: assert_equal( - relation(*expressions).substituted(common.substitution(models.TLV_MESSAGE, public=True)), + relation(*expressions).substituted( + common.substitution(models.TLV_MESSAGE, "", public=True) + ), relation(*expected), ) From 1d3170dd81e6e46bce3ae44282fe3547cc927e92 Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Fri, 28 May 2021 13:44:01 +0200 Subject: [PATCH 40/43] Prevent generation of structures for unsupported messages --- rflx/model/message.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/rflx/model/message.py b/rflx/model/message.py index cd8d2c63f..1f18a8280 100644 --- a/rflx/model/message.py +++ b/rflx/model/message.py @@ -682,8 +682,21 @@ def has_bounded_size(self) -> bool: @property def is_definite(self) -> bool: - """Return true if the message has a bounded size and no optional fields.""" - return len(self.paths(FINAL)) <= 1 and self.has_bounded_size + """ + Return true if the message has a bounded size and no optional fields. + + Messages with a First or Last attribute in a size aspect are not yet supported and + therefore considered as not definite. + """ + return ( + len(self.paths(FINAL)) <= 1 + and self.has_bounded_size + and all( + not l.size.findall(lambda x: isinstance(x, (expr.First, expr.Last))) + for l in self.structure + for v in l.size.variables() + ) + ) def size(self, field_values: Mapping[Field, expr.Expr] = None) -> expr.Expr: field_values = field_values if field_values else {} From 7f9d0a2c85fa7c405544c2471911f6f2e001df9e Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Wed, 26 May 2021 17:29:14 +0200 Subject: [PATCH 41/43] Improve verification time Add shape files and update proof session files. Ref. #332 --- .gitignore | 1 - .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 364 bytes .../why3session.xml | 28 +- .../why3shapes.gz | Bin 0 -> 415 bytes .../why3session.xml | 28 +- .../why3shapes.gz | Bin 0 -> 714 bytes .../why3session.xml | 164 +- .../why3shapes.gz | Bin 0 -> 2446 bytes .../why3session.xml | 98 +- .../why3shapes.gz | Bin 0 -> 1141 bytes .../why3session.xml | 296 +- .../why3shapes.gz | Bin 0 -> 4378 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 441 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 271 bytes .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 336 bytes .../why3session.xml | 619 +- .../why3shapes.gz | Bin 0 -> 7288 bytes .../why3session.xml | 45 +- .../why3shapes.gz | Bin 0 -> 636 bytes .../why3session.xml | 81 +- .../why3shapes.gz | Bin 0 -> 1058 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 388 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 399 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 387 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 388 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 389 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1695 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3117 bytes .../why3session.xml | 1111 ++-- .../why3shapes.gz | Bin 0 -> 8588 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 696 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 705 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 705 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 705 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 234 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 397 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 383 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 395 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 383 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 393 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 392 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 382 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 392 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 384 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 389 bytes .../why3session.xml | 181 +- .../why3shapes.gz | Bin 0 -> 1962 bytes .../why3session.xml | 198 +- .../why3shapes.gz | Bin 0 -> 2568 bytes .../why3session.xml | 252 +- .../why3shapes.gz | Bin 0 -> 3163 bytes .../why3session.xml | 2880 +--------- .../why3shapes.gz | Bin 0 -> 3822 bytes .../why3session.xml | 58 +- .../why3shapes.gz | Bin 0 -> 1543 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 291 bytes .../why3session.xml | 325 +- .../why3shapes.gz | Bin 0 -> 4367 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 371 bytes .../why3session.xml | 91 +- .../why3shapes.gz | Bin 0 -> 1184 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1821 bytes .../why3session.xml | 4530 +++++++-------- .../why3shapes.gz | Bin 0 -> 54767 bytes .../why3session.xml | 526 +- .../why3shapes.gz | Bin 0 -> 9101 bytes .../why3session.xml | 351 +- .../why3shapes.gz | Bin 0 -> 5441 bytes .../why3session.xml | 358 +- .../why3shapes.gz | Bin 0 -> 5484 bytes .../why3session.xml | 364 +- .../why3shapes.gz | Bin 0 -> 5538 bytes .../why3session.xml | 373 +- .../why3shapes.gz | Bin 0 -> 5586 bytes .../why3session.xml | 390 +- .../why3shapes.gz | Bin 0 -> 5370 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 299 +- .../why3shapes.gz | Bin 0 -> 4327 bytes .../why3session.xml | 1295 ++--- .../why3shapes.gz | Bin 0 -> 20894 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 573 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 573 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 573 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 573 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 405 +- .../why3shapes.gz | Bin 0 -> 6048 bytes .../why3session.xml | 412 +- .../why3shapes.gz | Bin 0 -> 6084 bytes .../why3session.xml | 480 +- .../why3shapes.gz | Bin 0 -> 6762 bytes .../why3session.xml | 417 +- .../why3shapes.gz | Bin 0 -> 6142 bytes .../why3session.xml | 511 +- .../why3shapes.gz | Bin 0 -> 7083 bytes .../why3session.xml | 525 +- .../why3shapes.gz | Bin 0 -> 8162 bytes .../why3session.xml | 459 +- .../why3shapes.gz | Bin 0 -> 8481 bytes .../why3session.xml | 546 +- .../why3shapes.gz | Bin 0 -> 7483 bytes .../why3session.xml | 453 +- .../why3shapes.gz | Bin 0 -> 6370 bytes .../why3session.xml | 422 +- .../why3shapes.gz | Bin 0 -> 6058 bytes .../why3session.xml | 997 ++-- .../why3shapes.gz | Bin 0 -> 20081 bytes .../why3session.xml | 353 +- .../why3shapes.gz | Bin 0 -> 4767 bytes .../why3session.xml | 50 +- .../why3shapes.gz | Bin 0 -> 675 bytes .../why3session.xml | 125 +- .../why3shapes.gz | Bin 0 -> 1409 bytes .../why3session.xml | 32 +- .../why3shapes.gz | Bin 0 -> 599 bytes .../why3session.xml | 2304 ++++---- .../why3shapes.gz | Bin 0 -> 31994 bytes .../why3session.xml | 997 ++-- .../why3shapes.gz | Bin 0 -> 19872 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 311 bytes .../why3session.xml | 102 +- .../why3shapes.gz | Bin 0 -> 1473 bytes .../why3session.xml | 3372 ++--------- .../why3shapes.gz | Bin 0 -> 14430 bytes .../why3session.xml | 90 +- .../why3shapes.gz | Bin 0 -> 1870 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 739 bytes .../why3session.xml | 199 +- .../why3shapes.gz | Bin 0 -> 3084 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 193 bytes .../why3session.xml | 27 +- .../why3shapes.gz | Bin 0 -> 420 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 519 bytes .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 736 bytes .../why3session.xml | 160 +- .../why3shapes.gz | Bin 0 -> 2345 bytes .../why3session.xml | 62 +- .../why3shapes.gz | Bin 0 -> 762 bytes .../why3session.xml | 219 +- .../why3shapes.gz | Bin 0 -> 2258 bytes .../why3session.xml | 147 +- .../why3shapes.gz | Bin 0 -> 2199 bytes .../why3session.xml | 85 +- .../why3shapes.gz | Bin 0 -> 1061 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 201 bytes .../why3session.xml | 198 +- .../why3shapes.gz | Bin 0 -> 2999 bytes .../why3session.xml | 139 +- .../why3shapes.gz | Bin 0 -> 1572 bytes .../why3session.xml | 251 +- .../why3shapes.gz | Bin 0 -> 3116 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 365 bytes .../why3session.xml | 28 +- .../why3shapes.gz | Bin 0 -> 418 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 414 bytes .../why3session.xml | 28 +- .../why3shapes.gz | Bin 0 -> 721 bytes .../why3session.xml | 164 +- .../why3shapes.gz | Bin 0 -> 2524 bytes .../why3session.xml | 98 +- .../why3shapes.gz | Bin 0 -> 1153 bytes .../why3session.xml | 62 +- .../why3shapes.gz | Bin 0 -> 1013 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 439 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 271 bytes .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 335 bytes .../why3session.xml | 326 +- .../why3shapes.gz | Bin 0 -> 2828 bytes .../why3session.xml | 45 +- .../why3shapes.gz | Bin 0 -> 645 bytes .../why3session.xml | 136 +- .../why3shapes.gz | Bin 0 -> 1741 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 389 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 382 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 382 bytes .../why3session.xml | 1111 ++-- .../why3shapes.gz | Bin 0 -> 8574 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 700 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 705 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 704 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 694 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 706 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 237 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 385 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 385 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 384 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 390 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 390 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 391 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 381 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1711 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3139 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 384 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 383 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 388 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 382 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 387 bytes .../why3session.xml | 181 +- .../why3shapes.gz | Bin 0 -> 1964 bytes .../why3session.xml | 198 +- .../why3shapes.gz | Bin 0 -> 2569 bytes .../why3session.xml | 483 +- .../why3shapes.gz | Bin 0 -> 5357 bytes .../why3session.xml | 1127 +--- .../why3shapes.gz | Bin 0 -> 6226 bytes .../why3session.xml | 60 +- .../why3shapes.gz | Bin 0 -> 1600 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 289 bytes .../why3session.xml | 70 +- .../why3shapes.gz | Bin 0 -> 977 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 370 bytes .../why3session.xml | 91 +- .../why3shapes.gz | Bin 0 -> 1191 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1825 bytes .../why3session.xml | 5067 +++++++---------- .../why3shapes.gz | Bin 0 -> 61237 bytes .../why3session.xml | 700 +-- .../why3shapes.gz | Bin 0 -> 9180 bytes .../why3session.xml | 385 +- .../why3shapes.gz | Bin 0 -> 5908 bytes .../why3session.xml | 410 +- .../why3shapes.gz | Bin 0 -> 6195 bytes .../why3session.xml | 1295 ++--- .../why3shapes.gz | Bin 0 -> 20883 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 573 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 571 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 570 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 571 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 513 +- .../why3shapes.gz | Bin 0 -> 7185 bytes .../why3session.xml | 545 +- .../why3shapes.gz | Bin 0 -> 7436 bytes .../why3session.xml | 495 +- .../why3shapes.gz | Bin 0 -> 7136 bytes .../why3session.xml | 575 +- .../why3shapes.gz | Bin 0 -> 7767 bytes .../why3session.xml | 650 +-- .../why3shapes.gz | Bin 0 -> 8599 bytes .../why3session.xml | 460 +- .../why3shapes.gz | Bin 0 -> 6730 bytes .../why3session.xml | 359 +- .../why3shapes.gz | Bin 0 -> 5660 bytes .../why3session.xml | 634 +-- .../why3shapes.gz | Bin 0 -> 8656 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 541 +- .../why3shapes.gz | Bin 0 -> 6789 bytes .../why3session.xml | 615 +- .../why3shapes.gz | Bin 0 -> 7663 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 546 +- .../why3shapes.gz | Bin 0 -> 6849 bytes .../why3session.xml | 621 +- .../why3shapes.gz | Bin 0 -> 8285 bytes .../why3session.xml | 675 +-- .../why3shapes.gz | Bin 0 -> 8922 bytes .../why3session.xml | 457 +- .../why3shapes.gz | Bin 0 -> 6811 bytes .../why3session.xml | 600 +- .../why3shapes.gz | Bin 0 -> 8031 bytes .../why3session.xml | 335 +- .../why3shapes.gz | Bin 0 -> 5413 bytes .../why3session.xml | 102 +- .../why3shapes.gz | Bin 0 -> 2338 bytes .../why3session.xml | 74 +- .../why3shapes.gz | Bin 0 -> 1025 bytes .../why3session.xml | 50 +- .../why3shapes.gz | Bin 0 -> 695 bytes .../why3session.xml | 1154 +--- .../why3shapes.gz | Bin 0 -> 8172 bytes .../why3session.xml | 125 +- .../why3shapes.gz | Bin 0 -> 1411 bytes .../why3session.xml | 400 +- .../why3shapes.gz | Bin 0 -> 5375 bytes .../why3session.xml | 32 +- .../why3shapes.gz | Bin 0 -> 603 bytes .../why3session.xml | 618 +- .../why3shapes.gz | Bin 0 -> 13613 bytes .../why3session.xml | 102 +- .../why3shapes.gz | Bin 0 -> 2343 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 322 bytes .../why3session.xml | 102 +- .../why3shapes.gz | Bin 0 -> 1423 bytes .../why3session.xml | 1417 ++--- .../why3shapes.gz | Bin 0 -> 15601 bytes .../why3session.xml | 92 +- .../why3shapes.gz | Bin 0 -> 1943 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 409 bytes .../why3session.xml | 28 +- .../why3shapes.gz | Bin 0 -> 420 bytes .../why3session.xml | 28 +- .../why3shapes.gz | Bin 0 -> 704 bytes .../why3session.xml | 164 +- .../why3shapes.gz | Bin 0 -> 2462 bytes .../why3session.xml | 98 +- .../why3shapes.gz | Bin 0 -> 1197 bytes .../why3session.xml | 155 +- .../why3shapes.gz | Bin 0 -> 2155 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 419 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 272 bytes .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 338 bytes .../why3session.xml | 223 +- .../why3shapes.gz | Bin 0 -> 2684 bytes .../why3session.xml | 45 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 58 +- .../why3shapes.gz | Bin 0 -> 730 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 383 bytes .../why3session.xml | 330 +- .../why3shapes.gz | Bin 0 -> 3322 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 694 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 73 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 235 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 387 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1706 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3121 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 388 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 387 bytes .../why3session.xml | 181 +- .../why3shapes.gz | Bin 0 -> 1945 bytes .../why3session.xml | 198 +- .../why3shapes.gz | Bin 0 -> 2534 bytes .../why3session.xml | 280 +- .../why3shapes.gz | Bin 0 -> 3356 bytes .../why3session.xml | 566 +- .../why3shapes.gz | Bin 0 -> 4004 bytes .../why3session.xml | 36 +- .../why3shapes.gz | Bin 0 -> 959 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 289 bytes .../why3session.xml | 159 +- .../why3shapes.gz | Bin 0 -> 1989 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 373 bytes .../why3session.xml | 91 +- .../why3shapes.gz | Bin 0 -> 1162 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1781 bytes .../why3session.xml | 669 +-- .../why3shapes.gz | Bin 0 -> 8782 bytes .../why3session.xml | 265 +- .../why3shapes.gz | Bin 0 -> 4205 bytes .../why3session.xml | 481 +- .../why3shapes.gz | Bin 0 -> 8144 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 568 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 291 +- .../why3shapes.gz | Bin 0 -> 4461 bytes .../why3session.xml | 414 +- .../why3shapes.gz | Bin 0 -> 5503 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 329 +- .../why3shapes.gz | Bin 0 -> 4459 bytes .../why3session.xml | 424 +- .../why3shapes.gz | Bin 0 -> 6448 bytes .../why3session.xml | 349 +- .../why3shapes.gz | Bin 0 -> 5228 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 2950 bytes .../why3session.xml | 177 +- .../why3shapes.gz | Bin 0 -> 2248 bytes .../why3session.xml | 50 +- .../why3shapes.gz | Bin 0 -> 735 bytes .../why3session.xml | 125 +- .../why3shapes.gz | Bin 0 -> 1404 bytes .../why3session.xml | 32 +- .../why3shapes.gz | Bin 0 -> 599 bytes .../why3session.xml | 430 +- .../why3shapes.gz | Bin 0 -> 8511 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 2941 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 317 bytes .../why3session.xml | 36 +- .../why3shapes.gz | Bin 0 -> 501 bytes .../why3session.xml | 677 +-- .../why3shapes.gz | Bin 0 -> 7432 bytes .../why3session.xml | 68 +- .../why3shapes.gz | Bin 0 -> 1047 bytes .../why3session.xml | 49 - .../why3session.xml | 38 - .../why3session.xml | 31 - .../why3session.xml | 59 - .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 173 bytes .../why3session.xml | 588 +- .../why3shapes.gz | Bin 0 -> 4847 bytes .../why3session.xml | 47 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 113 +- .../ada___rflx__icmp__to_actual/why3shapes.gz | Bin 0 -> 211 bytes .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 193 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 194 bytes .../why3session.xml | 78 +- .../why3shapes.gz | Bin 0 -> 200 bytes .../why3session.xml | 50 +- .../why3shapes.gz | Bin 0 -> 185 bytes .../why3session.xml | 64 +- .../why3shapes.gz | Bin 0 -> 193 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 194 bytes .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../ada___rflx__icmp__to_base/why3session.xml | 101 - .../why3session.xml | 66 - .../why3session.xml | 38 - .../why3session.xml | 52 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../ada___rflx__icmp__valid/why3session.xml | 38 - .../why3session.xml | 38 - .../why3session.xml | 38 - .../why3session.xml | 38 - .../why3session.xml | 29 +- .../ada___rflx__ipv4__to_actual/why3shapes.gz | Bin 0 -> 192 bytes .../why3session.xml | 56 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 193 bytes .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 267 bytes .../why3session.xml | 38 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 50 +- .../why3shapes.gz | Bin 0 -> 187 bytes .../why3session.xml | 35 - .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 192 bytes .../why3session.xml | 38 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 38 - .../why3session.xml | 187 +- .../why3shapes.gz | Bin 0 -> 2251 bytes .../why3session.xml | 197 +- .../why3shapes.gz | Bin 0 -> 1716 bytes .../why3session.xml | 86 +- .../why3shapes.gz | Bin 0 -> 909 bytes .../why3session.xml | 39 +- .../why3shapes.gz | Bin 0 -> 601 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 536 bytes .../why3session.xml | 110 +- .../why3shapes.gz | Bin 0 -> 1611 bytes .../why3session.xml | 33 - .../why3session.xml | 25 + .../why3shapes.gz | Bin 0 -> 234 bytes .../why3session.xml | 22 + .../why3shapes.gz | Bin 0 -> 189 bytes .../why3session.xml | 684 +-- .../why3shapes.gz | Bin 0 -> 9402 bytes .../why3session.xml | 124 +- .../why3shapes.gz | Bin 0 -> 1585 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 142 bytes .../why3session.xml | 207 +- .../why3shapes.gz | Bin 0 -> 3304 bytes .../why3session.xml | 269 +- .../why3shapes.gz | Bin 0 -> 3425 bytes .../why3session.xml | 691 +-- .../why3shapes.gz | Bin 0 -> 12022 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 514 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 586 bytes .../why3session.xml | 31 - .../icmpv4__checksum__add/why3session.xml | 22 +- .../icmpv4__checksum__add/why3shapes.gz | Bin 0 -> 346 bytes .../why3session.xml | 148 +- .../why3shapes.gz | Bin 0 -> 1909 bytes .../sessions/icmpv4__generate/why3session.xml | 982 ++-- .../sessions/icmpv4__generate/why3shapes.gz | Bin 0 -> 12975 bytes .../why3session.xml | 45 +- .../why3shapes.gz | Bin 0 -> 562 bytes .../why3session.xml | 342 +- .../icmpv4__generate__set_data/why3shapes.gz | Bin 0 -> 4735 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../icmpv4__get_address/why3session.xml | 337 +- .../icmpv4__get_address/why3shapes.gz | Bin 0 -> 2775 bytes .../why3session.xml | 63 +- .../why3shapes.gz | Bin 0 -> 821 bytes .../why3session.xml | 76 +- .../why3shapes.gz | Bin 0 -> 1265 bytes .../why3session.xml | 60 +- .../why3shapes.gz | Bin 0 -> 933 bytes .../sessions/icmpv4__image/why3session.xml | 166 +- .../sessions/icmpv4__image/why3shapes.gz | Bin 0 -> 2803 bytes .../sessions/icmpv4__image__2/why3session.xml | 50 +- .../sessions/icmpv4__image__2/why3shapes.gz | Bin 0 -> 1237 bytes .../why3session.xml | 163 +- .../why3shapes.gz | Bin 0 -> 2800 bytes .../sessions/icmpv4__image__3/why3session.xml | 141 +- .../sessions/icmpv4__image__3/why3shapes.gz | Bin 0 -> 2493 bytes .../icmpv4__image__3__img/why3session.xml | 162 +- .../icmpv4__image__3__img/why3shapes.gz | Bin 0 -> 2802 bytes .../sessions/icmpv4__ping/why3session.xml | 489 +- .../proof/sessions/icmpv4__ping/why3shapes.gz | Bin 0 -> 3677 bytes .../why3session.xml | 125 +- .../why3shapes.gz | Bin 0 -> 1695 bytes .../why3session.xml | 34 +- .../why3shapes.gz | Bin 0 -> 209 bytes .../why3session.xml | 76 +- .../icmpv4__ping__socket__send/why3shapes.gz | Bin 0 -> 919 bytes .../why3session.xml | 34 +- .../why3shapes.gz | Bin 0 -> 208 bytes .../sessions/icmpv4__print/why3session.xml | 427 +- .../sessions/icmpv4__print/why3shapes.gz | Bin 0 -> 6373 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 368 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 421 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 705 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2467 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1173 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 653 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 418 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 274 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 341 bytes .../why3session.xml | 63 +- .../why3shapes.gz | Bin 0 -> 833 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 680 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 544 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 2330 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 235 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 388 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 388 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1712 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3135 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1937 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2529 bytes .../why3session.xml | 234 +- .../why3shapes.gz | Bin 0 -> 3016 bytes .../why3session.xml | 359 +- .../why3shapes.gz | Bin 0 -> 3644 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 793 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 293 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 463 bytes .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 376 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1157 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1775 bytes .../why3session.xml | 363 +- .../why3shapes.gz | Bin 0 -> 5082 bytes .../why3session.xml | 321 +- .../why3shapes.gz | Bin 0 -> 5743 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 271 +- .../why3shapes.gz | Bin 0 -> 4545 bytes .../why3session.xml | 277 +- .../why3shapes.gz | Bin 0 -> 4788 bytes .../why3session.xml | 367 +- .../why3shapes.gz | Bin 0 -> 5131 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 277 +- .../why3shapes.gz | Bin 0 -> 4207 bytes .../why3session.xml | 49 +- .../why3shapes.gz | Bin 0 -> 992 bytes .../why3session.xml | 47 +- .../why3shapes.gz | Bin 0 -> 783 bytes .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 738 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1406 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 601 bytes .../why3session.xml | 172 +- .../why3shapes.gz | Bin 0 -> 3773 bytes .../why3session.xml | 49 +- .../why3shapes.gz | Bin 0 -> 963 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 321 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 340 bytes .../why3session.xml | 434 +- .../why3shapes.gz | Bin 0 -> 6357 bytes .../why3session.xml | 62 +- .../why3shapes.gz | Bin 0 -> 912 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 352 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 422 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 706 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2339 bytes .../why3session.xml | 39 - .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 416 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 274 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 341 bytes .../why3session.xml | 35 - .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 644 bytes .../why3session.xml | 35 - .../why3session.xml | 112 +- .../why3shapes.gz | Bin 0 -> 1642 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 236 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 390 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1927 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2518 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 551 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 293 bytes .../why3session.xml | 35 - .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 377 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1154 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1766 bytes .../why3session.xml | 187 +- .../why3shapes.gz | Bin 0 -> 2391 bytes .../why3session.xml | 252 +- .../why3shapes.gz | Bin 0 -> 4541 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 243 +- .../why3shapes.gz | Bin 0 -> 4137 bytes .../why3session.xml | 39 - .../why3session.xml | 43 - .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 667 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1416 bytes .../why3session.xml | 71 + .../why3shapes.gz | Bin 0 -> 1155 bytes .../why3session.xml | 41 + .../why3shapes.gz | Bin 0 -> 609 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 602 bytes .../why3session.xml | 92 +- .../why3shapes.gz | Bin 0 -> 1624 bytes .../why3session.xml | 39 - .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 318 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 255 bytes .../why3session.xml | 268 +- .../why3shapes.gz | Bin 0 -> 3234 bytes .../why3session.xml | 58 +- .../why3shapes.gz | Bin 0 -> 752 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 411 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 416 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 716 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2473 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1175 bytes .../why3session.xml | 49 +- .../why3shapes.gz | Bin 0 -> 790 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 420 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 271 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 336 bytes .../why3session.xml | 153 +- .../why3shapes.gz | Bin 0 -> 1644 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 640 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1173 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 387 bytes .../why3session.xml | 447 +- .../why3shapes.gz | Bin 0 -> 4271 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 67 +- .../why3shapes.gz | Bin 0 -> 652 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 236 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1698 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3117 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 384 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 384 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 383 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 389 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 390 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1958 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2551 bytes .../why3session.xml | 269 +- .../why3shapes.gz | Bin 0 -> 3311 bytes .../why3session.xml | 664 +-- .../why3shapes.gz | Bin 0 -> 3971 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 1061 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 292 bytes .../why3session.xml | 55 +- .../why3shapes.gz | Bin 0 -> 756 bytes .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 374 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1177 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1807 bytes .../why3session.xml | 1063 ++-- .../why3shapes.gz | Bin 0 -> 13951 bytes .../why3session.xml | 273 +- .../why3shapes.gz | Bin 0 -> 4667 bytes .../why3session.xml | 597 +- .../why3shapes.gz | Bin 0 -> 10441 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 567 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 401 +- .../why3shapes.gz | Bin 0 -> 5492 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 295 +- .../why3shapes.gz | Bin 0 -> 4934 bytes .../why3session.xml | 358 +- .../why3shapes.gz | Bin 0 -> 5539 bytes .../why3session.xml | 337 +- .../why3shapes.gz | Bin 0 -> 5359 bytes .../why3session.xml | 375 +- .../why3shapes.gz | Bin 0 -> 6047 bytes .../why3session.xml | 341 +- .../why3shapes.gz | Bin 0 -> 5637 bytes .../why3session.xml | 221 +- .../why3shapes.gz | Bin 0 -> 4038 bytes .../why3session.xml | 91 +- .../why3shapes.gz | Bin 0 -> 1218 bytes .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 677 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1414 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 597 bytes .../why3session.xml | 430 +- .../why3shapes.gz | Bin 0 -> 9216 bytes .../why3session.xml | 221 +- .../why3shapes.gz | Bin 0 -> 3993 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 320 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 666 bytes .../why3session.xml | 832 +-- .../why3shapes.gz | Bin 0 -> 9011 bytes .../why3session.xml | 70 +- .../why3shapes.gz | Bin 0 -> 1204 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 351 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 421 bytes .../why3session.xml | 33 + .../why3shapes.gz | Bin 0 -> 324 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 703 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2388 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1112 bytes .../why3session.xml | 32 +- .../why3shapes.gz | Bin 0 -> 457 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 416 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 274 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 339 bytes .../why3session.xml | 35 - .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 645 bytes .../why3session.xml | 35 - .../why3session.xml | 92 +- .../why3shapes.gz | Bin 0 -> 1511 bytes .../why3session.xml | 19 + .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 19 + .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1668 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3104 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1926 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2519 bytes .../why3session.xml | 202 +- .../why3shapes.gz | Bin 0 -> 2666 bytes .../why3session.xml | 253 +- .../why3shapes.gz | Bin 0 -> 3370 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 550 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 294 bytes .../why3session.xml | 35 - .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 376 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1149 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1769 bytes .../why3session.xml | 187 +- .../why3shapes.gz | Bin 0 -> 2397 bytes .../why3session.xml | 336 +- .../why3shapes.gz | Bin 0 -> 4954 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 34 +- .../why3shapes.gz | Bin 0 -> 439 bytes .../why3session.xml | 36 +- .../why3shapes.gz | Bin 0 -> 563 bytes .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 668 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1405 bytes .../why3session.xml | 97 + .../why3shapes.gz | Bin 0 -> 1669 bytes .../why3session.xml | 46 + .../why3shapes.gz | Bin 0 -> 636 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 598 bytes .../why3session.xml | 92 +- .../why3shapes.gz | Bin 0 -> 1626 bytes .../why3session.xml | 34 +- .../why3shapes.gz | Bin 0 -> 479 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 328 bytes .../why3session.xml | 268 +- .../why3shapes.gz | Bin 0 -> 3275 bytes .../why3session.xml | 58 +- .../why3shapes.gz | Bin 0 -> 738 bytes .../why3session.xml | 30 + .../why3shapes.gz | Bin 0 -> 428 bytes .../why3session.xml | 30 + .../why3shapes.gz | Bin 0 -> 425 bytes .../why3session.xml | 41 + .../why3shapes.gz | Bin 0 -> 689 bytes .../why3session.xml | 152 + .../why3shapes.gz | Bin 0 -> 2357 bytes .../why3session.xml | 86 + .../why3shapes.gz | Bin 0 -> 1162 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 418 bytes .../why3session.xml | 23 + .../why3shapes.gz | Bin 0 -> 280 bytes .../why3session.xml | 38 + .../why3shapes.gz | Bin 0 -> 344 bytes .../why3session.xml | 33 + .../why3shapes.gz | Bin 0 -> 436 bytes .../why3session.xml | 39 + .../why3shapes.gz | Bin 0 -> 666 bytes .../why3session.xml | 30 + .../why3shapes.gz | Bin 0 -> 348 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1693 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3112 bytes .../why3session.xml | 109 + .../why3shapes.gz | Bin 0 -> 1842 bytes .../why3session.xml | 19 + .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 19 + .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 57 + .../why3shapes.gz | Bin 0 -> 695 bytes .../why3session.xml | 25 + .../why3shapes.gz | Bin 0 -> 236 bytes .../why3session.xml | 33 + .../why3shapes.gz | Bin 0 -> 393 bytes .../why3session.xml | 173 + .../why3shapes.gz | Bin 0 -> 1928 bytes .../why3session.xml | 190 + .../why3shapes.gz | Bin 0 -> 2520 bytes .../why3session.xml | 166 + .../why3shapes.gz | Bin 0 -> 2795 bytes .../why3session.xml | 194 + .../why3shapes.gz | Bin 0 -> 3471 bytes .../why3session.xml | 37 + .../why3shapes.gz | Bin 0 -> 672 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 297 bytes .../why3session.xml | 26 + .../why3shapes.gz | Bin 0 -> 383 bytes .../why3session.xml | 78 + .../why3shapes.gz | Bin 0 -> 1155 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1749 bytes .../why3session.xml | 225 + .../why3shapes.gz | Bin 0 -> 3689 bytes .../why3session.xml | 280 + .../why3shapes.gz | Bin 0 -> 4958 bytes .../why3session.xml | 19 + .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 19 + .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 226 + .../why3shapes.gz | Bin 0 -> 4516 bytes .../why3session.xml | 19 + .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 19 + .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 47 + .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 25 + .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 221 + .../why3shapes.gz | Bin 0 -> 4061 bytes .../why3session.xml | 43 + .../why3shapes.gz | Bin 0 -> 706 bytes .../why3session.xml | 108 + .../why3shapes.gz | Bin 0 -> 1425 bytes .../why3session.xml | 101 + .../why3shapes.gz | Bin 0 -> 1683 bytes .../why3session.xml | 60 + .../why3shapes.gz | Bin 0 -> 940 bytes .../why3session.xml | 44 + .../why3shapes.gz | Bin 0 -> 604 bytes .../why3session.xml | 127 + .../why3shapes.gz | Bin 0 -> 2316 bytes .../why3session.xml | 23 + .../why3shapes.gz | Bin 0 -> 349 bytes .../why3session.xml | 23 + .../why3shapes.gz | Bin 0 -> 260 bytes .../why3session.xml | 293 + .../why3shapes.gz | Bin 0 -> 5585 bytes .../why3session.xml | 54 + .../why3shapes.gz | Bin 0 -> 834 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 364 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 415 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 714 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2446 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1141 bytes .../why3session.xml | 261 +- .../why3shapes.gz | Bin 0 -> 4378 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 441 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 271 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 336 bytes .../why3session.xml | 556 +- .../why3shapes.gz | Bin 0 -> 7288 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 636 bytes .../why3session.xml | 79 +- .../why3shapes.gz | Bin 0 -> 1058 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 388 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 399 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 387 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 388 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 389 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1695 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3117 bytes .../why3session.xml | 1050 ++-- .../why3shapes.gz | Bin 0 -> 8588 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 696 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 705 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 705 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 705 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 234 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 397 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 383 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 395 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 383 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 393 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 392 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 382 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 392 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 384 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 389 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1962 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2568 bytes .../why3session.xml | 246 +- .../why3shapes.gz | Bin 0 -> 3163 bytes .../why3session.xml | 2759 +-------- .../why3shapes.gz | Bin 0 -> 3822 bytes .../why3session.xml | 56 +- .../why3shapes.gz | Bin 0 -> 1543 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 291 bytes .../why3session.xml | 283 +- .../why3shapes.gz | Bin 0 -> 4367 bytes .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 371 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1184 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1821 bytes .../why3session.xml | 4393 +++++++------- .../why3shapes.gz | Bin 0 -> 54767 bytes .../why3session.xml | 505 +- .../why3shapes.gz | Bin 0 -> 9101 bytes .../why3session.xml | 345 +- .../why3shapes.gz | Bin 0 -> 5441 bytes .../why3session.xml | 351 +- .../why3shapes.gz | Bin 0 -> 5484 bytes .../why3session.xml | 357 +- .../why3shapes.gz | Bin 0 -> 5538 bytes .../why3session.xml | 365 +- .../why3shapes.gz | Bin 0 -> 5586 bytes .../why3session.xml | 379 +- .../why3shapes.gz | Bin 0 -> 5370 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 289 +- .../why3shapes.gz | Bin 0 -> 4327 bytes .../why3session.xml | 1218 ++-- .../why3shapes.gz | Bin 0 -> 20894 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 573 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 573 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 573 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 573 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 395 +- .../why3shapes.gz | Bin 0 -> 6048 bytes .../why3session.xml | 401 +- .../why3shapes.gz | Bin 0 -> 6084 bytes .../why3session.xml | 463 +- .../why3shapes.gz | Bin 0 -> 6762 bytes .../why3session.xml | 407 +- .../why3shapes.gz | Bin 0 -> 6142 bytes .../why3session.xml | 491 +- .../why3shapes.gz | Bin 0 -> 7083 bytes .../why3session.xml | 505 +- .../why3shapes.gz | Bin 0 -> 8162 bytes .../why3session.xml | 455 +- .../why3shapes.gz | Bin 0 -> 8481 bytes .../why3session.xml | 523 +- .../why3shapes.gz | Bin 0 -> 7483 bytes .../why3session.xml | 439 +- .../why3shapes.gz | Bin 0 -> 6370 bytes .../why3session.xml | 411 +- .../why3shapes.gz | Bin 0 -> 6058 bytes .../why3session.xml | 935 ++- .../why3shapes.gz | Bin 0 -> 20081 bytes .../why3session.xml | 307 +- .../why3shapes.gz | Bin 0 -> 4767 bytes .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 675 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1409 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 599 bytes .../why3session.xml | 2302 ++++---- .../why3shapes.gz | Bin 0 -> 31994 bytes .../why3session.xml | 935 ++- .../why3shapes.gz | Bin 0 -> 19872 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 311 bytes .../why3session.xml | 100 +- .../why3shapes.gz | Bin 0 -> 1473 bytes .../why3session.xml | 3212 ++--------- .../why3shapes.gz | Bin 0 -> 14430 bytes .../why3session.xml | 88 +- .../why3shapes.gz | Bin 0 -> 1870 bytes .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 506 bytes .../why3session.xml | 183 +- .../why3shapes.gz | Bin 0 -> 3074 bytes .../why3session.xml | 28 +- .../why3shapes.gz | Bin 0 -> 738 bytes .../why3session.xml | 189 +- .../why3shapes.gz | Bin 0 -> 3057 bytes .../why3session.xml | 189 +- .../why3shapes.gz | Bin 0 -> 3081 bytes .../why3session.xml | 28 +- .../why3shapes.gz | Bin 0 -> 740 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 427 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 417 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 725 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2454 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1197 bytes .../why3session.xml | 139 +- .../why3shapes.gz | Bin 0 -> 2168 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 418 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 270 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 334 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2705 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 698 bytes .../why3session.xml | 55 +- .../why3shapes.gz | Bin 0 -> 735 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 384 bytes .../why3session.xml | 313 +- .../why3shapes.gz | Bin 0 -> 3342 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 694 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 235 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 387 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1709 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3133 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 386 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 384 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1960 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2541 bytes .../why3session.xml | 270 +- .../why3shapes.gz | Bin 0 -> 3375 bytes .../why3session.xml | 537 +- .../why3shapes.gz | Bin 0 -> 4091 bytes .../why3session.xml | 34 +- .../why3shapes.gz | Bin 0 -> 972 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 290 bytes .../why3session.xml | 135 +- .../why3shapes.gz | Bin 0 -> 2007 bytes .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 371 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1165 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1793 bytes .../why3session.xml | 653 +-- .../why3shapes.gz | Bin 0 -> 8851 bytes .../why3session.xml | 261 +- .../why3shapes.gz | Bin 0 -> 4290 bytes .../why3session.xml | 459 +- .../why3shapes.gz | Bin 0 -> 8243 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 568 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 283 +- .../why3shapes.gz | Bin 0 -> 4569 bytes .../why3session.xml | 399 +- .../why3shapes.gz | Bin 0 -> 5573 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 313 +- .../why3shapes.gz | Bin 0 -> 4552 bytes .../why3session.xml | 397 +- .../why3shapes.gz | Bin 0 -> 6500 bytes .../why3session.xml | 337 +- .../why3shapes.gz | Bin 0 -> 5339 bytes .../why3session.xml | 163 +- .../why3shapes.gz | Bin 0 -> 3011 bytes .../why3session.xml | 157 +- .../why3shapes.gz | Bin 0 -> 2259 bytes .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 751 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1408 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 603 bytes .../why3session.xml | 428 +- .../why3shapes.gz | Bin 0 -> 8724 bytes .../why3session.xml | 163 +- .../why3shapes.gz | Bin 0 -> 2978 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 318 bytes .../why3session.xml | 34 +- .../why3shapes.gz | Bin 0 -> 498 bytes .../why3session.xml | 636 +-- .../why3shapes.gz | Bin 0 -> 7561 bytes .../why3session.xml | 66 +- .../why3shapes.gz | Bin 0 -> 1060 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 193 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 420 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 519 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 736 bytes .../why3session.xml | 156 +- .../why3shapes.gz | Bin 0 -> 2345 bytes .../why3session.xml | 60 +- .../why3shapes.gz | Bin 0 -> 761 bytes .../why3session.xml | 217 +- .../why3shapes.gz | Bin 0 -> 2258 bytes .../why3session.xml | 145 +- .../why3shapes.gz | Bin 0 -> 2199 bytes .../why3session.xml | 83 +- .../why3shapes.gz | Bin 0 -> 1061 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 201 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2992 bytes .../why3session.xml | 137 +- .../why3shapes.gz | Bin 0 -> 1572 bytes .../why3session.xml | 205 +- .../why3shapes.gz | Bin 0 -> 3115 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 366 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 418 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 419 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 721 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2523 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1156 bytes .../why3session.xml | 57 +- .../why3shapes.gz | Bin 0 -> 1017 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 439 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 271 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 335 bytes .../why3session.xml | 303 +- .../why3shapes.gz | Bin 0 -> 2825 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 649 bytes .../why3session.xml | 123 +- .../why3shapes.gz | Bin 0 -> 1616 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 390 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 382 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 383 bytes .../why3session.xml | 1050 ++-- .../why3shapes.gz | Bin 0 -> 8569 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 700 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 705 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 704 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 694 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 706 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 237 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 384 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 385 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 386 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 388 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 392 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 387 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 382 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1716 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3139 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 385 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 385 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 388 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 383 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 385 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1963 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2565 bytes .../why3session.xml | 451 +- .../why3shapes.gz | Bin 0 -> 5361 bytes .../why3session.xml | 1019 +--- .../why3shapes.gz | Bin 0 -> 6237 bytes .../why3session.xml | 58 +- .../why3shapes.gz | Bin 0 -> 1602 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 291 bytes .../why3session.xml | 63 +- .../why3shapes.gz | Bin 0 -> 978 bytes .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 369 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1188 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1820 bytes .../why3session.xml | 4913 +++++++--------- .../why3shapes.gz | Bin 0 -> 61285 bytes .../why3session.xml | 650 +-- .../why3shapes.gz | Bin 0 -> 9174 bytes .../why3session.xml | 374 +- .../why3shapes.gz | Bin 0 -> 5904 bytes .../why3session.xml | 396 +- .../why3shapes.gz | Bin 0 -> 6205 bytes .../why3session.xml | 1218 ++-- .../why3shapes.gz | Bin 0 -> 20904 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 573 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 571 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 570 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 571 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 566 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 488 +- .../why3shapes.gz | Bin 0 -> 7200 bytes .../why3session.xml | 514 +- .../why3shapes.gz | Bin 0 -> 7442 bytes .../why3session.xml | 472 +- .../why3shapes.gz | Bin 0 -> 7145 bytes .../why3session.xml | 540 +- .../why3shapes.gz | Bin 0 -> 7769 bytes .../why3session.xml | 606 +- .../why3shapes.gz | Bin 0 -> 8602 bytes .../why3session.xml | 440 +- .../why3shapes.gz | Bin 0 -> 6722 bytes .../why3session.xml | 352 +- .../why3shapes.gz | Bin 0 -> 5662 bytes .../why3session.xml | 577 +- .../why3shapes.gz | Bin 0 -> 8656 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 490 +- .../why3shapes.gz | Bin 0 -> 6784 bytes .../why3session.xml | 578 +- .../why3shapes.gz | Bin 0 -> 7658 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 494 +- .../why3shapes.gz | Bin 0 -> 6846 bytes .../why3session.xml | 580 +- .../why3shapes.gz | Bin 0 -> 8285 bytes .../why3session.xml | 628 +- .../why3shapes.gz | Bin 0 -> 8906 bytes .../why3session.xml | 440 +- .../why3shapes.gz | Bin 0 -> 6810 bytes .../why3session.xml | 562 +- .../why3shapes.gz | Bin 0 -> 8045 bytes .../why3session.xml | 331 +- .../why3shapes.gz | Bin 0 -> 5410 bytes .../why3session.xml | 97 +- .../why3shapes.gz | Bin 0 -> 2340 bytes .../why3session.xml | 67 +- .../why3shapes.gz | Bin 0 -> 1028 bytes .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 698 bytes .../why3session.xml | 1088 +--- .../why3shapes.gz | Bin 0 -> 8166 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1408 bytes .../why3session.xml | 389 +- .../why3shapes.gz | Bin 0 -> 5371 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 603 bytes .../why3session.xml | 612 +- .../why3shapes.gz | Bin 0 -> 13485 bytes .../why3session.xml | 97 +- .../why3shapes.gz | Bin 0 -> 2344 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 320 bytes .../why3session.xml | 100 +- .../why3shapes.gz | Bin 0 -> 1423 bytes .../why3session.xml | 1328 ++--- .../why3shapes.gz | Bin 0 -> 15616 bytes .../why3session.xml | 90 +- .../why3shapes.gz | Bin 0 -> 1942 bytes .../why3session.xml | 49 - .../why3session.xml | 38 - .../why3session.xml | 31 - .../why3session.xml | 208 +- .../why3shapes.gz | Bin 0 -> 3498 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 202 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 431 bytes .../why3session.xml | 32 +- .../why3shapes.gz | Bin 0 -> 493 bytes .../why3session.xml | 40 +- .../why3shapes.gz | Bin 0 -> 764 bytes .../why3session.xml | 156 +- .../why3shapes.gz | Bin 0 -> 2363 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 258 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 294 bytes .../why3session.xml | 213 +- .../why3shapes.gz | Bin 0 -> 2215 bytes .../why3session.xml | 141 +- .../why3shapes.gz | Bin 0 -> 2156 bytes .../why3session.xml | 202 +- .../why3shapes.gz | Bin 0 -> 3103 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 83 +- .../why3shapes.gz | Bin 0 -> 1041 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 208 bytes .../why3session.xml | 137 +- .../why3shapes.gz | Bin 0 -> 1584 bytes .../why3session.xml | 62 +- .../why3shapes.gz | Bin 0 -> 798 bytes .../why3session.xml | 208 +- .../why3shapes.gz | Bin 0 -> 3478 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 198 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 429 bytes .../why3session.xml | 32 +- .../why3shapes.gz | Bin 0 -> 505 bytes .../why3session.xml | 40 +- .../why3shapes.gz | Bin 0 -> 773 bytes .../why3session.xml | 156 +- .../why3shapes.gz | Bin 0 -> 2362 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 257 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 291 bytes .../why3session.xml | 213 +- .../why3shapes.gz | Bin 0 -> 2232 bytes .../why3session.xml | 141 +- .../why3shapes.gz | Bin 0 -> 2140 bytes .../why3session.xml | 202 +- .../why3shapes.gz | Bin 0 -> 3100 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 83 +- .../why3shapes.gz | Bin 0 -> 1042 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 137 +- .../why3shapes.gz | Bin 0 -> 1591 bytes .../why3session.xml | 62 +- .../why3shapes.gz | Bin 0 -> 804 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 425 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 424 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 698 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2348 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1162 bytes .../why3session.xml | 39 - .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 419 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 277 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 343 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 432 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 721 bytes .../why3session.xml | 39 +- .../why3shapes.gz | Bin 0 -> 485 bytes .../why3session.xml | 112 +- .../why3shapes.gz | Bin 0 -> 1851 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 72 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 235 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 393 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1714 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3138 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1938 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2526 bytes .../why3session.xml | 218 +- .../why3shapes.gz | Bin 0 -> 2796 bytes .../why3session.xml | 304 +- .../why3shapes.gz | Bin 0 -> 3499 bytes .../why3session.xml | 28 +- .../why3shapes.gz | Bin 0 -> 669 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 296 bytes .../why3session.xml | 35 - .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 376 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1161 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1757 bytes .../why3session.xml | 263 +- .../why3shapes.gz | Bin 0 -> 3780 bytes .../why3session.xml | 252 +- .../why3shapes.gz | Bin 0 -> 4513 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 243 +- .../why3shapes.gz | Bin 0 -> 4107 bytes .../why3session.xml | 351 +- .../why3shapes.gz | Bin 0 -> 4961 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 261 +- .../why3shapes.gz | Bin 0 -> 4017 bytes .../why3session.xml | 43 - .../why3session.xml | 43 - .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 759 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1429 bytes .../why3session.xml | 122 + .../why3shapes.gz | Bin 0 -> 2150 bytes .../why3session.xml | 53 + .../why3shapes.gz | Bin 0 -> 835 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 602 bytes .../why3session.xml | 126 +- .../why3shapes.gz | Bin 0 -> 2512 bytes .../why3session.xml | 43 - .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 347 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 257 bytes .../why3session.xml | 365 +- .../why3shapes.gz | Bin 0 -> 5605 bytes .../why3session.xml | 60 +- .../why3shapes.gz | Bin 0 -> 836 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 197 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 426 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 487 bytes .../why3session.xml | 46 +- .../why3shapes.gz | Bin 0 -> 726 bytes .../why3session.xml | 156 +- .../why3shapes.gz | Bin 0 -> 2338 bytes .../why3session.xml | 60 +- .../why3shapes.gz | Bin 0 -> 773 bytes .../why3session.xml | 217 +- .../why3shapes.gz | Bin 0 -> 2255 bytes .../why3session.xml | 145 +- .../why3shapes.gz | Bin 0 -> 2199 bytes .../why3session.xml | 83 +- .../why3shapes.gz | Bin 0 -> 1051 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 202 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2928 bytes .../why3session.xml | 137 +- .../why3shapes.gz | Bin 0 -> 1581 bytes .../why3session.xml | 205 +- .../why3shapes.gz | Bin 0 -> 3108 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 364 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 416 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 405 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 408 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 403 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 406 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 710 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2371 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1166 bytes .../why3session.xml | 39 - .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 413 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 273 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 337 bytes .../why3session.xml | 83 +- .../why3shapes.gz | Bin 0 -> 754 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 644 bytes .../why3session.xml | 51 +- .../why3shapes.gz | Bin 0 -> 615 bytes .../why3session.xml | 112 +- .../why3shapes.gz | Bin 0 -> 1808 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 237 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 390 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1938 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2536 bytes .../why3session.xml | 34 +- .../why3shapes.gz | Bin 0 -> 899 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 293 bytes .../why3session.xml | 35 - .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 374 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1164 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1789 bytes .../why3session.xml | 653 +-- .../why3shapes.gz | Bin 0 -> 8714 bytes .../why3session.xml | 350 +- .../why3shapes.gz | Bin 0 -> 5885 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 346 +- .../why3shapes.gz | Bin 0 -> 5816 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 252 +- .../why3shapes.gz | Bin 0 -> 4522 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 261 +- .../why3shapes.gz | Bin 0 -> 4376 bytes .../why3session.xml | 358 +- .../why3shapes.gz | Bin 0 -> 5963 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 269 +- .../why3shapes.gz | Bin 0 -> 4035 bytes .../why3session.xml | 352 +- .../why3shapes.gz | Bin 0 -> 5897 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 55 - .../why3session.xml | 43 - .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 698 bytes .../why3session.xml | 533 +- .../why3shapes.gz | Bin 0 -> 6095 bytes .../why3session.xml | 545 +- .../why3shapes.gz | Bin 0 -> 6226 bytes .../why3session.xml | 557 +- .../why3shapes.gz | Bin 0 -> 6392 bytes .../why3session.xml | 551 +- .../why3shapes.gz | Bin 0 -> 6298 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1402 bytes .../why3session.xml | 245 +- .../why3shapes.gz | Bin 0 -> 3564 bytes .../why3session.xml | 245 +- .../why3shapes.gz | Bin 0 -> 3566 bytes .../why3session.xml | 245 +- .../why3shapes.gz | Bin 0 -> 3569 bytes .../why3session.xml | 245 +- .../why3shapes.gz | Bin 0 -> 3574 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 596 bytes .../why3session.xml | 204 +- .../why3shapes.gz | Bin 0 -> 4434 bytes .../why3session.xml | 55 - .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 317 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 253 bytes .../why3session.xml | 620 +- .../why3shapes.gz | Bin 0 -> 7687 bytes .../why3session.xml | 66 +- .../why3shapes.gz | Bin 0 -> 1049 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 425 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 424 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 420 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 687 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2349 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1161 bytes .../why3session.xml | 39 - .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 418 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 277 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 342 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 431 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 724 bytes .../why3session.xml | 39 +- .../why3shapes.gz | Bin 0 -> 484 bytes .../why3session.xml | 112 +- .../why3shapes.gz | Bin 0 -> 1842 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 72 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 235 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 390 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1930 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2516 bytes .../why3session.xml | 28 +- .../why3shapes.gz | Bin 0 -> 667 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 295 bytes .../why3session.xml | 35 - .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 376 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1155 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1743 bytes .../why3session.xml | 263 +- .../why3shapes.gz | Bin 0 -> 3746 bytes .../why3session.xml | 252 +- .../why3shapes.gz | Bin 0 -> 4493 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 243 +- .../why3shapes.gz | Bin 0 -> 4112 bytes .../why3session.xml | 350 +- .../why3shapes.gz | Bin 0 -> 6007 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 261 +- .../why3shapes.gz | Bin 0 -> 4013 bytes .../why3session.xml | 43 - .../why3session.xml | 43 - .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 753 bytes .../why3session.xml | 414 +- .../why3shapes.gz | Bin 0 -> 5773 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1418 bytes .../why3session.xml | 209 +- .../why3shapes.gz | Bin 0 -> 3152 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 601 bytes .../why3session.xml | 126 +- .../why3shapes.gz | Bin 0 -> 2490 bytes .../why3session.xml | 43 - .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 346 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 256 bytes .../why3session.xml | 365 +- .../why3shapes.gz | Bin 0 -> 5579 bytes .../why3session.xml | 60 +- .../why3shapes.gz | Bin 0 -> 831 bytes .../why3session.xml | 208 +- .../why3shapes.gz | Bin 0 -> 3422 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 198 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 428 bytes .../why3session.xml | 32 +- .../why3shapes.gz | Bin 0 -> 500 bytes .../why3session.xml | 40 +- .../why3shapes.gz | Bin 0 -> 782 bytes .../why3session.xml | 156 +- .../why3shapes.gz | Bin 0 -> 2345 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 255 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 287 bytes .../why3session.xml | 213 +- .../why3shapes.gz | Bin 0 -> 2224 bytes .../why3session.xml | 141 +- .../why3shapes.gz | Bin 0 -> 2140 bytes .../why3session.xml | 202 +- .../why3shapes.gz | Bin 0 -> 3105 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 703 bytes .../why3session.xml | 83 +- .../why3shapes.gz | Bin 0 -> 1054 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 202 bytes .../why3session.xml | 137 +- .../why3shapes.gz | Bin 0 -> 1595 bytes .../why3session.xml | 62 +- .../why3shapes.gz | Bin 0 -> 792 bytes .../why3session.xml | 208 +- .../why3shapes.gz | Bin 0 -> 3475 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 193 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 422 bytes .../why3session.xml | 32 +- .../why3shapes.gz | Bin 0 -> 498 bytes .../why3session.xml | 40 +- .../why3shapes.gz | Bin 0 -> 809 bytes .../why3session.xml | 156 +- .../why3shapes.gz | Bin 0 -> 2339 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 252 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 285 bytes .../why3session.xml | 213 +- .../why3shapes.gz | Bin 0 -> 2206 bytes .../why3session.xml | 141 +- .../why3shapes.gz | Bin 0 -> 2145 bytes .../why3session.xml | 202 +- .../why3shapes.gz | Bin 0 -> 3108 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 83 +- .../why3shapes.gz | Bin 0 -> 1057 bytes .../why3session.xml | 14 +- .../why3shapes.gz | Bin 0 -> 200 bytes .../why3session.xml | 137 +- .../why3shapes.gz | Bin 0 -> 1591 bytes .../why3session.xml | 62 +- .../why3shapes.gz | Bin 0 -> 799 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 406 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 436 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 408 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 637 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2362 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1173 bytes .../why3session.xml | 39 - .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 436 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 285 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 354 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 447 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 688 bytes .../why3session.xml | 51 +- .../why3shapes.gz | Bin 0 -> 694 bytes .../why3session.xml | 112 +- .../why3shapes.gz | Bin 0 -> 1819 bytes .../why3session.xml | 27 - .../why3session.xml | 27 - .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 697 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 237 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 404 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1918 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2495 bytes .../why3session.xml | 28 +- .../why3shapes.gz | Bin 0 -> 654 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 305 bytes .../why3session.xml | 35 - .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 394 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1147 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1731 bytes .../why3session.xml | 263 +- .../why3shapes.gz | Bin 0 -> 3615 bytes .../why3session.xml | 252 +- .../why3shapes.gz | Bin 0 -> 4336 bytes .../why3session.xml | 27 - .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 239 +- .../why3shapes.gz | Bin 0 -> 3942 bytes .../why3session.xml | 350 +- .../why3shapes.gz | Bin 0 -> 5810 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 261 +- .../why3shapes.gz | Bin 0 -> 3886 bytes .../why3session.xml | 43 - .../why3session.xml | 43 - .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 674 bytes .../why3session.xml | 416 +- .../why3shapes.gz | Bin 0 -> 5548 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1382 bytes .../why3session.xml | 209 +- .../why3shapes.gz | Bin 0 -> 3086 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 602 bytes .../why3session.xml | 134 +- .../why3shapes.gz | Bin 0 -> 2513 bytes .../why3session.xml | 43 - .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 321 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 269 bytes .../why3session.xml | 371 +- .../why3shapes.gz | Bin 0 -> 5406 bytes .../why3session.xml | 60 +- .../why3shapes.gz | Bin 0 -> 832 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 385 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 414 bytes .../why3session.xml | 32 +- .../why3shapes.gz | Bin 0 -> 720 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2456 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1165 bytes .../why3session.xml | 37 +- .../why3shapes.gz | Bin 0 -> 655 bytes .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 412 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 270 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 337 bytes .../why3session.xml | 63 +- .../why3shapes.gz | Bin 0 -> 832 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 684 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 529 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 2338 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 696 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 236 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 382 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 381 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1710 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3147 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1944 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2542 bytes .../why3session.xml | 234 +- .../why3shapes.gz | Bin 0 -> 3044 bytes .../why3session.xml | 359 +- .../why3shapes.gz | Bin 0 -> 3683 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 799 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 289 bytes .../why3session.xml | 33 +- .../why3shapes.gz | Bin 0 -> 454 bytes .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 371 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1158 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1790 bytes .../why3session.xml | 363 +- .../why3shapes.gz | Bin 0 -> 5104 bytes .../why3session.xml | 321 +- .../why3shapes.gz | Bin 0 -> 5837 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 569 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 271 +- .../why3shapes.gz | Bin 0 -> 4604 bytes .../why3session.xml | 277 +- .../why3shapes.gz | Bin 0 -> 4836 bytes .../why3session.xml | 367 +- .../why3shapes.gz | Bin 0 -> 5168 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 277 +- .../why3shapes.gz | Bin 0 -> 4254 bytes .../why3session.xml | 49 +- .../why3shapes.gz | Bin 0 -> 1012 bytes .../why3session.xml | 47 +- .../why3shapes.gz | Bin 0 -> 780 bytes .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 754 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1406 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 601 bytes .../why3session.xml | 172 +- .../why3shapes.gz | Bin 0 -> 3864 bytes .../why3session.xml | 49 +- .../why3shapes.gz | Bin 0 -> 974 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 320 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 332 bytes .../why3session.xml | 434 +- .../why3shapes.gz | Bin 0 -> 6445 bytes .../why3session.xml | 62 +- .../why3shapes.gz | Bin 0 -> 910 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 365 bytes .../why3session.xml | 25 +- .../why3shapes.gz | Bin 0 -> 417 bytes .../why3session.xml | 26 +- .../why3shapes.gz | Bin 0 -> 716 bytes .../why3session.xml | 158 +- .../why3shapes.gz | Bin 0 -> 2369 bytes .../why3session.xml | 93 +- .../why3shapes.gz | Bin 0 -> 1142 bytes .../why3session.xml | 39 - .../why3session.xml | 24 +- .../why3shapes.gz | Bin 0 -> 415 bytes .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 270 bytes .../why3session.xml | 18 +- .../why3shapes.gz | Bin 0 -> 335 bytes .../why3session.xml | 83 +- .../why3shapes.gz | Bin 0 -> 750 bytes .../why3session.xml | 43 +- .../why3shapes.gz | Bin 0 -> 653 bytes .../why3session.xml | 55 +- .../why3shapes.gz | Bin 0 -> 735 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 389 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 389 bytes .../why3session.xml | 313 +- .../why3shapes.gz | Bin 0 -> 3257 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 703 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 703 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 703 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 238 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 386 bytes .../why3session.xml | 105 + .../why3shapes.gz | Bin 0 -> 1698 bytes .../why3session.xml | 160 + .../why3shapes.gz | Bin 0 -> 3124 bytes .../why3session.xml | 35 +- .../why3shapes.gz | Bin 0 -> 388 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 1954 bytes .../why3session.xml | 195 +- .../why3shapes.gz | Bin 0 -> 2534 bytes .../why3session.xml | 266 +- .../why3shapes.gz | Bin 0 -> 3325 bytes .../why3session.xml | 439 +- .../why3shapes.gz | Bin 0 -> 3993 bytes .../why3session.xml | 34 +- .../why3shapes.gz | Bin 0 -> 913 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 288 bytes .../why3session.xml | 35 - .../why3session.xml | 20 +- .../why3shapes.gz | Bin 0 -> 371 bytes .../why3session.xml | 87 +- .../why3shapes.gz | Bin 0 -> 1169 bytes .../why3session.xml | 110 + .../why3shapes.gz | Bin 0 -> 1801 bytes .../why3session.xml | 653 +-- .../why3shapes.gz | Bin 0 -> 8725 bytes .../why3session.xml | 327 +- .../why3shapes.gz | Bin 0 -> 5194 bytes .../why3session.xml | 283 +- .../why3shapes.gz | Bin 0 -> 4699 bytes .../why3session.xml | 459 +- .../why3shapes.gz | Bin 0 -> 8162 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 44 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 22 +- .../why3shapes.gz | Bin 0 -> 204 bytes .../why3session.xml | 305 +- .../why3shapes.gz | Bin 0 -> 4971 bytes .../why3session.xml | 395 +- .../why3shapes.gz | Bin 0 -> 5510 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 309 +- .../why3shapes.gz | Bin 0 -> 4507 bytes .../why3session.xml | 261 +- .../why3shapes.gz | Bin 0 -> 4410 bytes .../why3session.xml | 55 - .../why3session.xml | 43 - .../why3session.xml | 48 +- .../why3shapes.gz | Bin 0 -> 704 bytes .../why3session.xml | 121 +- .../why3shapes.gz | Bin 0 -> 1419 bytes .../why3session.xml | 178 + .../why3shapes.gz | Bin 0 -> 3135 bytes .../why3session.xml | 74 + .../why3shapes.gz | Bin 0 -> 1259 bytes .../why3session.xml | 30 +- .../why3shapes.gz | Bin 0 -> 597 bytes .../why3session.xml | 204 +- .../why3shapes.gz | Bin 0 -> 4528 bytes .../why3session.xml | 55 - .../why3session.xml | 16 +- .../why3shapes.gz | Bin 0 -> 317 bytes .../why3session.xml | 34 +- .../why3shapes.gz | Bin 0 -> 506 bytes .../why3session.xml | 544 +- .../why3shapes.gz | Bin 0 -> 7859 bytes .../why3session.xml | 66 +- .../why3shapes.gz | Bin 0 -> 1060 bytes .../why3session.xml | 183 +- .../why3shapes.gz | Bin 0 -> 2866 bytes .../why3session.xml | 285 +- .../why3shapes.gz | Bin 0 -> 3757 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 703 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 695 bytes .../why3session.xml | 421 +- .../why3shapes.gz | Bin 0 -> 5467 bytes .../why3session.xml | 67 +- .../why3shapes.gz | Bin 0 -> 658 bytes .../why3session.xml | 421 +- .../why3shapes.gz | Bin 0 -> 5453 bytes .../why3session.xml | 63 +- .../why3shapes.gz | Bin 0 -> 544 bytes .../why3session.xml | 441 +- .../why3shapes.gz | Bin 0 -> 5600 bytes .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 692 bytes .../why3session.xml | 127 - .../why3session.xml | 469 +- .../why3shapes.gz | Bin 0 -> 9501 bytes .../why3session.xml | 325 +- .../why3shapes.gz | Bin 0 -> 7695 bytes .../why3session.xml | 47 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 47 +- .../why3shapes.gz | Bin 0 -> 570 bytes .../why3session.xml | 385 +- .../why3shapes.gz | Bin 0 -> 7269 bytes .../why3session.xml | 47 +- .../why3shapes.gz | Bin 0 -> 571 bytes .../why3session.xml | 241 +- .../why3shapes.gz | Bin 0 -> 5875 bytes .../why3session.xml | 47 +- .../why3shapes.gz | Bin 0 -> 564 bytes .../why3session.xml | 31 - .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 702 bytes .../why3session.xml | 47 +- .../why3shapes.gz | Bin 0 -> 572 bytes .../why3session.xml | 19 + .../why3shapes.gz | Bin 0 -> 120 bytes .../why3session.xml | 19 + .../why3shapes.gz | Bin 0 -> 120 bytes .../why3session.xml | 669 ++- .../why3shapes.gz | Bin 0 -> 9299 bytes .../why3session.xml | 134 +- .../why3shapes.gz | Bin 0 -> 1686 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 142 bytes .../why3session.xml | 209 +- .../why3shapes.gz | Bin 0 -> 3294 bytes .../why3session.xml | 269 +- .../why3shapes.gz | Bin 0 -> 3425 bytes .../why3session.xml | 717 +-- .../why3shapes.gz | Bin 0 -> 12074 bytes .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 514 bytes .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 584 bytes .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 698 bytes .../why3session.xml | 47 +- .../why3shapes.gz | Bin 0 -> 571 bytes .../why3session.xml | 19 + .../why3shapes.gz | Bin 0 -> 120 bytes .../why3session.xml | 22 + .../why3shapes.gz | Bin 0 -> 190 bytes .../why3session.xml | 652 ++- .../why3shapes.gz | Bin 0 -> 8984 bytes .../why3session.xml | 124 +- .../why3shapes.gz | Bin 0 -> 1577 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 142 bytes .../why3session.xml | 209 +- .../why3shapes.gz | Bin 0 -> 3294 bytes .../why3session.xml | 269 +- .../why3shapes.gz | Bin 0 -> 3425 bytes .../why3session.xml | 685 +-- .../why3shapes.gz | Bin 0 -> 11692 bytes .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 514 bytes .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 585 bytes .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 71 +- .../why3shapes.gz | Bin 0 -> 699 bytes .../why3session.xml | 47 +- .../why3shapes.gz | Bin 0 -> 570 bytes .../why3session.xml | 30 - .../why3session.xml | 22 + .../why3shapes.gz | Bin 0 -> 194 bytes .../why3session.xml | 22 + .../why3shapes.gz | Bin 0 -> 195 bytes .../why3session.xml | 697 +-- .../why3shapes.gz | Bin 0 -> 9389 bytes .../why3session.xml | 114 +- .../why3shapes.gz | Bin 0 -> 1584 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 142 bytes .../why3session.xml | 199 +- .../why3shapes.gz | Bin 0 -> 3304 bytes .../why3session.xml | 263 +- .../why3shapes.gz | Bin 0 -> 3425 bytes .../why3session.xml | 704 +-- .../why3shapes.gz | Bin 0 -> 12047 bytes .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 512 bytes .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 585 bytes .../why3session.xml | 31 - .../why3session.xml | 294 +- .../why3shapes.gz | Bin 0 -> 4539 bytes .../why3session.xml | 320 +- .../why3shapes.gz | Bin 0 -> 4602 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 198 +- .../why3shapes.gz | Bin 0 -> 3514 bytes .../why3session.xml | 69 +- .../why3shapes.gz | Bin 0 -> 804 bytes .../why3session.xml | 63 - .../why3session.xml | 45 - .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 270 bytes .../why3session.xml | 31 - .../why3session.xml | 253 +- .../why3shapes.gz | Bin 0 -> 3808 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 2885 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 2883 bytes .../why3session.xml | 35 - .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 194 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 194 bytes .../why3session.xml | 35 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 370 +- .../why3shapes.gz | Bin 0 -> 5659 bytes .../why3session.xml | 355 +- .../why3shapes.gz | Bin 0 -> 4905 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 432 +- .../why3shapes.gz | Bin 0 -> 6455 bytes .../why3session.xml | 355 +- .../why3shapes.gz | Bin 0 -> 4906 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 443 +- .../why3shapes.gz | Bin 0 -> 6623 bytes .../why3session.xml | 355 +- .../why3shapes.gz | Bin 0 -> 4907 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 360 +- .../why3shapes.gz | Bin 0 -> 5593 bytes .../why3session.xml | 355 +- .../why3shapes.gz | Bin 0 -> 4906 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 239 +- .../why3shapes.gz | Bin 0 -> 4138 bytes .../why3session.xml | 82 +- .../why3shapes.gz | Bin 0 -> 1255 bytes .../why3session.xml | 225 +- .../why3shapes.gz | Bin 0 -> 4008 bytes .../why3session.xml | 82 +- .../why3shapes.gz | Bin 0 -> 1253 bytes .../why3session.xml | 239 +- .../why3shapes.gz | Bin 0 -> 4129 bytes .../why3session.xml | 82 +- .../why3shapes.gz | Bin 0 -> 1253 bytes .../why3session.xml | 157 +- .../why3shapes.gz | Bin 0 -> 2968 bytes .../why3session.xml | 135 +- .../why3shapes.gz | Bin 0 -> 2540 bytes .../why3session.xml | 135 +- .../why3shapes.gz | Bin 0 -> 2533 bytes .../why3session.xml | 135 +- .../why3shapes.gz | Bin 0 -> 2537 bytes .../why3session.xml | 135 +- .../why3shapes.gz | Bin 0 -> 2538 bytes .../why3session.xml | 69 +- .../why3shapes.gz | Bin 0 -> 801 bytes .../why3session.xml | 131 +- .../why3shapes.gz | Bin 0 -> 2216 bytes .../why3session.xml | 155 +- .../why3shapes.gz | Bin 0 -> 2440 bytes .../why3session.xml | 169 + .../why3shapes.gz | Bin 0 -> 3114 bytes .../why3session.xml | 154 + .../why3shapes.gz | Bin 0 -> 2527 bytes .../why3session.xml | 113 +- .../ada___rflx__icmp__to_actual/why3shapes.gz | Bin 0 -> 211 bytes .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 193 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 194 bytes .../why3session.xml | 78 +- .../why3shapes.gz | Bin 0 -> 200 bytes .../why3session.xml | 50 +- .../why3shapes.gz | Bin 0 -> 185 bytes .../why3session.xml | 64 +- .../why3shapes.gz | Bin 0 -> 193 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 194 bytes .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../ada___rflx__icmp__to_base/why3session.xml | 101 - .../why3session.xml | 66 - .../why3session.xml | 38 - .../why3session.xml | 52 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../ada___rflx__icmp__valid/why3session.xml | 38 - .../why3session.xml | 38 - .../why3session.xml | 38 - .../why3session.xml | 38 - .../why3session.xml | 946 ++- .../why3shapes.gz | Bin 0 -> 14472 bytes .../why3session.xml | 537 +- .../why3shapes.gz | Bin 0 -> 7093 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 235 +- .../why3shapes.gz | Bin 0 -> 4031 bytes .../why3session.xml | 69 +- .../why3shapes.gz | Bin 0 -> 803 bytes .../why3session.xml | 1202 ++-- .../why3shapes.gz | Bin 0 -> 18042 bytes .../why3session.xml | 352 +- .../why3shapes.gz | Bin 0 -> 4918 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 235 +- .../why3shapes.gz | Bin 0 -> 4071 bytes .../why3session.xml | 345 +- .../why3shapes.gz | Bin 0 -> 5758 bytes .../why3session.xml | 69 +- .../why3shapes.gz | Bin 0 -> 803 bytes .../why3session.xml | 138 +- .../why3shapes.gz | Bin 0 -> 2284 bytes .../why3session.xml | 29 +- .../ada___rflx__ipv4__to_actual/why3shapes.gz | Bin 0 -> 192 bytes .../why3session.xml | 56 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 50 +- .../why3shapes.gz | Bin 0 -> 187 bytes .../why3session.xml | 35 - .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 192 bytes .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 193 bytes .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 267 bytes .../why3session.xml | 38 - .../why3session.xml | 38 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 38 - .../why3session.xml | 650 +-- .../why3shapes.gz | Bin 0 -> 10043 bytes .../why3session.xml | 537 +- .../why3shapes.gz | Bin 0 -> 7082 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 354 +- .../why3shapes.gz | Bin 0 -> 5323 bytes .../why3session.xml | 356 +- .../why3shapes.gz | Bin 0 -> 4997 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 422 +- .../why3shapes.gz | Bin 0 -> 7435 bytes .../why3session.xml | 216 +- .../why3shapes.gz | Bin 0 -> 3748 bytes .../why3session.xml | 69 +- .../why3shapes.gz | Bin 0 -> 802 bytes .../why3session.xml | 185 +- .../why3shapes.gz | Bin 0 -> 2251 bytes .../why3session.xml | 198 +- .../why3shapes.gz | Bin 0 -> 1716 bytes .../why3session.xml | 85 +- .../why3shapes.gz | Bin 0 -> 909 bytes .../why3session.xml | 38 +- .../why3shapes.gz | Bin 0 -> 601 bytes .../why3session.xml | 31 +- .../why3shapes.gz | Bin 0 -> 536 bytes .../why3session.xml | 108 +- .../why3shapes.gz | Bin 0 -> 1611 bytes .../why3session.xml | 33 - .../why3session.xml | 25 + .../why3shapes.gz | Bin 0 -> 234 bytes .../why3session.xml | 22 + .../why3shapes.gz | Bin 0 -> 189 bytes .../why3session.xml | 698 +-- .../why3shapes.gz | Bin 0 -> 9402 bytes .../why3session.xml | 128 +- .../why3shapes.gz | Bin 0 -> 1585 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 142 bytes .../why3session.xml | 209 +- .../why3shapes.gz | Bin 0 -> 3304 bytes .../why3session.xml | 269 +- .../why3shapes.gz | Bin 0 -> 3425 bytes .../why3session.xml | 704 +-- .../why3shapes.gz | Bin 0 -> 12022 bytes .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 514 bytes .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 586 bytes .../why3session.xml | 31 - .../why3session.xml | 35 - .../why3session.xml | 35 - .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 189 bytes .../why3session.xml | 57 +- .../why3shapes.gz | Bin 0 -> 189 bytes .../why3session.xml | 63 - .../why3session.xml | 45 - .../why3session.xml | 45 - .../why3session.xml | 42 +- .../why3shapes.gz | Bin 0 -> 273 bytes .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 38 - .../why3session.xml | 687 ++- .../why3shapes.gz | Bin 0 -> 10378 bytes .../why3session.xml | 307 +- .../why3shapes.gz | Bin 0 -> 4416 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 699 ++- .../why3shapes.gz | Bin 0 -> 10568 bytes .../why3session.xml | 304 +- .../why3shapes.gz | Bin 0 -> 4412 bytes .../why3session.xml | 27 - .../why3session.xml | 27 - .../why3session.xml | 377 +- .../why3shapes.gz | Bin 0 -> 5849 bytes .../why3session.xml | 971 ++-- .../why3shapes.gz | Bin 0 -> 16568 bytes .../why3session.xml | 957 ++-- .../why3shapes.gz | Bin 0 -> 15313 bytes .../why3session.xml | 925 ++- .../why3shapes.gz | Bin 0 -> 14869 bytes .../why3session.xml | 391 +- .../why3shapes.gz | Bin 0 -> 6168 bytes .../why3session.xml | 273 +- .../why3shapes.gz | Bin 0 -> 4135 bytes .../why3session.xml | 557 +- .../why3shapes.gz | Bin 0 -> 8821 bytes .../why3session.xml | 516 +- .../why3shapes.gz | Bin 0 -> 8557 bytes .../why3session.xml | 1367 ++--- .../why3shapes.gz | Bin 0 -> 24223 bytes .../why3session.xml | 910 ++- .../why3shapes.gz | Bin 0 -> 17457 bytes .../why3session.xml | 411 +- .../why3shapes.gz | Bin 0 -> 6782 bytes .../why3session.xml | 141 +- .../why3shapes.gz | Bin 0 -> 2439 bytes .../why3session.xml | 69 +- .../why3shapes.gz | Bin 0 -> 799 bytes .../why3session.xml | 50 +- .../ada___rflx__tlv__to_actual/why3shapes.gz | Bin 0 -> 187 bytes .../why3session.xml | 35 - .../ada___rflx__tlv__to_base/why3session.xml | 38 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../ada___rflx__tlv__valid/why3session.xml | 38 - .../why3session.xml | 302 +- .../why3shapes.gz | Bin 0 -> 4828 bytes .../why3session.xml | 294 +- .../why3shapes.gz | Bin 0 -> 4573 bytes .../why3session.xml | 323 +- .../why3shapes.gz | Bin 0 -> 4625 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 295 +- .../why3shapes.gz | Bin 0 -> 4581 bytes .../why3session.xml | 239 +- .../why3shapes.gz | Bin 0 -> 3806 bytes .../why3session.xml | 133 +- .../why3shapes.gz | Bin 0 -> 2274 bytes .../why3session.xml | 246 +- .../why3shapes.gz | Bin 0 -> 5401 bytes .../why3session.xml | 179 +- .../why3shapes.gz | Bin 0 -> 3281 bytes .../why3session.xml | 154 +- .../why3shapes.gz | Bin 0 -> 2718 bytes .../why3session.xml | 208 +- .../why3shapes.gz | Bin 0 -> 3607 bytes .../why3session.xml | 135 +- .../why3shapes.gz | Bin 0 -> 1901 bytes .../why3session.xml | 341 +- .../why3shapes.gz | Bin 0 -> 4762 bytes .../why3session.xml | 69 +- .../why3shapes.gz | Bin 0 -> 804 bytes .../why3session.xml | 35 - .../why3session.xml | 29 +- .../why3shapes.gz | Bin 0 -> 194 bytes .../why3session.xml | 35 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 31 - .../why3session.xml | 19 +- .../why3shapes.gz | Bin 0 -> 273 bytes .../why3session.xml | 27 - .../why3session.xml | 27 - .../why3session.xml | 27 - .../why3session.xml | 27 - .../why3session.xml | 27 - .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes .../why3session.xml | 12 +- .../why3shapes.gz | Bin 0 -> 73 bytes 3173 files changed, 107104 insertions(+), 153141 deletions(-) create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__available_space/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__byte_size/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__context/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__copy/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__equal/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_condition/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursor/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_size/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_redirect/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_time_exceeded/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_data/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_data/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_data__2/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_data__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__11/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__13/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__3/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__4/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__5/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__6/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__8/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__offset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_identifier/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_receive_timestamp/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_transmit_timestamp/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_unused_32/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__message_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__present/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset_dependent_fields/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_checksum/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_destination_unreachable/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_time_exceeded/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__10/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__12/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__7/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__9/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_identifier/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_originate_timestamp/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__structural_valid_message/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__successor/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_context/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__verify/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__verify_message/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__contains__icmp_message_in_packet_payload/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__contains__switch_to_payload/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__available_space/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__context/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__has_element/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__initialize/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__reset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__size/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__take_buffer/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__update/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__available_space/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__complete_options/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__context/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__copy/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_condition/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursor/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursorPredicate/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursors/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_destination/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_dscp/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ecn/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__11/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__9/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__offset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_df/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_mf/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_fragment_offset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ihl/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload__2/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_protocol/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ttl/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_version/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload_private/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__message_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__path_condition/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__reset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__reset__2/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__reset__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__reset_dependent_fields/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ecn/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__12/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__3/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__4/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__6/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__7/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__9/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_r/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_fragment_offset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ihl/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_protocol/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_source/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ttl/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_version/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__structural_valid_message/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__successor/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__sufficient_buffer_length/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__take_buffer/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__update_options/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_context/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_message/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_next/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__verify/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__available_space/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__byte_size/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__context/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__copy/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__equal/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_condition/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursor/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursorPredicate/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursors/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_size/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_copied/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__3/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__4/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__offset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_class/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_data/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_data/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_data__2/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_data__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_length/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_number/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data_private/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialized/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__message_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__path_condition/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__present/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset__2/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset_dependent_fields/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_copied/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__3/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__4/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__offset/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_class/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data__buffer_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data__buffer_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data_empty/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_length/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_number/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__structural_valid_message/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__successor/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__sufficient_buffer_length/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__take_buffer/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_context/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_message/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_next/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify_message/why3shapes.gz delete mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_actual/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_base/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__valid/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___basalt__strings_generic__digit/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___basalt__strings_generic__lemma_u64_le16/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___basalt__strings_generic__value_base/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___basalt__strings_generic__value_base__base_val__value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual/why3shapes.gz delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__10/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__11/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__12/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__13/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__3/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__4/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__5/why3shapes.gz delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__6/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__7/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__8/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__9/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__2/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__3/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__4/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_checksum/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_destination_unreachable/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_redirect/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_time_exceeded/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_zero/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_gateway_internet_address/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_identifier/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_pointer/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_sequence_number/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_tag/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_timestamp/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_24/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_32/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__valid/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__2/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__3/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__4/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual/why3shapes.gz delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__10/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__11/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__12/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__2/why3shapes.gz delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__3/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__4/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__5/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__6/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__7/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__8/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_base__10/why3shapes.gz delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_base__9/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_address/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_dcsp/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ecn/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_fragment_offset/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_header_checksum/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_identification/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ihl/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_protocol/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_total_length/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ttl/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_version/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual/why3shapes.gz delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual__2/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual__3/why3shapes.gz delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_base/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_class/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_length/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_number/why3session.xml delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__valid/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__left_shift/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__lemma_left_shift_limit/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__mod_pow2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3shapes.gz delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__byte_index/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__to_index/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__to_index/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__to_length/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__to_length/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract__d/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract_intermediate/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract_remaining/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3shapes.gz delete mode 100644 examples/apps/ping/proof/sessions/ada___rflx__rflx_types__unreachable_bit_length/why3session.xml create mode 100644 examples/apps/ping/proof/sessions/icmpv4__checksum__add/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__checksum__echo_request_reply_checksum/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__generate/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__generate__process_data/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__generate__set_data/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__generate__set_data__buffer_first/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__generate__set_data__buffer_last/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__get_address/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__get_address__val__char_value__value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__get_address__val__value/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__get_address__val__value__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__image/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__image__2/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__image__2__image_unsigned/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__image__3/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__image__3__img/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__ping/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive__c_recv/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__ping__socket__send/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__ping__socket__send__c_send/why3shapes.gz create mode 100644 examples/apps/ping/proof/sessions/icmpv4__print/why3shapes.gz create mode 100644 tests/spark/proof/sessions/36da430c86c15b75c2a5-__test_generating_message_sequence_independent__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/67c13e5c619e448e843c-ence__sequence_size_defined_by_message_size__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__equal/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_tag/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_value/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_value__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_value__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value_private/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__message_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__path_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__insert__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_tag/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__structural_valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__successor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__derivation__message__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__copy/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursors/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_first/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_last/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_size/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_priority/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__message_last/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__path_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_priority/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__structural_valid_message/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__successor/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__to_context/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__to_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__to_structure/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__to_structure/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_context/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_message/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__equal/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_destination/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_payload/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_payload__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_payload__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_source/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tci/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tpid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_type_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_type_length_tpid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize_payload_private/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__message_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__path_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_destination/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert__4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_source/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_tci/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_tpid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_type_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_type_length_tpid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__structural_valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__successor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__construct_payload_value/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__construct_payload_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__equal/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursors/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_first/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_last/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_size/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_first/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_last/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_payload/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_payload__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_payload__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize_payload_private/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__message_last/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__path_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__structural_valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__successor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__to_context/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__to_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__to_structure/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__to_structure/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__expression__message__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__available_space/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__byte_size/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__context/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__copy/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__equal/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__equal/why3shapes.gz rename tests/spark/proof/sessions/{ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__buffer_last => ada___ada___rflx__fixed_size__simple_message__field_cursor}/why3session.xml (54%) create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursorPredicate/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursors/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_first/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_last/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_size/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_data/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_data__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_data__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__buffer_first/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__buffer_last/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__extract/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__offset/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_message_type/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_message_type/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data_private/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data_private/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialized/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialized/why3shapes.gz rename tests/spark/proof/sessions/{ada___rflx__custom_types_tests__test_index_18_range__types__byte_index => ada___ada___rflx__fixed_size__simple_message__message_last}/why3session.xml (53%) create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__message_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__present/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset_dependent_fields/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_first/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_last/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_first/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_last/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__insert/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__offset/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_message_type/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_message_type/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__sufficient_buffer_length/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__take_buffer/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__to_context/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__to_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__to_structure/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__to_structure/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_context/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_next/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_value/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__verify/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__verify_message/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__equal/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_redirect/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_time_exceeded/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_data/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_data__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_data__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__11/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__13/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__5/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__6/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__8/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_identifier/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_receive_timestamp/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_transmit_timestamp/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_unused_32/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__message_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_checksum/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_destination_unreachable/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_time_exceeded/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__10/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__12/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__7/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__9/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_identifier/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_originate_timestamp/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__structural_valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__successor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__icmp__message__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__in_ethernet__contains__ipv4_packet_in_ethernet_frame_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__in_ethernet__contains__switch_to_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__icmp_message_in_ipv4_packet_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__udp_datagram_in_ipv4_packet_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__equal/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_copied/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_class/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_data/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_data__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_data__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_number/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data_private/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__message_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__path_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_copied/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_class/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_number/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__structural_valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__successor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__has_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__update/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__complete_options/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_destination/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_dscp/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_ecn/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__11/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__9/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_df/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_mf/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_fragment_offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_ihl/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_protocol/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_ttl/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_version/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload_private/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__message_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__path_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ecn/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__12/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__6/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__7/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__9/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_r/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_fragment_offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ihl/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_protocol/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_source/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ttl/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_version/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__structural_valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__successor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__update_options/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_actual/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_base/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__valid/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__contextPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__get_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__head/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__next__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__valid_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__contextPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__get_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__head/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__next__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__valid_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__equal/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize_payload_private/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__message_last/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__path_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload_empty/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__structural_valid_message/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__successor/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_context/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_structure/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_structure/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_context/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_message/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__contextPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__has_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__switch/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__update/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_av_enumeration_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_enumeration_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_modular_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_range_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__equal/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__message_last/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__path_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_last/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__structural_valid_message/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__successor/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_av_enumeration_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_enumeration_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_modular_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_range_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_av_enumeration_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_enumeration_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_modular_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_range_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_context/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_message/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__complete_messages/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__equal/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__message_last/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__path_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages_empty/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__structural_valid_message/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__successor/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__switch_to_messages/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__update_messages/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_context/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_message/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__append_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__append_element__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__contextPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__get_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__head/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__valid_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__contextPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__get_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__head/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__valid_element/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__complete_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__equal/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__buffer_first/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__buffer_last/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_header/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__message_last/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__path_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__buffer_first/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_header/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector_empty/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__structural_valid_message/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__successor/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__switch_to_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__update_vector/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_context/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_message/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__equal/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_tag/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_value/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_value__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_value__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize_value_private/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__message_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__path_condition/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__insert__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_tag/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__structural_valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__successor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__tlv__message__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__available_space/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__byte_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__copy/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__equal/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursor/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursorPredicate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursors/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_checksum/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_destination_port/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_source_port/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload_private/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialized/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__message_last/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__path_condition/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__present/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset_dependent_fields/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_checksum/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_destination_port/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__offset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_source_port/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__structural_valid_message/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__successor/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__sufficient_buffer_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__take_buffer/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_context/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_structure/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_structure/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_context/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_message/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_next/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__verify/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__verify_message/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_1/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13__extract_u13/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_1__extract_u1/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_62/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_62__extract_u62/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_64/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_64__extract_u64/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8__extract_u8/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_index_calculations/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13__insert_u13/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1__insert_u1/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2__insert_u2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_64/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_64__insert_u64/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__to_index/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__to_index/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__to_length/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__to_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d__es/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract_intermediate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract_remaining/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert__read/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert__write/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__unreachable_bit_length/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_index/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_index/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_length/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract__d/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract__d__es/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract_intermediate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract_remaining/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert__read/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert__write/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__unreachable_bit_length/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__insert/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__byte_index/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__to_index/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__to_index/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__to_length/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__to_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract__d/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract__d__es/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract_intermediate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract_remaining/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert__read/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert__write/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__unreachable_bit_length/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__derivation_tests__test_parsing/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__derivation_tests__write_data/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__enumeration__to_actual__2/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__enumeration__to_base/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__enumeration__to_base__2/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__enumeration__unreachable_enumeration_priority/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_generating_enumeration/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_parsing_enumeration_known/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_parsing_enumeration_unknown/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet__to_actual/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__3/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__4/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_address/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_tci/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_tpid/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_type_length/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii__get_payload_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan__get_payload_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ieee_802_3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ieee_802_3__get_payload_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_incomplete/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ethernet_ii_too_long/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ethernet_ii_too_short/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ethernet_ii_undefined_type/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ieee_802_3_invalid_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ethernet_tests__write_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__expression_tests__test_expression_invalid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__expression_tests__test_expression_valid/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_context/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_context/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_structure/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_structure/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__10/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__11/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__12/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__13/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__5/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__6/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__7/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__8/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_actual__9/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_base/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_base__2/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_base__3/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__to_base__4/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_checksum/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_destination_unreachable/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_redirect/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_time_exceeded/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_zero/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_gateway_internet_address/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_identifier/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_pointer/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_sequence_number/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_tag/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_timestamp/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_24/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_32/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__valid/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__valid__2/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__valid__3/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__icmp__valid__4/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_parsing_ipv4_in_ethernet/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__write_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_parsing_udp_in_ipv4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_parsing_udp_in_ipv4_in_ethernet/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__write_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__in_tlv_tests__test_null_in_tlv/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__10/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__11/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__12/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__13/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__14/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__15/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__2/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__3/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__4/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__5/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__6/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__7/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__8/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_base__10/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_base__13/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__to_base__9/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_address/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_dcsp/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ecn/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_fragment_offset/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_header_checksum/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_identification/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ihl/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_class/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_length/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_number/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_protocol/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_total_length/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ttl/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_version/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4__valid__12/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4_option/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__ipv4_tests__write_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__left_shift/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__lemma_left_shift_limit/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__mod_pow2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__byte_index/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__to_index/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__to_index/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__to_length/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__to_length/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract__d/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract_intermediate/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract_remaining/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__rflx_types__unreachable_bit_length/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__to_actual/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__to_actual__2/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__to_actual__3/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__to_actual__4/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__to_actual__6/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__to_base__4/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__to_base__5/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__to_base__6/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_av_enumeration/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_enumeration/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_length/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_modular_integer/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_range_integer/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence__valid__4/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload__buffer_first/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload__buffer_last/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence_independent/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence_independent_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_sequence_size_defined_by_message_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_sequence_size_defined_by_message_size_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_message_sequence_loop/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_message_sequence_sequential/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_scalar_sequence_loop/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_scalar_sequence_sequential/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_sequence_size_defined_by_message_size/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_sequence_size_defined_by_message_size_empty/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__sequence_tests__write_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv__to_actual/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__tlv__to_actual__2/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__tlv__to_base/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__tlv__unreachable_tlv_length/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__tlv__unreachable_tlv_tag/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__tlv__valid/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_zero/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_error/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_invalid_tlv_invalid_tag/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_data/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_data_zero/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_error/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset__B_1__message_read/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset__B_2__message_write/why3shapes.gz create mode 100644 tests/spark/proof/sessions/ada___rflx__tlv_tests__write_data/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__udp__to_actual/why3session.xml create mode 100644 tests/spark/proof/sessions/ada___rflx__udp__to_actual__2/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___rflx__udp__to_actual__3/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_checksum/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_length/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_port/why3session.xml rename tests/spark/proof/sessions/{ada___rflx__custom_types_tests__test_index_60_enum__types__byte_index => ada___rflx__universal__to_base__2}/why3session.xml (53%) create mode 100644 tests/spark/proof/sessions/ada___rflx__universal__to_base__2/why3shapes.gz delete mode 100644 tests/spark/proof/sessions/ada___spark__assertions__assert/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___spark__assertions__assert__2/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___spark__assertions__assert__3/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___spark__assertions__assert__4/why3session.xml delete mode 100644 tests/spark/proof/sessions/ada___spark__file_io__read_file_ptr/why3session.xml create mode 100644 tests/spark/proof/sessions/b0208039c7e9956332ad-ests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/b6a70d66b03ce3f56d8c-ence__sequence_size_defined_by_message_size__get_field_value__buffer_last/why3shapes.gz create mode 100644 tests/spark/proof/sessions/c4bede9013d7b1cb5e72-nce__sequence_size_defined_by_message_size__get_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/e1784b79eadeee9bb6f6-nce__sequence_size_defined_by_message_size__set_field_value__buffer_first/why3shapes.gz create mode 100644 tests/spark/proof/sessions/f3df9bfb562b435bd6fd-s__test_generating_message_sequence_independent__set_payload__buffer_last/why3shapes.gz diff --git a/.gitignore b/.gitignore index 14fed13e3..ec2b04524 100644 --- a/.gitignore +++ b/.gitignore @@ -13,5 +13,4 @@ dist gnatinspect.db htmlcov why3session.xml.bak -why3shapes.gz why3shapes.gz.bak diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__available_space/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__available_space/why3session.xml index 86821b9b6..b5dcdf366 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__available_space/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__available_space/why3session.xml @@ -3,38 +3,25 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__available_space/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..eb914538ae8aec5544d521187cf6e9fbe4ade72d GIT binary patch literal 364 zcmV-y0h9h8iwFP!00000|Lu{%YTPgohVOog+)F{SEXh9f8WPB{_&SVdMybH|8c7>= z-#+ptDRjx9DFkw;3__q!|NogO_sHiJmq-xTCrlC7f?;O-nT~?DIA?h|?%O-8Mk=Rw z;YOCNoFV_hO&a`xPdG=0RZeBpqq-mu`{Reb?*0$plKCd_d4d>MNVq-#-}4U-T6GQ!)Q!h8aVv}^#2$dV}KcRsZ`$PSb$@ul=tS*+}6yojaTcn zMI#@VJ2gpO|XooOaJC`NYPvv#c&)?^5SsLms@ zHWgBT2L - - + - + - + - - - + + - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__byte_size/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7d7a950662bb5ad8b5d06d46c6b2a24d7a825cb0 GIT binary patch literal 415 zcmV;Q0bu?giwFP!00000|Lv7QOC&K6h41|-}?g8d( J$R7F%0000U#x?)| literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__context/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__context/why3session.xml index e36801ca0..ad64f195c 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__context/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__context/why3session.xml @@ -3,40 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__context/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d04f2b57944ef3101ffe85bb07f0cdba05437cb9 GIT binary patch literal 714 zcmV;*0yX^~iwFP!00000|LvGfYuqpphVT9rz4cHEmaI=`3VR97AMjO-Mx%}CdUvrM zNdA50-F%RZNxNMcTH=e1EIi<^7r8f^E@wbb{pCg*Us9q4{=ZUg<0qWb-&8C+<3?D|@w!E*IVmYu5`n{HZ| zt>9Z$uS_#-jj~LuBz=|FFnr1D^~qtg4RoJV`caFYE9UQFq;6Vs1>fJ8&6U^7>`sdg zan%gzw>?u6@49~1_0Mv#p-nh=r167MWxeibot|Bw=wxM6Y;ym({dwYH9NES39r6>s zmsc$PvJmdt_ThMC#~X*UExQ8EIe3v@S%AC&DM3WT@!q*llaXU zLQf;({vXw9ag!Y=VlJSF{6G=20!3s6ikJ^5Vg{gy`G9h%-D%NO33Zt>si_8PmUrPv zGBp89$uA|pl>Emj`I=|gtODMgFTB&()aq?VlbWQ7MrNeR(Os>OU%x!EL%V)`4y|5w zI;WsId+~ors%j2WWimUBs!WcbQI*T=6sz)RKZ=RDVU;Vhm)ZS2to|yiW9P8c>Qbvq zt^WJ9`fg{DW#vWU!D?9je_g?7I`0|CWExnlPflC2Y^0tGYI+8!=~nB^s7fozn-DjAs36-ot?VidxrAX%V_+6QkUCQHh4 w!y_ - - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__copy/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a66f9a11ff83a0fdaf5da0edcef75601c04bf392 GIT binary patch literal 2446 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 - - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__equal/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6588045c1ae16bdc32feaacb5b225b97bd6e78e9 GIT binary patch literal 1141 zcmV-*1d96~iwFP!00000|LvJgZ{s!)hVS|ny%!5`_)VZG;7id3f}RRpi6J@M2vBU- zk{3yTeMhzvKqaj6)=a|QXf%d1<;R$1yoE&Q`r*5A#Zs>A7UdQ1A*VK$3@eJ2EUc|gwmTv4;%NAO( zGhFbk&)9b*t~XRD(=e&I>x$Llo>F{bO0zt-a>#`UUOjt+889%WpQ$ONxW;^Ko>Q)~$M?O3(Pr_{gpx-x(A<|w3qGW)e`Kz_(-&afKDsoB`%~j+b zs*~sQffqrT9LFh1j|;U@y-{hP>NIB6sseT8a(DAxUrjz?-LR^WxdFTjeO&b6QLprWs|L@)M}g(DUg>|S(q>gjVM@j z6;ybD4a;CYB%&f+J$h^0#ENJpFBY9dZ$NTtT}fVMmM28A-uTH1SQUWKzG&%9u11r$ zXmgT+$Z!y4vXYH4Nm*e^Q8EOengdecV2iOf86hSs)p#Q(R3NZigV`xr`A~|4qLU3f zUAoChNbpq=I8Q|r@qjvmQ*_lTHSq$RoP^3F@ - - + - - - - + + + + - + - + - - - - - - - - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_condition/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8261bb710fba14911ba309cf966785e3f3b0fb41 GIT binary patch literal 4378 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 - + - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursor/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..555d9b79898a34482477ed75cc7d46d25d726699 GIT binary patch literal 441 zcmV;q0Y?5GiwFP!00000|Lv7MZ`&{shIjpnZdv(FYRHhqsP{rEar|nCNVY)ILH+Mb zg?7;-UaTb<1Oa@ZyW{EML3adqKEM>Mo|AXcLh%FH$56skEbs`)Tdl!?zOE^Zf3%Kv znzf#M&hXo79iktdwx^VjN$Xb_PrkjJti+ ze)s|J_HgaGczA^r;ZW*_ex=$r@0VTYr@5SUeumk1Woyi>F}KG29*tSvV|*1wSDuy! zwrhNw7TdJ=w$q~HMk)e~F=C8SQaUTCs|F<DRPt%Fgh z7l6F2L8y~P1=~|hnN*>7oG>m4Q#|lskuZG?A|0qez!Jv-ql{D2*H=RTQ3l*_A8HWo j1f@X<=S)vH04L51C4(0N47WkK8pOK4bQ;TPAq)TjqL0>9 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3session.xml index 8cc1a1648..883215c4e 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3session.xml @@ -2,25 +2,17 @@ - + - + - - - - - - - - - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2e5f02648889d19398d3323110984bec643fb627 GIT binary patch literal 271 zcmV+q0r37GiwFP!00000|Lu}JZo@DPg?F8zM-XLMmWK>of^;vk60}6M0{kOLa?sqq zPK}~K(V?s2D z<%JHk;X^a(pEH0P*kTV?b zH(PGA{dJ}(I*jv$a-_NLym~T6 zv#qvdiDaWCD+V>RPjG5PE5T^%WB_Ze0c-5w^x(ic)#(;sgQVzhOfQ2Pybp#OBZCgQ V3&7q6Wz+^K@d-L38mvhK005D2f$0DM literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3session.xml index 8652ae75b..53230710c 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3session.xml @@ -2,32 +2,32 @@ - + - + - + - - + + - - + + - + - + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..794ea99524a94020092a303aad5bcd7deb873714 GIT binary patch literal 336 zcmV-W0k8faiwFP!00000|IN_7Y9lca!0}#BagU(y(H04~G1(VzJB((eM6kA(l?=(- zM=8=D*Z2@jqo3eE8Y{i9rE$lj>~s`HBq98rN8LUV8((+CYw4Zd3u0|$6XeIy?+0QZ zG|IGn-`YTFosWLe=apV*E4TOYLA4zdZPW+rwXRi_>ps4)f6!i3eMSJu*Nv`?aX*SQ zp6@SaB`K92+rV~fqtS-c`(u{2`|V=rOj|GKXT*;Gw@i)G&-v%?Jk`^9M!1T)MoQvx z2o@|?kjzjk1BmyM(jW5{RRqXdXjz=gk|KEnj&(>mC1-2liL^>OEs~?nHuI9^O%>3| zhCnuHV427&h)|0pS>~oeL - - + - - - - + + + + - + - - - - - - - - + - - - - - - + + - - + + - - - + + - - + + - - + + - + - - - - - - + + - - + + - - - + + - - + + - - + + - + - - + + - - - + + - - + + - - - + + - - + + - - - - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - - - - - - - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - + + - + - - - + + - - - + + - - + + - - - + + - - + + - - - - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - - - - - + + - - + + - - - + + - - + + - - + + - + - - - + + - - - + + - - + + - - - + + - - + + - - - - + - - - + + - - - + + - + - - - + + - - - + + - + - - - - - - - - - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - - - + - - - + + - - - + + - + - - - - - - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - + - - - + + - - - + + - + - - - - - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6f8cbde8d3a0e29a752e01873829b8639aa761ed GIT binary patch literal 7288 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 E0i`MLhyVZp literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3session.xml index e1141a747..65942dedf 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3session.xml @@ -2,46 +2,35 @@ - - + + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d880b55fe04dd05ff94ed47a3630f9fe8b75a61a GIT binary patch literal 636 zcmV-?0)zb@iwFP!00000|Ls=6PTVjMz2_@>N0mIbCy5VRiA&W=9IITdi9H5O*=(8w z1pWFtS%?-`Di8>fwtI+Hp105Q-ejLWo{<}`&nPthJNcWIw$a(xUQr*Z9j9gb(O)us zrDov$*XeNt3lq^%aK_tiys^Utb)37Ubu!~J4Z}-?xN8^QcyVl1s z?%E0}F_%skmab>dj)!5_FV&w5#o6Irsr(*d?+Kh?cf6A{jE5g5B8@xSb4UJiyS;Hr zCX8~BCzgEysAp#_d9ruUJ~Y?XMz`&(-6rXD&en#=jkoTyPfplFThcFvu8HFwF@eWt zQYPQWq`}^@4iA`Mnw|r6Vm;03C;Z0sNKg+XNU8T4^m;VN_{1C(eZDKaaKDCzaoNnr z!SzF>U&eLcj(dc!_8}YphB#Y#I^6loh7u$;R5zULBF9VW?HwKBuVv} zJie&K2fonBt0wxk5+0wix6R29{JPEefaQDAVK7|}NGn}SS0s?gTwRosq!6-nAxGf4sEs!|oy-ZZ zd;-a=*3O4eI9caK;RFh;fO6>-fJQbGNM(W%O#e1yV^ - - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_size/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a68f947e3ad3b4c647a30c1700ae76f17b89b030 GIT binary patch literal 1058 zcmV+-1l{`|iwFP!00000|LvL0ZsRr($M1ZKzCZyEzj?@^7o!1+o(f-uAvxR%aBM^N zF0yZ5QgXc7Y!*$jwgUk)V409d=J*KZ)eCT7>Z@=Ks&iSW-HG zPgA;auW_$&@2%Wp_{R7*csNd3ScCZMaxvGCr@CiOBRHM9$_<0ds-I|dY9wEmqgPRW z1CCxp_YF9D4cRx~=T*l)W5x1R`qUxQkMe6!56%ZiM%wA3HsFs7ln{nee!cb=!9 z3zdr4)dk4}uR#+m;9>F;HZ4N>OK@6(@R#Vc1l?|48OY~F!c`y3H=O!QP~OU$R^EI_ zdGlj$Kuj&h<)j6k{)%nDYQSp1dZ+9;2=oX78Q)P4eCVWg`@%(KC|0T#+#N?FL+6W(|%qgPHMu((1C7B`p27iKKn7I__ zE!P5abU7x8fHnz9+#|(e#b0McD5T**^H2{&A(Y<)ucHYjr9{O@Fefl7DoV1`#)DT< zxFD4(elvn`#Yi%pwKpM%=mnrl)@9924#H;@vJ$2kDWHwJ_#VE0kDoco&q-%qVXns<6I~jFc%}wc#)93Q`ul37sxma zJmzd7=N7E3_k}a=fIuX2ri7#g)ljvP$qV7Fku~K2%xm&8hsdo0FE!NQqt-UZD9Mk~ zK`^6BU_7ED$O5EOHfFHF35O0GjaHHgWtDRpy$?|rMN*YnVmvn@AyE$1N--)15-gP{ clmTf?vJfPX77%nE^8lLt2O9HUI7B-D0CN)lM*si- literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3session.xml index 19c34b6ab..bbaddb62a 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c85bcd5ab2a9de2f841246b34aa819b5ecd202f4 GIT binary patch literal 388 zcmV-~0ek)*iwFP!00000|J9UDZrd;rh4(r|k3bH8L@u)MCTM^x3vY?x%%~A6$%04+ z&h0D5&Z0(<+JFnR8-gSrALo4ovOXcdO*r_5BP1_3qImdTT*((VZUz9i||%GuY!t;(1*b% zHnf|n9BMi{l~q{gp|2d$~77yEYEXEECIAKLXK<(2ueoe+j6c zuMGDaMi=?+3QOOM*7^Jv&SxL6?$RRjO|k#L@)CsJ!sGq8>bru43$XgXBfI%$U%=X_ ztBd>Fzs+ZT-qcOKsn?Blh7I}Hq4VScGDOg zb8MA)7pdz+&KoPxs@9U@sK|)TL1lEg)9gX5B4~09OlVab`RL=BHMdr??T9n0yoyW{ i0CWaN)<|#>BxDLohc34{Yj1EB+2$t~dT|b11^@ue{l4u0 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3session.xml index e45002b5e..06159cfa0 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3session.xml @@ -3,42 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..504adac23db2ae915d6571e74cd6adc30dc38e48 GIT binary patch literal 399 zcmV;A0dW2wiwFP!00000|J{_kZsRZzMSFckK0$nnEK;}$HbBaSTVgabObE!7Akl&I z_o3prh_MLlg;VS{1W8<8&OLmTN1(S1yM!U-SC|vz0$2|4d)_lVz_9SKyEYB)rt%h+ z7nryKAP6BG+c^%05EAaD5O%yQ@XR5^!~+G~&&xQ6@Cw7ePEIq^wtcFC0yE>u;2Rqp zbKye?pH52^F4K_8(SKR1MfnK#Ph;tUy}00?{=L4t51XsP3U#96@G)%^! zv#sw4qmAdwI - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_redirect/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_redirect/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1ea0ec05e8a02f23d9d7d7d58ce2749b6919e643 GIT binary patch literal 387 zcmV-}0et=+iwFP!00000|J9VsYQr!PMfd)SeuAF1w8$cx&_I?YTQSy*T7zHMN=W{` zN}VhkN^ro1b~Cob)z#cH*l`PZZlS5XtJ)(B6|@n2Ji*&=AlN`X()4;M88v-8yYT~h z$^a0Yb5k8ceR8hyP48So;|TBMT&So<=MTf!4bB~*KBUclAl$QE5=0ot-wYnu_^yp~ zitg$(CgIrERh<0COSfKbVFl@i3a8~)yH7=%8waVU7O9Q5K)yqADO8ox#BVA2Zf3$C zK;4C0lo($M+4cNhT+gl`b_qrQRO~rG?`iP8*enN^FG^S3(dGXW@A_|l5NT$!JN)fG z(4&d3<2pVy^$e`HiWy^aEtTYCfRWH4mzoq=%U<}a&bShsWMMRg0z?3=EMuYc>1oRX zbP}<7A}xaAf@^~XV>) - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_time_exceeded/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_time_exceeded/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b76993f4fcf4747c0791720bac4f48f81e2b1f4a GIT binary patch literal 388 zcmV-~0ek)*iwFP!00000|J9ViPQx$^hVOj}9$`tEq&{%i1u=;u+SPJx7b>+~)n;hC zJsBGZCWJa^9Jp9%^yiQN&q~vV1A>ye{O?NL5C#uRy#L#nkqSdSF#i`4-hY zEsXgCt&5~L#b$2B?Ru6J`$K*oB}uwt`;i- zzJcgM7Oj?vLKSOZZ>kVkqID9gT&yk0no0<=$QB^L!bTL-K@(l+0?SIshmtFaK8sud iRRF31YPX`=t569(Dp0mG$D6aLEIt62E%(`k1^@sQ>AtW4 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3session.xml index a7360355e..6895a2f31 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3session.xml @@ -3,42 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..18d0c5094b5aaea6167c940b7740d6079ed0d557 GIT binary patch literal 389 zcmV;00eb!)iwFP!00000|J9VwZrd;n#_xWLJ%UJEvV7S=l$D%~yl zmDV4;XvG|uh)!dQ;6$6bBsx$v&-fB6{I*UpAMdVQZd?Aahdr2=GZ5 znWwCWOy@{z5w6QPFzg>E)3q47TgQh`TiEqcON**U*M~)8mnL|0@ns&YeHxOd+8l| zvA*@Lh|F~&WQSc82Z(5ck=oTAqe2H5#kX8USb1;iP>V+a?Jc8=7GuMndo{*~wutIV j8ry2$IopTWSXS4S)7F*5#& + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_data/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f5f292eccabf7d0d95cf18dcecab2d7f26360103 GIT binary patch literal 1695 zcmV;Q24MLgiwFP!00000|Lt2#ZyHGuzR$1NdlaeP4{3ei60IdGxvb_os(vLSVIad0 z#rx~G<^cv95+h>-PWynzJwM^qBSzeEahj!ov*iYhTr~AJEh=YrA3iw^>E_ z1k+_4F1wc^-Y?pRYWWQov1o5U!wtCkd|Jit&_rKV5TIJWHfj2^s%n3~sH*$8T*B8_ zRenBemUUQqN-|!G zw;|aj0gGl)`Zcn)gBil;U)`#nw)L!P9~NFZ)C)iD3t%Le_8ZqO_o+rqJ*?_0{j zvUI#kIsGa5gVEBC*u32g(SDEbUJ2H-Xb4-&#Ey!LqmMemu1804}7-*sW5fz1_@6%@ zUFZXmofcq_;@kjSfCA(O;18z%85@8>0Q#VNXg%uyu7dwBYyht4AmQD009gPovi{TC z;+IER1MEslMtPv*4(6$Xrh$iUmi}UWdcfAlLVvI8?Wie}M+A>;2Ae!BYEP}!M<%;w z?85bk4$ku4S^h+j#?dPiq~{^A10m((%`4WVV&~aIN!j|*!uYMFo08H!)JJ6)K0b^R zfxkc9{<5giXKy%KQnt0?kf1!V`4i;i9jZwdle39Q|IMG0@_PHnlX|^YSl!=0c+TL) zci$IPuY3a0Jz|U=@6Dg(`E>uZJjj@*(vxd)R~$;ZyrwAllPDMy?KSz&>OeMvOzP8`+%~?<`#N8|?m*D^P z2ucCiTs1KJ8evUlnuQ??!-YnXh2ea{aPz1LkCcYNa#{ZuAODpx9~k5VgM47{J`W6D ztOJvFvZt4rob+SHB%fSdio3a=xCH;t)K3(J_s;Xgxfj9dz%5bAaLYN-NfKiHU-Ta) z3mX}UG-@d&CzM5leF&FS5o-c4ZPAJpE^?a;NI??S&WJ?0NLr;Bj03HBH&sCtwLqdu z+yh9UAQZ)AfKe)>_1#STWk%ctoH-_T^NnWUlC32CBm zp-+J>m{i(?#JKV?xFmy>mRax?v`@))My819l3>a(AEY$gMO+?m=|D*mRxmWO1*726 zM-rv?ptKaT3x~cX9~6_F6)HW>FQ^mNVjfel z3L~KrFCZ`*9qFtX`YtKO1+9n)&3y<~QwUNU?=;xdS@FUvtBk_H4C9_T5d)VAQ|UQT zj>s-oR1_gv2O$NntWiOFLx?g4!K2U<6FXE^%r(U4*0jLp9ag=uODuf_{=>S7j zA$$iY>8aKo>RgBt(U=TwwoOs@E9ycgm7D{oxl2N0;)F4p3xl8uL3`+|Ob1a!3Im!j zr^?IZ5G@Iz?x~@M_kLmSF^?=UhHeQKBiA7sOkGsmN@jaxF;ZZbNOTE-YKeAACS(MU z8WV;HiOh9Yw7_g}h7ogXG;-Hcbj%CsH1l49>E~kTJ;%^x)LNQgY(V^SAElBCh~uKe p4dXAI%XyFVG?0+W!sD(8+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_data__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_data__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5f02655d8b9ecdd5d302df022b45f7329e2bbd0d GIT binary patch literal 3117 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 HJ*NNw)qCEz literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3session.xml index 75cd1cc27..46a4d8bc1 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3session.xml @@ -3,953 +3,930 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - - - + - - - + + - - + + - + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..52f4d46870c021effbfcd36aaa684b9a0b7604cf GIT binary patch literal 8588 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%0AU#ip|!x?2VplO3ScOhf=I@!A8TgNvS!W*J^7{ z%6A6kB~`DoEzX3mGeY)P-qbj+ZI zHM{vdwO+c9^Hbe=UD2tTvBAXJUE=}Qwaigw@v6oZ3sO0BQ=-S9x^=A2J5`je`j@!Qw8y_l{*{rf%zY#kln0g6SqJ(?(Nf%~|`N zItIswvF|x5Eo;!JuC=af=wszB-O5r^)~i=*anne3UcAn!^P4iXid@QQ)-;@o5mR=} zZLYfHL5vu#q?p&BLW;gr=VCUi)vmg^E~6LjzHryg8mq(YmE-Q*i{AVO5UC-mXk+m zZ7teV9HSbxJ-cpPT%%{I4Q+l|6O*UzeQ9jV+&V4^Zz874Pt#V-WNBP=>| zNnES0WBcodBoi05*Qi=UuNf%0w${l0d9XD!zO=0?Em$Ac5(^75#TAwGNCSLDsMvjK zb5vezDZ`t@8oG>SdIts-EC?^NuES)q=xB6L4K%$aBTUthc}}r(Ae|)9$TatSa5- zX7CqL&_*&Cdb%~d>XM&lfnm^DciT~B&jyLTtoUc^_7`#uv|T z)tFD!hBN1S`YWC{S7?e)d*?baF0|TK7^hQLz*yxi3fs8wK{M23Lh!oztV66Cyfw=w zn0}5TQYoStc9j&HX2FQEgjX{PS7Ya9^t5@Y15ZX)X=nRn+8l-D^i-2Et1*P}b=AcWOxJtHTf5qA6kf}t3d0m)e!;9p z&c=F>SlXz)j~P3hU7AWm)wIq)gV_}qwRLq<5*_c|M!6*rq!Uc`YM>$@U@DgQrG01x zw9jYn{8D`F*m4}THs=ZLl_ANXIBE)Oown-2Qp`Gc$3{Xy^Yo2PlZ*p(Y8Tm+UT4fA{Qo`7J( zYFAb^N5LG#XmkjlU^8~ur#7l30la~itlJg+f)a+JsYcUF2)<-AQ;Zlhlua&gR}4$m zI2a}~Fe)NC@C?ca?{Q%?(WU`>Ty&4Xl#m~16tf1K44v4vPJCkEb5vS90wNSxj+xu6 zfGO)*J+WxU88v;#=OsGdTph$L!W3RNa0}dJC4dy<{k&p8DdaxtXax#b$CnXXKxIRc zYQyPC1ii3{itWpu%UY#1USD8Yt^|P5HkB64nR7k;70;V1)NZg|8#Y7LL^8u4eMq)> zq{fV*0gdUWUqtv@h}Nk7T9H-wKqivLKJ7lZ1#PAZA4^^b<7fH-ZdUX~XFtYfg#o2N zuq?pK*APw2DZ!v#Ssmfon2q-#EbMGpTjF|-TQnipQko{p57Y;?F-OIv;W7{zu|muq zHh{~9LxoMstbSX4T5t$V5EDao`*qB$tsrO}PY!7swkzVbhy;v1cvgWTHET3B_dtjs zDU5DjF{%YY9`UN!9j;|nhUJOG$~TLlp0sb&3-+!oamS*;=GKq__L-*<)7H4A`6ME| z_llU<+vv!bG52SkH!_e5k)UGdD7zGNebEFwWAYqGgluSr*g8QH-91OSg$RqbOO4EJ zAb`Bh4kb|&&yJ*~&3lag%((MGr%lATki-#P;U8Sa{Mc_b{2*W!bn{7d#IyuuOCFd4qjU?h9^Bw%B$r1g5(T#*i>WY(0jwDubL*;hEbRLBeav60v;K!Sd9q33+U_pP+W!`+Ta&E*PiJ zij376+!u$Kq=-30Js`K2ODiC)@QV$E2= za4lL5n`R)WX1iioMzn^%kUCnHGt<|=x)Ea;<%6fsQE{m(mmIEjvjTbAjig%LcaoJ9ewt$b1QR{A)8Bn z&AI~8xfpWBg4$zVT&S0Is*Y^&w1{x}2lLbw% zvcg~ipPoljW_nsi-{)>uVpBr{6xQYk`U*B<^a^1!pI3(WmEcZPQuu3c*;%a<&h2p9 z!9Uv(OkAvw#064OGY=i~Ivp78kWxYG*3+o8Xi{BMHPTFF{1%jVbS)d3lGexpFfM88&G|pJy0hMbK?BO)Gu&Y|nDh z^JZiFuqRT4+B}+o$Q2tIYs0-O+4NHr|(vUg@-{dYl8J;re&24=?-X=_mNGz=ACApCqAfD#|`(0(bzii1RA9ciB-~}A+N3BzI5$V2XD7v6vJ3k^*xdgu1McN+Jr|F;&Z`zPKU>O zDVa1*aq~WLo7@z{#1*<4SYF*uOyKB3b~)0jn^_HJs1d4#2LV1wPBTJz8%9JRE$sNt z+M%~qszV1NBuZXQ*|FV%AqA+Gp9nix>X;{ch-nmwV-I1=Cgim77An!v1cb&Q`V>v3QlLy;QBm4z6oSG|bh&E{@j_YO#cbxT}GnvTc@yNPa3lauSVss8rZW6gF${mR$1Wr`9ZM zM}p>7_xtIv+alx4z{yoZh-=OG;2t5ZbKC1c!e@2W}Vyhh{3@v~5_xEW7dZo!U%^*G%w8 zC~8aKL`UCwy(OLWcwn`LwX-)PrkTz5LAY9NB;swu*aaI&1dzz1x*kT3Lrv$HnKr?= zpJrnhc&_*d+6TnDnIoc5c!KEqg6P{qn^Wh`_AD1YcQ&%&KujHLjF={Q67jhs@EX7_ zb~8%{k?MRms*FRT=A4M<)eN*sVq*>Jc^gJ@vyzzM9nP#|DJm9}YN}I?=4kY3vz$fA z+E7uu_(&avEk!9Nz|_dHdN={!k>0SWkx%(SqE37V>U!=d`aBR*Pq%;}5eLE=Yt1MJ z7aCqta2AU^M{>lp4I?h-Rs$(eYtw#K#0#OQqZ^R!HLqK&cX83N&0{L=M6V=r2!`aW zahYeBTFa-4rX_n+={(@*pcPfVHWpdX#-Yu)uvxFmizQB_HEQIJ>IJtc$dKG3soX%~ zZo5$K{i2@nRT9AW}YZ^^1?pVno@*%U8X?s-j9nlq zcYf0{p2dctE(x%JA?Az+ZM)#@xwAdXMbDhA__FqddaXHjH4j;_i}{#qg@o=jY&%g` zl_Vxc#NY@9Q9`~)oGzf6^nV*hXp1h5kvwoV4J*dbO%8z^eh@S7))tTiVaihg?#!6G z+g6J-7%jJX7QZ3d$7MAN>6epRYbMX`jwrB_9&Wm&oWh4sOU(wjW4|cqHCg7&d7fKz z<}|gOhGkOMUNb90?bHG*6B#VS+D!7W%Iy|{S{k9E%{a8Z=dYwuERpzT=h1}In=b^t z7~hqfFSv1ahfk0T%nk5q20CjtUkHZBOHM%qA(GAG3~Lb|^KBdgiM`u0P95xmaPSze z!>$Q~$RmU5POL8ww1VA&QE&^1w~xu0E|-tnO9CAc7>c|p2iDWE6t2Zpy;_quWRM|k z7ma3_C&i?4AT^NTri>nme&C|163Oo_YL|7MQCO2pv17h|wS`oSK$1v^XF9tL!;n;B z6UZiTB~nJ7)Z7r?&^0SQygj!_;)$_FmNt+Vsaqcr0vIHj8XGv=X*S$BL4|c5a}S3? z8X2aCdF)BPMlDr?Q#Gha-}$&NuiTGf&8wQ{_ZjN-H(Q;Agf_`%pN7)otP- z;B$S`Au*pj+p}Es%-P%;(oBFAsaozUu^9q0VU6gzx)n0%q!viD;xrvBk$I?;6G|9_ z^!W~poNpVZ7o-VTY$RT6D1ye8tpI|ZYROx(*;_KpNSO$0qOq%Ma47px>!`i1p4{hD zzmn{N#_8Y+s9BxTh=h9RpUL$}eMpD4VZ?>9DpNZ4Wk&4DAi22>H(!vfna$sZ`Guf8 zU!pa@hSmtNtf|(Sjkd-E8Ji)cu=pvDBKc?|kp+f5CH{yzdp8dcPIrn@McXQ6H3=oo zg(@eI!G6_nu-Z-#~X_)P$vCa^Qcsmc;*s?ZqweyfvflIak z5#Bd@%WhF5RQ>C5DAm~}a!oKEvH zL?U{mlD%zCmqcQwRum)TM7fX}p4JxOTP&`keb%89>c)dRqlGdu+qSWDGJG@p72 zCgWLXKetIK;vN_Em^J%a8_Q$g2l-A)=)yv7qqce> - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..431882560118688ee7478a04aedf10039397e0d0 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(aNLiLs%lsi&{EkGG$xv9XcYMgvn%vkfL@ ZrsmrW{K5>r7%2D&GMu`>(isUf0RT%x7MlP7 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3session.xml index 1ff4e1231..4bc7bb01e 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0f854c01844e769249a1771cabb31c8def6551bf GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%zjmJJ(BOuT)}jQqEFczJF0*kWL~$-~gV Z(AU${#5B<0i-CflAcNTD0Fy|d2>_bi7ry`i literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3session.xml index 3eb9edcd3..c6d05a94e 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..54d7dbdbe1334af5e18268067070aa18e9af1949 GIT binary patch literal 696 zcmV;p0!RHHiwFP!00000|LvAfPuwsN#qa(Uz4cHbdBz_9k#-O1p(+yMRP8kydu)ib z?4sQOrJugeA_Qom6%q)FdPw9XPcy&wlGr}xc@9}0vRtqDY{>nvy5!BktC82W@{i3$ z;cvX$mYd;pdPEB>Jo2MzRnE@G>wbI6=S3agcAK#bmwdoqc>Fxv^lA?v2VR!d$#}Y} z_li(=AoHh4vVrc+IeA$18(y6hK3mIuhIdaszHaRqA2chwQ2IN2&U6oQ>HnBZ|0ZvA zHlMm3?IcH2)x+cZkNat$_5&Gu2(Zu(+ArV(Ih{Xlwb6YblMl&v9-a9({w|h<$Mx6Y zgzK=`jte{-#&)v}hOC=-*{914t=)vzux9P($E$UJzP>7(emnds)4lc!cl(_exYub==wRy^4DqL^r8W88psj eswG5UNm7|2ZPzhj)gkXX8uc5BHcJKK4gdgBa#>vf literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3session.xml index acdec665a..5a60f1bf8 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..80eb3f8000521b807708c9a505c12bb76d070f92 GIT binary patch literal 705 zcmV;y0zUm8iwFP!00000|Ls>xYaBTczUx=ywucaqN~IUrht46yV0>EU+LTHqr(rx} zX4=kXfBjaE*(7G{1jBlhn9v}E`lG&w)ROvwPC2tZqxNY-R}+uZ=9YF7ZD!i`PJixh zgx=A5FL&Lgc>wFE(M%7bja*&NpT_+Mx)yWsFWU*V>6YHmYnuOz zQ1BU5eNl4ys1){Y`0+|<+KfBeTnb%n+gBp;FQ9#X-r6VhMy(uT89&Fu(GT~M8NZ#( z_+w`ExiZ!iX=*(|rXid!K*hUXN8GBu7v=N5cD1=Ee@PB+ z)(v0)R?RdTYD7$e#{Vj(<{ho(o z@)aBrAG+ss6LFNk<{k08a)$-<6Xfci5-fZtSoMAv?V9%U?_8fJ*WssH!owq5#&NV? zZ<$BI9-kh==R86H0AKLWxA+XCjv{2CI))mY6KF0) z?>)xGo?p554vlB7&XQ}AS|eMn)t892_?VDuRg^Upn!_A(s=aY)Ay}U%d-0K4%Fq-9 z#&&OWb}dQk(!?fl&1aob%A&ZaAa5|F6hnsS$!V=Xt#P+lB4EdymP%+ObJoEeI@Bh* zjBL%)bLq*2Py#3@7+^`<5GA-EwE%I94IQQg)|FNi6phWbDX@!3kEy5Jqc|yq2<*`Y z1tlZcYw@XJ?#;%ieTEQ~3>%dWUP0OP2Bm8%0bTS-s4~UeY@i%s6kLQC6Kt(&u!hhp zq(G^3WMD4I`;cg< - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__11/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__11/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3session.xml index 59dadc955..8d6001d4d 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2d6d89306763f6e16c99d3e867d393115ecb36c5 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvDgYui8&#qatQz4cH6yF2?A?1OqJ4TPMEuVQw0CJ{Jx zu$83gr|-z2NsN=0K;0y!7qKjFXWsj1C9O_zT4GVhSZ^12(U-1YT;r<8#ehp@{IlA6`cAQ5bSqq(5ne3oBNOo*cpvs#dxA$2WrL-=$5K4BTV%T5lj&aP zu1==X&DfKT=432;e9G@Wk~H*(m1*0-Ol|j{>4OS8eI~8=JE)x7-X-Sf{E!k}%?XF) z=l%@2U#*9kIqnCUltEvVi056tE?U}+{=^$j#!ENcEW69)4XwI$|ARJ@@;tY@&1Yt( z@n(2}SKfB?eOO@`W_q)M-T+tq60qhEU?uw<+BvR=|6KROwS7}txP9i8v5WTcD{}|z z?$@Ke|7f;Pp9tE2aLj3i_H&2K_Aeil+ZX-6GWn6|qM7GId7R4B+q&ZJf>A-oK;#0L - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__13/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__13/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..80eb3f8000521b807708c9a505c12bb76d070f92 GIT binary patch literal 705 zcmV;y0zUm8iwFP!00000|Ls>xYaBTczUx=ywucaqN~IUrht46yV0>EU+LTHqr(rx} zX4=kXfBjaE*(7G{1jBlhn9v}E`lG&w)ROvwPC2tZqxNY-R}+uZ=9YF7ZD!i`PJixh zgx=A5FL&Lgc>wFE(M%7bja*&NpT_+Mx)yWsFWU*V>6YHmYnuOz zQ1BU5eNl4ys1){Y`0+|<+KfBeTnb%n+gBp;FQ9#X-r6VhMy(uT89&Fu(GT~M8NZ#( z_+w`ExiZ!iX=*(|rXid!K*hUXN8GBu7v=N5cD1=Ee@PB+ z)(v0)R?RdTYD7$e#{Vj(<{ho(o z@)aBrAG+ss6LFNk<{k08a)$-<6Xfci5-fZtSoMAv?V9%U?_8fJ*WssH!owq5#&NV? zZ<$BI9-kh==R86H0AKLWxA+XCjv{2CI))mY6KF0) z?>)xGo?p554vlB7&XQ}AS|eMn)t892_?VDuRg^Upn!_A(s=aY)Ay}U%d-0K4%Fq-9 z#&&OWb}dQk(!?fl&1aob%A&ZaAa5|F6hnsS$!V=Xt#P+lB4EdymP%+ObJoEeI@Bh* zjBL%)bLq*2Py#3@7+^`<5GA-EwE%I94IQQg)|FNi6phWbDX@!3kEy5Jqc|yq2<*`Y z1tlZcYw@XJ?#;%ieTEQ~3>%dWUP0OP2Bm8%0bTS-s4~UeY@i%s6kLQC6Kt(&u!hhp zq(G^3WMD4I`;cg< - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__3/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__4/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__5/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__5/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__6/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__6/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3session.xml index 3d36f2cd0..0c2189ea4 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..80eb3f8000521b807708c9a505c12bb76d070f92 GIT binary patch literal 705 zcmV;y0zUm8iwFP!00000|Ls>xYaBTczUx=ywucaqN~IUrht46yV0>EU+LTHqr(rx} zX4=kXfBjaE*(7G{1jBlhn9v}E`lG&w)ROvwPC2tZqxNY-R}+uZ=9YF7ZD!i`PJixh zgx=A5FL&Lgc>wFE(M%7bja*&NpT_+Mx)yWsFWU*V>6YHmYnuOz zQ1BU5eNl4ys1){Y`0+|<+KfBeTnb%n+gBp;FQ9#X-r6VhMy(uT89&Fu(GT~M8NZ#( z_+w`ExiZ!iX=*(|rXid!K*hUXN8GBu7v=N5cD1=Ee@PB+ z)(v0)R?RdTYD7$e#{Vj(<{ho(o z@)aBrAG+ss6LFNk<{k08a)$-<6Xfci5-fZtSoMAv?V9%U?_8fJ*WssH!owq5#&NV? zZ<$BI9-kh==R86H0AKLWxA+XCjv{2CI))mY6KF0) z?>)xGo?p554vlB7&XQ}AS|eMn)t892_?VDuRg^Upn!_A(s=aY)Ay}U%d-0K4%Fq-9 z#&&OWb}dQk(!?fl&1aob%A&ZaAa5|F6hnsS$!V=Xt#P+lB4EdymP%+ObJoEeI@Bh* zjBL%)bLq*2Py#3@7+^`<5GA-EwE%I94IQQg)|FNi6phWbDX@!3kEy5Jqc|yq2<*`Y z1tlZcYw@XJ?#;%ieTEQ~3>%dWUP0OP2Bm8%0bTS-s4~UeY@i%s6kLQC6Kt(&u!hhp zq(G^3WMD4I`;cg< - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__8/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__8/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3session.xml index 2063cde50..88368c69f 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - + - + - - - + + - - + + - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__offset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fd5c2adc7890a8d7408c9a9cfc534c27ef3cc8e9 GIT binary patch literal 234 zcmVW z_av#D_D~Q%6UNFO4AOX7+VbUR>$-B zp?E|$=_OpvFR!0y?K!;-LzDH z%kyx&eAJJ>X}Jt1al&4$5=Ww{UT9ZdxWp_mvAuIoY-)se5+W1X;Mmt3M3H?A0%%$x kdmU8RrHaDdA`w$AuIy6qpz2bTj0Ga|4FYeXX7d980I9!mtpET3 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3session.xml index 41f4ead2c..f802f1da0 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0dc115031c94e4bd9deb8d02e8b1197df0405682 GIT binary patch literal 397 zcmV;80doEyiwFP!00000|J9T|ZsRZzg?pW1k1!Pfixh5x4Ulr-mKY9)i2zv^C^~E3 ze(AMS#0UZ#aEdg9B)oYu?<1-Dgy}HhW}q-kZ&(JLDpK9!pR!|o#Bt%%<8kSDGuJ~{ zUUB9QF<}Vdw3a;XLl|f?hp^#g!50o84?LzoyRvLc2yZy<+Q+$YTElY_R4h#I24C3F zcB;Iu;q0_D;WCdyJ^3%kX~{m}1GWxBI=%iM_oisq#z{Q$lz6J|fnKokUp%xPmCMAn zS)|fxJ_HueSBCwB*+t&F!V~wRcdlRe=h_FX+faDEDfW$QFTsd)|9C&n;;x|k3((@n zlV1Ip8`F03>S4e8Z}rtVSk+a%=`3_45 - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_identifier/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_identifier/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ece918cba1818b7ce62bd03e0c5e6a6321664ed2 GIT binary patch literal 383 zcmV-_0f7D=iwFP!00000|J9VwY63A3#_#(SeT2>b?7@SVQo&>K8fIt4Hn6TsHj2J| zW7R{YSOp91C1jE>llgu_l4n5s9##=U?6;62^cgVk;5BU+o}nB0I6Vv%uZFx2<2wvo z0T6@`j$>MOyAUF-h7eXfj_}4IEF*UmaFfP$3SkS~rYsJLX;IIMAVXq2C%BRZ*L~() z4yR0G5spI_^D+N;s22SUCQxpObPPYsz02CIc8CY=iTivu6c0fxo9T;1F~8B?H*n%)``5YF z>uH|myZT*eubB;4FG)Mmcr3A3ZL5^y*0%0RyqJnW8{O1Gl5M5eB-|2_ow7s@4M7pr zw}~8(0j;Perg94?MCFvJxs}#<#3GWF5`r`s4+5>GwqeuM2<)6~gsZJ6B2|@r!Uh_t dklAbDt@O3_q^vVWd09ld`TzsQOYLL^007KEwSWKs literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3session.xml index c2ded0b11..1260e5d17 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d68e961c68e2bff9afab2db27cae26c9dd0da07d GIT binary patch literal 395 zcmV;60d)Q!iwFP!00000|J9ViZtEZrMfd)S_X!Nf7#3Y*Q?*i;PuY&f%+Mk^j)h5; z{{5pbsZ>Q(6LP#sZc0K`kN0z_cShYn!XQ>?B?=@ z%L~oY5HTU*Y0PmvBBrpL5qGjI^el)m$;cQEdD&;gR~irX<(!4L>Zu9}WeFb!-`Irx zRODFj?6g$jGLNa8{FnD`1GJBHM|FwB=jZ0bfm2@;sLaBU|fh+YzuY>-v5Dzt^x0%epZe;34<~r z#8xp4#C=z5hbmI*MC>KHRz-H+1x2k3;FYawM#qY|t0LWS=WOg5Y;6l#Ho-uY!L_~j pT6zst)Hb?`Yz%{UUJ*I32hY(MV|(X&YgHAQ<{ye>003rYz={9> literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3session.xml index cf418bdb1..52d59de10 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..13183e53065f81ba771b37fe0d097eadc244b371 GIT binary patch literal 383 zcmV-_0f7D=iwFP!00000|J9VsYQr!PMfd)SeuCbX7FlEy8pyI_E5_2OHTZ?Bgyiq5 z)M=ri1P5Gb7Z#Sd8r^$FC~d)?J7{ZX>+T4#hAx3iCwPemgbg$!PQRC-z;;MyJHEky z1%L-@?KH;FoUE-~J6PM|IKnGh8)|I4b%!|i(b^+4hrBpM^n0?)f&>xWXMsCqT;C-; zC3~$jX5lzAb(-pr7q`xAVFmew+E3FDyAMU18^_~-oyRVH1?ubUFMi8McQdp7faoUP zqO9mru&(>}?7DXaskae_hhpDHdCP(B*=9McbWyJChAaJVVAp^3`sY5)_V(K^&Al$K z(>guW>4I@(w628rWuRbmpb8}s+M!}-I6l#5Sr8x - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_receive_timestamp/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_receive_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8c00b029c46e2fda68cd553e4b613b47ad6b4da2 GIT binary patch literal 393 zcmV;40e1c$iwFP!00000|J9VwYU3~v#_xWLeFTmE**^4;OKG9UlB*ccjJpEIF}4!Y zx8La|g(WP-fh=?{LKdICneR8qX#9gM8$0N=e$AVN&_&Og1A8}aZy!}`z*-hm= zEkALR3Xw6TbYACvIHiI?bWx+Q|sn0TSqQkuG=ah~(9Q1ISg}3HK1qElJPlGRP zXg?M?m2`1hRJcq-E@%Jcqg#UTj1Q;^D zMsx;9k7{db6`6IS#-NcN!1gw_QGkq%bzs9C1n+#OB3l__fW=ER9XVUK&ij_dQBO@{ n0Z>J*YFck=4y^V*x+q!_w4?`XVr&hl$XCArwZ+xGhz0-vd~Ls5 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3session.xml index 8e5f1cbb7..b1330474c 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b49a47c0b8e33a1e5b5011625ae41088b9d31fbf GIT binary patch literal 392 zcmV;30eAi%iwFP!00000|J9VuZtEZrh4+4nJ_0``;6)eNRISuymF;L4hI=j9jtjU- z-@dd-7mcneM@psM4FYsH%=t!89x%L4IQ9hn^n$6!sUVdDKBa~64u{Og>HE;|IG0z* ze{tppF(3dO#}tPHKu_ZgFmlfLhXG>GLjYP*-Y0+;9G1E{Ck{LDSOoAppj52sHV%r(Edb80?+96{gW6h1cH;swP$(N&RZ3`LF32&$N*(UC<|o$!J^cB%*CQ-+Eg`ZSw}9seJ%|1^@seYQ3lc literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3session.xml index 192b27d89..3809d304b 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3session.xml @@ -3,42 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ae7dce1b3442afe64c7a3bbebfbdab4363f8a425 GIT binary patch literal 382 zcmV-^0fGJ>iwFP!00000|J9ViP6HtjhVT0nJ_5r+Sq>h0X>8J?>6HvKL)~P%-Rx3R z-(Ix!V56o@YN8hcF)_QR}q;ONF`iv?3C#dtk_~c7}F0Sjhf0m!R zJJ0icRfj8RW{l!Rr&`Ul0z#hEmNb(CMum6qV5>w*MfAFfX@-qWg6OP?&MMCufs068 zCW=6{iQX$kDS7Zl8%fI5PU}Q - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_transmit_timestamp/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_transmit_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3a6c00ebef12f283888d8f2730c110bbf536d40b GIT binary patch literal 392 zcmV;30eAi%iwFP!00000|J9VuisLX4gztWeeFXj6I?N%LVFGg;aux0F)~>;JjHC?7 z+pn@oUfVT)3^>XYQM1v40W3%ONC$>j7&BiU&qKr0QcfZN zf`uCZf)K)GOmRGhFyOR=FmcZClS7CDj}-8b@;-&|3FDzoE{SO;-m9QMV!RoAVT1d* z@UeueQ?A0ij6=Ej=W|+=ZVN9^KQYkt{ZHVB%B?L#yzopsms_QhV9rwwRE8=oP}lrj zR=%$+`VU@rU7re0K9AhhV5hEYU!d$m;^m>@tGV7okvsMJJjU{=kkvh8`JE|mzQG-- z`?osg|Nb|9z5AQ8DG!~1#zqTD*$Bwaqc}$_QFwACZYL8Wp9M m=S;dm5Sc~+X6CO+zndUe58T6Tq1^@ta5W(vJ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3session.xml index 73c4e39ea..22db2b08e 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3session.xml @@ -3,42 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2be43203b33436e8259c2e762a8a935388e5f9f1 GIT binary patch literal 384 zcmV-`0e}7}-A3JPo2X(i{p~fzuO9y-%M#5)oBAp(mrJ%M?M~Ls( zQ-SCa08Z-=ngc-X+8&^#81an&LQRbaHx6+(0PL|D^I<=b-?B{>Bpk?H3~t!CU6<&P z;OrE$F!oKIPX2M~)^V}MCFT;fKkq*qzAN0^K%RQ)Jay?3Y3#;G9)$Xmk#A<^`v%ih z#E0_Yj{|l#*k0}~G3{WW{;uFZ;k;(Sx8nJ6X!%3gifgv~AHrSz-47v8Yj$_P{olDg z>s4B%yXIXeqlJ{78C8kEy+f^yHr~ooanu2y_=_$|&;4SdEZQIy3l#=g8BtneDn$-W z7O{CE6^yV>Fc&Jz?1EWT!brh5X9|&Q7Ky?sM - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_unused_32/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__get_unused_32/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..09885c7babe3952becec0cb6fadfb8801157270e GIT binary patch literal 389 zcmV;00eb!)iwFP!00000|J9ViZsQ;jhVOogJ_3Ws1`a*sQZ-VKt6b4A3|mW%V;Ni} zZ@*5H95z~Y6DccgF9^`j&-~vA%9`R~pl!##8$M|2Xeh*GPd}zv=!N<$r|EI1WIL9F z&+jx!MHI<rL=Vf!8ByQB(A}BNoUktvm z;oVSVU;NoAFTy!wP0zGk(Z%!nv*5eJ-5My$C_|K?Tq4cGoF)2N|CSNn zZp`-wOji*f$_pL`>};^n=d;gLc7BrauHb*edCdYg`sHzG;h}8xHCyDNC!`fH*Ub~WHdO@8jAT+9jjJ`;#4G_> zF{)r)T14tLkqKNo2L`P$6IyCff#YBr=ZuxOh;${CFexz{T8BEhD5-S@Lk%qh!?C8i jGHfHVZE6ckc%5Rv(4vjdB5KV?C#-$}2*-12Xa)cPdTzRf literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3session.xml index 828cd30d2..886a1205e 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3session.xml @@ -2,184 +2,169 @@ - - + + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e759444d88d973e5b39733b883de0d96a7923a47 GIT binary patch literal 1962 zcmV;b2UYkViwFP!00000|Ls~$ZyPxhz4x!!+X6cnfW>bD;{|*%HbAhag|3a_SJGHn z_DJm@*bK^kd=mgaH?>B|D!Uic1SU%r6y8^*V)!@hQ#B$2BUoh<015BJ?Y^9TtDXf8g&k6Cl`NFQ3LsCS#d>#Qvr&?6kh?$vUR5 zGxHZ@5hl{ekJ!Uh(0?xIj{v!kn7idYLY0SKQ2dpNH^Ibr((MC8mGZNud|-D* ztX8Jao9V)_0pqN8V02~stl7T6>zhdAh1%HfgKC1hZpzP_>Hg!^c@m!ieCYZ@I93!1#^JDhj_+c{o)xTBa*5zzSdVa4{5MHjAb+x9xG zR`@9mIrZsl-wt(C9N9+~aHx;_A}-OeM=$(PFa9p)wA=)=F4W`wZGzjhTJiW9SL?5z z1M}(8=!VykF1XrLDELoP3jV94;xBZBJRAs3?3&$Loq;YTfMuF_NBaa7KyS6~DuZ8~#33 zt~LrYQCBvCQd)f2EKqBvdEAVvP5WQqkW0IuyLJjFK? zm2py?oIoTVS4VgC;kal9FZO=9G3!MD^z-{gFng~8psN~IHLPklqK2o`04}ah)@Pg_ zqbH9c!5}Dnvwwvj{L|epXl5`%-aFxy~oqI^3OYC(j(VS|lyT)FfheAw#%3+Ua z#!-nlu|iaVr~>h%-;Nf6oocHRP$i&Bz`K!vhq`zQ{nSqSuHw!^PbNS8v(sC5R8FSS z@tmF%FaVQs{PG zSef)*LF1y;3<4J>Yb{(3JUW!ZVpdUmp8f{^5~_)cXF!=*R!S$(=#*tfp~vhjMnzVv z@rFFO3#I14Oj>%I2I@_^hFBi_W2K^T=l$(&Nml36A-7^bzv6kM5aKTlRBle6R& zjS0buAQfaKobfpbftHM9V?jvf0;R;Qh#{tEJRqmoqa?S2jMRRf_JSY_a8YJQO9x#D zt&IlfrDjQKtum02ZkYBiu;4_pUMCSeP`WX5Pf2DLH5r-xJpJV9nBvBJ0oHlV8JEub z=)7fGz-W5_PBWGGM$(fU6%u|t&H45o;$TESGlG+DL82~iWM$9sXVk?+b3`Dd7y!04cz!Ey} zJ$*R_UdKcUIIbgbCKMH`HQ6~&*SuJXCNfX`8$2<>y!R*+5+h6ySUEX1L@yi4NFbGL z2-1L-A<4{>kC}=Xr4zYWsm3@KY!r;Xi$>~*Iy!@tP%@g6hhjy==S7k#sfdJFf~Z8M zy9n1D4E2a9R;B?i6xECd%85!R2^Va_kPY)z8&#kODjFs&cbZrcBC8Z=)<7gF>Nz9@ z7;fMQk?`OZIVH#gvmLAF6AV2 z0Od>NaNT&yozzS-6rM{aJ#&_4joH%-ltr;Jds-<+ts-f=>oO%3P*VM&4uUx?MD(#( z*~ZyqsKSVJNimZf6wWD=skkMzOX)LC4Dn3mL_J9Pb8mRc45`2*`K79N!)n5sxwAXE-NS w<^&q`F+~bOmmU(LLE5>CV1$jHA(f;C?u3)Vqbv(SK~>1+|5JBakKI}T09%a7$^ZZW literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3session.xml index f372f678f..cf50a25c8 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3session.xml @@ -3,203 +3,185 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4e489b8889698992050d4a551b2cad75a134e100 GIT binary patch literal 2568 zcmV+j3itINiwFP!00000|LvU1ZsR%RqkEoyin8O_X~pp+mrlZsBU2PvtorLCDNE@t++@-&CRf+rQ>4Rry7~Lnf5$Lp z7cTysxvMrz+SzwEZ{4hOQ@7~cf9BtkJ9pDXS{{~Wdm-Pl zdUe4smz|B(n4g!wa*XHaO}e`2eohu&-A!uTJcY@`mElk3dHQ4Z>A$tpuANP~pEqeS znfRX_{kiGplgZ6>JL}SX^4(3pCHgwwbX{*eb=0nmm|b_?`RnWHB>i=-7JZ$4n@(@r z`QTGzl4x~cO9R(tLwNlbs66(>?-UxEbMMiK|YHf z_noBg1o>Qggm)mwz1IN0`I_N*b}2o#dm0nRM@Ms;Cjz*KlaxOD$37Fw{8>Ozh~KmD6{f;V(_!zS2r_H+wwy1mdqrAo1!1I@W?ppcf$! z9EG4k9+=%c&_g^>kMTg?=Ya~Fnp}4el}D9Fl}9hdqagsG*qMOH$B1KuF|wgdw7(#! zOC=yBN|%@ObV=VQG3ALsg#;VQ_l-P7zU6@P%~M;!*-B0m$zYP&`OL+#=wx4Fe2>MQJFQyEhk^ZPQUhrnq!xhexH11baFIs=X!WzGJY{WbgFaQ63yJp$NqZmtBV z1gHdf^91NF9{s(tCUQ;Wn#jL-B0t9s!^S=MA5v)DAp0)QFWT;eRmA9&O~~l%`MG@MzUF()_nPk?A>WV6&gKpg|E5E}ZXWe+#rKaZquMR}eRY3cN%eH3 zf>TgcNmWVpV0Num6qO8>43!L(3|nNl8zcdO(!Vs#w=#9Fw|Q^xTdW_9-hNJci358~ zvs;f_54CDed-Zs*&8I-+-n)m&%DUfsHC8VF?Zy*4?MU?C^8Dn+mJfJSTVm5;$0@or z!_QAdWZ%jX*aghfHjX(2a$o=I$GuWHSSkif`Cusymcn2u8!EL!g=VNw4;2oMYj9YD zqZ%C4@R-(x?z?NJ&QBAm)P=M>`H6IYTGUR}PXABdRuBGD+N{cpam!Z#&Rjp1$&9Yr z9?+3?-`QCn@W_;Zgy!n)`n}WSI1eGP8{9T<)#UD9T}A^x%)-uJW=Gv<<8h8tP2GN;<3vwB%L5(td5)KPo}+1^ z1VU66CIx|-TT1|P8kN*K*o^US@K0_V#*~bP*(8m$I(QzD`J@~MrgRLNYO%&eOEr`L zE@L(+ijX;oBpD!AA^}yxMoH=lqqZhFo>j6cL1c+~&m!l*OMm;dq`BtaGvv}LqcI3; zjERf|rj1Z&sFG-$6+$QOL-JhvAVJD3bk5cp1x9D8B%iP)1)58*Mb_3c4ahV~&{=tF zXyTBHDyfEPYhBVHNpK82%bEuUkuw8cI_{~Ge!`XIJb0Upaxz&u@*z9#5}4v~ z(@5cTV4gEb#v5yy;xTD%n2yOus8aV_X`hAo!TGm!%f&+15wsk@AF6&L?4_ z5`j?=I8%lc;ze@Ngi?z)$#Bn!d0Og#PB4psA|5DDo!1<U)xIk)o(7YK2K#Oe_X! ziA5f`%C6)*$UWQ2!7v%M_s$xrh!fsgsa4WST9<9f9Z(H$B_SlI&<7G7)uCf8t&Q5* ztP4LtHw>kX7AWm?wjm`aIE_@Z{+GJKauq?)0+Cpe(ot8Zc8$ly_ zVpfoWxa4VSkdB~KYGFe&w<)uQSIm=>h*ykSQ69bHDkV{B5!!@{nsLh$^$}=UrnLz= zM;fG4Jf~7iG$0}+ok9x`Vv`C7T%L0 zAR!Htz|FN}Bn=17C$6#g7x|uM39SP0T3QMwsYfy%j8DKLA*0yEdrmma(LfR?jCDF` zQ(%&VB_OAwXbyYUVv-VuVnibIlo$a#mZ`=2tP~fjc$Fi0H92Gy0Fu0yXhJ60lXkM@ zjD%9G=e#kV3r`1yxo#^*z#j zpc1i|F4Ckwn=_`Il_j?cNK#;#G`MOkP(ss`Ncv)iQ8$SuA?>)4NZ@C^UAoapP_~c~ en9!cN5b3K0t2m>pJS#Nerujd_)VX<&g#ZAYviZ^g literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3session.xml index e3469e63b..1918e08e7 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3session.xml @@ -3,244 +3,184 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - - + + - + - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - + - + - + - + - - + + - - + + - - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b661a4a766c877c6384e7ea45b5096e9af0e905d GIT binary patch literal 3163 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3session.xml index df6ecf5cc..b8721185a 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3session.xml @@ -3,2876 +3,212 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - - - + + - - - + + - + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e4cfc4a9eb2a1333b2ee14675a09125a0482b2f5 GIT binary patch literal 3822 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3session.xml index f4c13261c..a7e4c014e 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3session.xml @@ -2,95 +2,87 @@ - + - + - + - - - - - - + + - - + + - - - - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a88f1ddfbeac982f98f2152ce79e9d626163fd67 GIT binary patch literal 1543 zcmV+i2Kf0OiwFP!00000|LvSjZ`(K!hVS|ndtVgb@SBGod}y%+itT0Lt1$d(1vnqI z-J<>XJCqa0apW}V#@Mmj91P1Gk6z8Zd_qM;*6;8&uCMxKxyEHleUBOY+t+1XeCzum zU0nD5MOm%zW9j>Jb-6Cz)_0#QaJ8oB)%9Xn_jM?Xyu!5pHix%&x#79V>#*F(nuk?d zZn6r>n!jJ-#gO{p@+&R}yj-^t{Ac;4;9Fd*%I0l*>B`0R`g_0ngx94bHD7Tt0Kf*Poh{JgkSS%elUZoNW_aFH0_oL|-kpqo21a#*82SrenZY zbCKZvaHH$)^eu$GxD7e;Hc&B=PokAs4|_ki*PXvyTztnrpDA^`(ms7zQZM?+B77|C z=U(eH6!=wDyNQHd`J8900OB)_oJapi@EIs8jzHblkC_lH`t!CQ(lR zwdx=?tj+IV8nKq-vDHD{G!~Zxx5Q*5QoSO@I-XC6fePU?rhLW@i(X1 zm{aYUQyw;_y7#wpzSm~>quHD>nk_#xa|eb=np?@HB#w^NdyZ9y9jmv)yvuL-^V*&< zuN^;La|eb^hFi&|B#w?XdydtI9c#A3yvy(S^V*#;uRT9ra|eb?mRrfDB#w@?dyX}S z9c#D4yvy(T^V**=uLD0`a|eb`j$6s5B#w@Cdych-9qYEkyvrZ>^E#X{uR-twHg{r# zO5$i)zh_x@*s^{*%)9(#S@y&pHJ&T70r)YSJ2S`-fm_WcHIAkYd#3e=O&hku z%o_mwsXb~uTWm{y*k(@+NHi>VDNW&?oO^KE!!2Y}d)GjD=C0d&iAMz=a5y4fQ@ zCSdoNd0ONK0sEVP;IUmma2LS54eAs~tj?Uo`bZ>Z4*_Z{yGO^4K`{}f=~gkOaN>>F`B5_A@% z&VX2Bf#A^Fs+^_8mCMD%V9FoxmlR!&sAE+^IYUaS&=y@5K}4^j0i`HPbgqc3YK=nI zkd;CKR(k1Nk;&)~d`s1p>IFs_0%#Mo^ciK2ReA$PRI3aHsm?%_8Zp;`&e)Kwi0GW4 zkBtu|w$tfOMfB0dkPO90ABu=ET5wT?kkKIpnaMhJ%ylNh6P2cTupF}Y$xs3`?OABf;|j3JmBTa@XFZU1U5DIcg5 z7KF1R)5=>LuaVB)ss*+q#M8-?st%NKIu}7E^sbgtsY9W42V7^gK;xX2;F~z|rcPQ> tUsG|}!aE - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__message_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..99508a894d4ab6c5be5943a651031986d5017667 GIT binary patch literal 291 zcmV+;0o?u{iwFP!00000|J9MbZo@DPgm*thA3?HyJ!HsIG(ga)$V!|fsxe?Yj;$2Q z+t+E3plh~vAqe6l?+z?m#B$ysT?X`Rq;~ki)M6;tF+Qdf;}zY^xAs~p?#FVWd5@7R ztgy#S;gmB^kChEpJ9+Eg7a|-E9q|zpMO*HS94SbFViWS3mDet|@#>V}O~QCJBZ8sS}Nv=>JD pY#hh1Ky{^zu5+lR^HIVlCnAiFut`{0ZLvVA`UZFeyhSVn003hAiLL+u literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3session.xml index 6aa2c6538..1e8791c25 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3session.xml @@ -3,332 +3,279 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - - - - - - - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a4747eb75e2625bc7a714c93c2b32b31a0856252 GIT binary patch literal 4367 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�gB7tkP1r3rj$7wx=IctEoxI|%0XmeM42(|0waNB6sOlxL$NW*ngZNpxXD?(B~Tfh z43&iAHR{1T07eUzKpa3-dLE@Tz+gZ*pzP`@Gr*M;4YDp6AxIdB6vssrWfHPPSFZ{? zxMV7UQ2kMHL+PQ(5w=b0bdp#xTyueMuAu(h#OaBULtJ9NaaMUJjND$znxzUT46~@ls=15JKeKSZPuX zEHdYVjOa^>XP(Fc{eWd6GS-crka`G(!z(WFQiOv!0eQ@Vw*{OiE>)UH0~X@C5lKSz zE2~`r&Ja!|L5?g{s;lfEgmT=0xX#H8(4k?VoD}LE25M8|DBa*eKdUPfz;Tbb1jW%I zP<{@v7u8>i4G|PV6(KQe9a)85##_@M27yCJ%*NIRWZVvT929yjsnJyBFG>I1NSVUAXz~tl8mF>*HwJr z3Ty%0fVIjb@<~`{kQpdJ*io6IG2oy*fvvSZFdxa3F#~zoZ$ zVcJ2}k^)zmk4z`e>osbLu`4O8oCo>-X7rBi24oxI6 z3{8Tmm@EN9brpEeA`pX;M=xba4E&9*fj89()7cnpZO~yrE8{bM&ghcxHo%uOBA{mi z-=p>5y{~nQ0g4*KLfQ=iX#zwiH0=U*!ZhzuNTn#eEpoGtRcw%| zb_1gXhfk0;NQPWgag{}AeBdGujY3G8G=`M8VMi zY9}?!Xp{@4FwA@7DluRTDvB`Mmt?_H^kxiRj7q|!1H#mdHgW*=;AW(%le*FdwT_EtIR?y8!qkq41a@dp8VxrF(9r{*5oE2a zFy}Cg(h?VCc=Zy7WL%8MNE(Tx%A@smK(F+{z=4>mFc5)=0+R=F5|g!6akSnI{|D;t J-5J6^0RX4Fa`ylL literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__present/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__present/why3session.xml index 02589ee35..8327ff492 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__present/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__present/why3session.xml @@ -2,30 +2,22 @@ - + - + - + - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__present/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..33fedb96f958b47aee62f9f3e814a7032f853cfd GIT binary patch literal 371 zcmV-(0gV11iwFP!00000|Lv5)N&_(vhVT0nK0=aBHrYcDy%dFl7ujo=&CF_Gw_TI8 zv~O=(+k#S1(FzqW!w`P{`6u~En!_U{2;{5<1beKZ>o?YVH;mQ}6k}Fd>z0c|o0OYX zh|3VOFpj-Xw)50u1eZ3@^>_!kUBKX-^@}wG4~w)rhKH~sm_Z-uwcV97TE6!=CoX6h z)7Hi(7^#2{zjqT{PXbUqxBxCjs5d9EF;@0@ufnsW9_=<*A(`=h@9 z@Ln0b(<}J2{{s2bbXDvZQVB!4G#WLQvO;B?ZK+ijA=akWl0hpf z6m4#5WZF=hMXX?Twn15Pp*Ujp00448uPgun literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset/why3session.xml index 0c1d32ac9..219f7384b 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset/why3session.xml @@ -3,100 +3,73 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - - + + - + - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..51de2c57b9dcddf7a37e61dfa8238d30ca4405f9 GIT binary patch literal 1184 zcmV;R1Yi3fiwFP!00000|Lt1KZtFG>-Rmp5>!Jw2;hT#tyfGT!E(>ji;VW0Dow%}c zanr9aB`2wqu)emXyjpH#XFNQb8O}MRsPvcU@2+v(x~9GUhFy!-JvL1jHb1ZbsG%nK zdv_afiK}hceH|{B_-oB-SPq}GCd*|N)|>vW*?z@MsQP5a{$>EdF1V&apCIqAU0i){ zn%1p1O|uT$EnbDDaW~g}_}({-y^S$+O>DbupYE=flc82PBFQ}@I2Gz49I*#NPX)OT zgpU|saeE)&%VN(oBabMXF8J1AA8H_99+A?Q?Pk^Xjc>QE+YZ>~(H7gV@}o_ozg@5I zc30Sa(0{5>8%OsmTWbeuN|g>Yz`0nN4q$V10H3=9;HVaWi9Ns$_5jdK69D|63xGar z0{};smoIM*r3Xt7*1*5)DcZ{!KQ*Zb%a|NFZ;H~mJ`4`SsH>|kT&2GoA7aC)A&EAr zbMp)WCNMFolqoTUQUHB}#G zQw{1&N+h8qQ2Xj1$!8qMT1OEpaNS})!dt(u#&s2~-SHY8& z;(!XCi#1Gm)$cb`4Q8ZB?uqJMv>;D_B3mDu=|#3am2Ay;_)7U~r>~UF!5&JdY!@Fw z*%5izd97MsQ{q658?41MtH@e;*2=P0nzcgKN^(|{GwPgC<&4?9vT0?r$|jZ1>CuSa zuw9{Dh19O-!tTdk@M7AeO>7(oLul(8k0X2T%|mET?|vIIX|B_tr|Fy-^%FTu3-HC{ z1pXWg-u7(@^sg`!eT*@)-dF$n@B!xWL85F5%BG-f3jUj$f@-Gqe-02<#AdSCKvr!| zUXzO2e2ipXUu`A}z>`ha6pTXuLjOYlH{WcWF96e){<7x3F6j&B3+In|z&Kw3CN2GC z%`fK*h5qkP|K<1yuy9k|$X)sbrDm2FA zM2~Z#iknEHrO1r6nrNXo)j>G~D+v$DiB-W89f;LBO0PV%ToaM3qM{HP literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3session.xml new file mode 100644 index 000000000..98bb7237d --- /dev/null +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3session.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1493b3154e1dc5ce99f0791d474fb46c8d1a6f03 GIT binary patch literal 1821 zcmV+&2jci2iwFP!00000|Lt5!Z`;TczVlbS+Z=)bUA;FjKKLTM0fIR_=t@*?8DeBv zp=cw1zkZ68tXK|ZTcWZk(=ec=y1Kg7kHu!of8tfJf&GE;VTm_QsGH?Iwhb;jT;RIH z|Fw4sXSi6W&By*_gc&e5?c3Qo)^(d!zuo*jhdDbi>uN6MFzes>oXuucx>Tm_(Hfa|aIC8jYQKlFMu%a}gT)pv*p92F9N zTu8)8A?ZK5odfM*2fEiBXiIc|zUcl*2K(FFMV&sKW-+Z**UP)bqF&uLG|~=BeIl`c z;d;ySwQ41+e(9_lxz@B?_=EEShVgUx31IYc*K+=X3TzlZTN(iy4_3?BVI|x!{6z;i zR*9_x+}PS2TX2Whw!`q3wfV7YKU!|boe%c#+GZF&SNP2V1ZwA4DaaKDpnrK&B(0I2U97vBKw}GF@3Rb(2t=bfu zfL)q{{IJ6x`mkOtny!w`I<)Hnk;IOeo3w}+ z=;y$o!qaltEe{2l3NRI5`fk89h5#I1s=#TNbZPrEi|@Cc9~?lrCnyVFI~hiC7G4Ef{v2t=L8Rq- zNIR~>2-d=@V9TGQtvDOn9$o0)0Bujz;U~U%9d;rybTl8kt{tYWyB3>eiqCd03Q81| zC@AqOqeRv3HL?>ss)8d0M+%NyHjeZFKxuYTgHh_g)PJe}%dY>c?W5~b$EA)-9ba%A zpX+{r#@F@D?R|>7!1q-phEoY6!9I4CN6O%D_9VHU$k|93Uj1FO=$d8SJ*?829QDxA z+p32tQuFC)nK|bhe;g}kJHNii#a-&99BELvYuC5!dd_AaPDPkMnr=cHc0J`D?z+3~ z3jF`<@Xvn?{BI5|e#5FSMSr11Khg`7s{ci*ey{1{{aNx|Bf!<1%K;PAPnZCklaum0 z=fSLWMg=7Qg`H7#u9M;fDuSKqaAprsZZ_d2Xr~glQ;uEjlo<}eV}B2~XyTmf0GqS! z*UzYGlqyH5VwB29sW3`qV^lXrv|~gwMjW+k)T~jfMvWS`X-C9+Y!>JjiIN&a+6=y< zOYF3$P0gMDT<_y~V5+i5x_N(GZH6qC-p$1@oO_Petw zLJ9;F2q+M6Nf5AW03Ls$Udp$WZz8vFf?j4U@>6|43SKj^y{>x>Rb7lxq z2c|sJ0;Lts>L6HR-029!#oopg1S0976pxHYm%J4jgES~0Dpa9guVTQxbU|q@1yhW1 z7I*^hQnD<|sEJ8bDv_4aqERe!#cYJElgk_dYzAkDNmj-?Fpl)Foco+Z7G800Icm>P z%brQSjVaNP@YaF%(io1)d1W!^;Jq+Wd1BI}lT$g$?6S5Ydn7SgA#+BUWTKPAWGbUf zvqmLMb#niCVSH*z`9QrT#^(FP1lPFfoTMaKyr!1vJusI&^2bW#?wx6EsBHYNsH zF(4xbF95HI7=n|*8K3RdYPLuMfxuCt3w)9Q-MO`JUH z_27FBm82k31QVm{IU}bgfuP8D6nNR^S - - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset_dependent_fields/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3d0ef1a9ea8f218aaded5e39df21656f4f511d73 GIT binary patch literal 54767 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

A_Z^(kq5AjdcaE|2rK|Z zFOP(Vl5b^m$6)?qVH$oatDd~I_0NqE27r<*zyhEH;~OBJ0l>L~j&NWj0)}{W?;dG* zk1NL7;HIG{2=o+v%7}vCs>}V8p@ZzTz3W5-Dv%hddy1xZw*))J z(W9vdRRH^+5D?>17B(u<6J1(L2vjRb1Vti4S%Dgi0D$O-63QZW4@LU~B%R5|@A>lj zNftB|hL#xs=WQra9oeKu1GJ7D zO#X-Y`kv^7f0?fcFt%cY&wH?zKvKPJ6^X-`ED}=a`heJDvcRKiAZ*y3iP87ZWQN?y zH<*f($mR7NP-lDyi^u?D+>tuU!Zx1aB6RL?31ampJX&8ls{h$Dmn4+)C41MC+AL3~SP_^3fIJ^(|i8dU2_h=D?OivXer ztpMc_BL<6@Ql``&ke87f#(B|p-ZE4X2d&@$Vfi`Yj|by2ND7I$d(60%3__BP_gB-Jw$n3;`<21v|TUPd=krAGigDv(SnSuhp=eEngbi);BSMQB?_Q)G=w+~FE%}dpsRRAjl8-(prb}t zdu|e#n{_)JxhvR=vEwD<92L2SptGwJo<${1!EENzyVDyxdP~~Lc zkqEGm^2LAzawJOrn;M|XgTzB86+H^c6vShMm?H5W#4>FOLC}iF*#6X%{l=7?>7f7! zf<6m=&qgjU{E0k5y>n0{j$!+1KtWV=@UuIBfv%|z1Eivx4!8?w6Edfktco_SfTJ_u zIBO)~gccaoAP6<@zuj>sP@) zL+l}OfaHA#0oo#djgtBos>=Qg3FQBULy!K2QHuXU)u;c3pxA=zm;&UZ4`mP*WJho> zXWShwkz^K}BkwVL;uH|_^m8IHd+spzSUt*CT=&?$od3a*|H143 zL3WIPXrt8^62k~gK`-= zsfZa|kaE4jtaxpy(Y;aO03C-S*%m<8s~Yt$B#8YN4#oWoqZ0pxs-OOa1Zn@mq0j$? z*wI-4Jx4bgT2q*gkD9W`+~Up2G|}3oM{N=4B_;TJ70W!@$lwXrf0{D{=FFkxQU`I) zJ%Y`B`lL~cfE75Bk~{u1Q)mT~XSS)lK;6Vs!Ej$7ag4Q;oK8D?u^r=G;sdhD8!cjY z$Z*+Xo;acn36UKmjI4)64BgZ)5nV8jDG4pwI6k5w1;GTc3DAAf=(Ei>+ zZsG_1q{4P&j5|U?9yl2-#DhD`So_JHwuzJ82d#hEblLQW0r%o+K}5g`D`H6%CAEry z0K!rM|5WHn1PuUUYy-!xJPM4XjNwQ^20wdX^)ydx4q#k^v!U}Ir8)ydzrsn80MVC7 zDFExT^Uk9D$YTJ4u2;~OI><7R2$1)60;7+WpRfR?7BLX|IO7gQ#u%mnP$ZGvb1bpw@ z+9r;9@3KuHoi7 zIHq*8>PvFuN8YmX^8Vy7Ofq+MSlf^+68sAD|1g2{|FEjW|8SJ(|L~B||1g2TzgS+4 z7YTV4ib?DK0uxNg|35q|@Gs8Eht!5Tsw{&r>Bm9CsaW}OWJ`z%^l7=X(ZU#-OB4Uc zB~iluSs!+fTXrxIQGp}FtM|q zOTiLfor@a=Elt;0PMHA!RTS7cgGHgaRz;)7RBbj8Nrk5yaEIdwJ$S~fh09Dh1B zUv25~ie0zSHqv`~V&ySe7ahyz4uyEhucsTibNe_|^Ubyf-_mF7UFxQ-W-QKmVqAzBu&$Gs^G|2*fwn+OSg z2gD5~59+HJ=Ra^5&cK~?Yi%BImU(5hHQknzoGI&T?e`;gtO`XKnPl6}=`#p(RWhQ2S3Nx5^JkJnXO8nJ5RIo+&ht!GQte)ZZGUxgYxT~&P? zzW-9I{(H5q!1x5EbqS%C+In?qf){^+bzf4kkXH6Hl>_C2FjKmZ`_H$x z+Bsuq=DQ{uU+KQKH52tdx1T#v-`6<*%D8_U`@-rX=Ub%H->;FnD+k;4ekJu8TJ=@d zGi)dKswFS9_9v1oMY`%`sk>}#rn?FYKELatW9--0XjrV_-kH&V3lFK%4bHQ*^$IpU z&T+kz=TT6p80Q_YW*4H;7ka1NvS)qax36J8e`qie?xN;U==LRkrqMRF?{T_F!`rLT z${$SgHflV#q75pVV!`pcGG=j@kjLZrOBG`p%+n%nyOV?Pd_P&~Ic zD7w1b*NCEV%d7uh6<0E|_hL1`Zgr*4x`N4#XMT88jR)sl<@`(=x2R0 zd}7{ofrxd2``a82w`qg9(Tavqdrr&%uPWMU`{g=#xpd#BpS4v-_wI|giad|$$D_mI zJ&11Y;x}+@(U2Y=wBHQ-(I>6`HL2X?SYN3ot>~)#Mf|+On3_tNbBs3k!Mk0aI$!=T z{0H9}GO8--^-24h&R-}k4^@k3U5vV3dty<|!R9XEpTWe$!{q1vgE;pSskI=h=XlC(m zHIi)El3s89EG2qfcbjyX4%iy19*$CN(yJysTx|NX#v@N-mGZemIX7W6*NNxFTH-g{ zl|IU>8k1d=wIMe5=e|gh;481>wxNIr`j;xs12D^M>*l zlLI%;FG_;H&Q4KHgeKOb?V`T-+?uB5 z;Op7gP4GK;iNJ(uVO6b*7q}Od-|W|uMOw?E#?!Cb$HZv#o|d_aw}yu^tl#G2_MsKS z)aF95xA^@`Ph|Mc`7m2u()VuNN0* z_brc#dtR%oEiszY;L>%I_0`SZs-`q)-dRZPz#+3(FX}#?#=7d1L{T~>!6`gRU!yS1 zX~98{m8FQeOWHXpon!yD1Gi>Ce`e`zgNSvcvhy56SfVK0_pj_5i$uGxQKqwh=Ra5m zAY7dhVYi}8n?gfAhm(Q|3d`EfpxzHv&t975n3OGl>R$P{Fe>-;drHgI*W|-pl5}K1 zsgAIk(c`ZOfp}G&1m9sF5N7K;_foIrLQ#5G=Vx@vI)x+U46-q7|e$7uecEvWLx@#xfKK>3dWnxkqHNo z-~qK+3n}6>L0**dgsF&M+kMtc%Yc>}n9E8();)342Qr*hAAz6z@Lsigz-qBxY!(a6Vdx^Qo2DTX z_ZOzD5&0&YGTlOvXhkmz3?YUE{*v)`o>q4}Fjkz_40~AAwvdf=p;g6#uZ)T6o5Brl zOiFKed$x9q()#i+vySaPO2lzbz9KNaEW2r21P3FmXj80}i1V@1TVEec5Z-D?5!+W$kHF)q*q#P>$+I4ZcL$Js zp}$|N^+(^+2~U1TJ-jTo8h%lo%0h2+-c`QZy=~m^aSf1s@1GizF#Z|Nqjf^g#hNbL zr~s2RN!z_@yXP*$hfx@Z@>dVhN%SKM!g~kO0k9Odb*xJdupe~$4I+GOSEFT*v=2xX zLhJPSBwODM8X2+dXNU6XQsRJ}T-h=A(jsLJ{mCYDU3pvGo?j(=uv~uN6{I)vi-s{T z;}w1qIZ^QBHE1Jqbu!=peA>T%BCe3LH1xJZN5mI*GyxIxDh)&LF#}NYo3u&Vi>QCY z;mfTNlPz6+#Y=fF{((Jai5{l0rSIEr5KR6QB_gTIXUU6jhR)AM(2T3!xEj}p-7P53 zqZlujD52h8;svDYZ@Y};-cBEX{{6>d5w`W-m6$)kq|7$VEe*_7Q-b+9(!gj=w`s=* zq3+0YGelJD+$k{d7y9~pf}tfShP)$E0uQ+Y1uaZo*qmLs`26}wOn($tjZ-DQyhKh5 z9tk(wuVI|WkU)ZT{1}~A_Kq+qi=B&GjPRaa%zGLHkrM@u7ke$&0=LfkzdMYU)b&j% zZbJ$QXqEu!B-77fgx$n{{qGV0&)Wc)r+TVQN(mN!;k5n;6j zctu{uTA2#OjCqN=y70d2}8T{~lo@fC0`6j+|38sGD>-$09AF6|M4T5>M8~ zwq_!zKd}c@czbo zkt9KgN=uTQpNhrLko*yPb?aMvJ8G{z)Pp64X>5(jb+9m1(3ntnNIFBv(R=&)krvVW zUQyQtII)8u1JhcmVdkG7(W(>9UT z!--5h&lAG97$sXUe_>}yP#d6@h-yJ{UoF5xk+Cgm1+sdJzGXHxnR#8=B)mc*G+`me z1#hT)L8?AsH`RG?y`W1eV%A2Xe#rObL_hQf)1^!M)`NOFr+338pZNxm)t}lEiPu0` z`|l5W(e2&_NGc{o+nxGoLq;rAbST$O>H^N>AuVPYvV`t3@f6Tt#^ps-;hkmpg>V49 z@qsTau2k$E1iw@@6Q`bSD@a0HNuTS1ECJ=H!L^Von=_b^c*?Zp*D0F`)$bl6k&nj* zH15F`tGh!Zitnc_78yHmL$2Cfo_9(?UiAgXqM|@P1PEnz#t6#M(EV*63%%`NqNY%h zCKDda3}O=SeP2Z{vL^!z&mKcO?$H_bZt^HfHoK+DdiTR3KOM@;s97=|ylJXU)dh~a zKFNO&rNuwQ`&uaWMaVH3*|D0qQktEGTWX@d*B-JM2KzAiC#c@}cjSH#A#InRvW6 zn;GUtgO_rL@3lr?ey6weqTtfNR2jPcrEBs^jC+nLv1-wa^K~(EoVU46GEvckQRwU5 z>k=Idg@7}?J&XxhO~XP0uLubaV^YsexYcU9F*cilt=Vtq*$@fITarp|YwTvjRkBiP zkD|iWHK$~EW5y2rZ{Fp%;(R2hwF!_^y!|#EgOQ*7uM?Zn*6r;Sjea8;T9nQdy6i0- z8isL1nnkdvn&>cJN+zbuM)?4)qh(n$bb-xB`EdKsq9Fo4AUCd$PSvaHzduKoSG@6- zr35!HBBM2t_hb!Zu!ybuNwrInO^U5zZSoU7-iI&!cGu087Bj~#KJ{QkktA!E;ia|W zU1K~+oOgXkQMODT&0$`0Gw*ze`R2DYnf}p%oU?7(SCx@9k2h(66XnFIF^i>uSk)k` z1Tnjy+-sAYHRFX8zq0tU+&i2gS?>ap8%@V0OsiP!XVOh*xtiy8#6c~AJw}@<%;K_j z!Z65!HH-YTiMGHZJCB7tJUBAU;jvyftLKS=r!HYHoItn^5nj)Z1ijDFiN8+p3GZG# zuX`JE+xXQ#bQ%0ngW#fzH|hN}C6mKPvj}Ph99BlsYEh(hMIGdAzhom-ii7*)m(*&74G=nI}cR!^D~xSR3Yv!a76d*jFIp zff(Qb!^~wxDC0n}?bHzmfXKR0WlM)3e`!X&B4A;7ji_pqQc)i1 z<`;cWeM;tzH0cW_nQcV zH*RW4pbU?+5M_T*+S5OCJVloWD}$J#ue0cnM#qjs0>s@(*t zVP&<3nJ#gGUmSgB*uzz6BAz=_m?E5Pzo5uGjSuM-;36rtjJG+scu60P3P_(?dd;= zh{QgmFW^YOA^aK1x430B^k7AeZSL|FTNGF-yclGdIf%c6d1x$pIaeDLAPKp;R2mrw zKUy6SXX?2c;9Hb_d7JnZw?I9lg*QyVo2>uz2w$2B#jd1B-Jb5hRJU`=Eu1c7Y&`O3j!aUPE{qrp1ag>G zNZ97;K&;2C%XE@CxS3&3x#Qtg1%8D43U80@UB1;do@zL$6l87$IMt^vupuA8(8qEP z5qNnbtH0DtF&aRw&CHgbZRyi_xYJ#=8L+d4rgvgAVlW#`&^1q>WQj#|d}JErf^REd z)at?aM@&#jU;G2Sw8Ntn2}}YPIThR^ES67^Rp+(h{-?K}-xpAv3pF_~Y%WD^Jkudd zV{6>^vb+U}WsUQ`!)>o9F<1z8YR9Y4P@1Re@8eBZAVgS@SNV&8P?!^^u`tI{r*&*M zd#o1XcXqc`pW!RLPX7Amok=Z=CCl(AUn++>byan}S24Tz2uS!Z)%~lgTN?wTd*&q* zqe{1Y;TVQcqt9E`Tr{#HRatJ2h-}(*J+7jfN>HpCDtbVBx}4RaF9k!y6PvFAX3@(0 zZQ~JV=>hOgIO8^mc`@5L4WBvcrm*15KR?=N58F*u0oD4B=;O?9?4g&<9_`ZoxbHuh zZ4MJvUEI&Eag7WP?RBG8ket#Oc*J$`ow5R#1u&79;fuSOgY2f9jh3dNd5B&syxh#h zRn9tLvTfa<^Yd+gZB$fExCcC z^kc%^ae66oP^8&Ctqwf04;gz(IuEg{iOsUflCw&gUPW{qj%j9w;kT+Pk&4Wb*&Ht# zx2EStUh@-pg31W4ne*DZ%b@wxuL<2kDw9ZEJq8~yr-{AxzT|EkpYk^B<8Xu?+C>d5 zA@El4+`*3VC#hEzYmOG~bSucSgDVQMHXWh`=)=Ns2PdjIkAwg_(HpbkFWs186JYg+ zLT=$NQb`XYh~y+&A^7wd2B8{yJ-k`#tUUQSC+XiyZb4nk6b;Zi z`(@{FfR_KFK!V4xhxaQ=_swe;W1Y4!q}X5|u-EzoZ$I%UpKXo`YJmIKGnN$S&eks^ z$_(y+L_dTt4OQT))S9}l2Seqi48=4&cOJM$m~F{Vmbk=7pRU%4t9UeNKiHt!n~0V>(M3wZBgEM15l5~Y?xMBM;CG)ri!r}V z_3@oRep9kHRc8Kmj9h%J@Puzcsun5D+7JZ!guyAI`XDiZVTqufkHlL^GTPF^yJjs#%=cerEDd;L zQBtOWK82ax8$a1`5E0THa1KysVjHHaO|o;NniI!`scCjFZikoex>k3J44O4MRMEv!_zH} zxjG($@Z7_S5GT7*)>*tk&ke1X!fLcW`TrszL;+A!hvPiRl9Qp-k83_O_e#v$lof_A z8z><$zA$x~&HzN^oy@icL!}g|FnQnKPYIaSJ^+GoibEw^w!t)NuNb0?6TNUlF@n<7 zd}Id$BxS|SyoGs~!L7-EcDW~;NET>SsVs2Zd?PIl&en1?h^M3tzq7LpTsF^MU^{L` zdh~{7eeLj)DH&s63*A_;j6R%9VSyd)Hqoad&l9qhIWmzx%l<8f58=qG$3bH%eUeV3 zwt^18gsP%+vl``$0dF<)H;qUn<4hM$DKC8L?5gVP6`y`#33?N^O?>r0`BDbP0kpqG zttkyKOj5>OfS+*>9b@o-%+-{JlfGX*V$5|XFts2O5lX^DYG#5z{xWI2jVFJ&Naj4`p#$FTv3RY_d?Qn) zGJM|G7k7Oo@a7y}LG)s^>w}|?7!bkk!st_gaWJ=xdo9~NEKcBz$;WxfZ11n&(*ruN zefoC#wV@Hw43PY|>H{{8z(whr<7V4uX&F%Kvl>1cM%1T!+I!<{OpX?sWXl_vl%&}? z(I5vz5UHlHZkR+G^cgbOu51rECr7|+s*`yPkW@1W0kQ%Q zm<5#Op7AjoO>pIZ5B|$lm=`{2J(*hX6p4QPvL&EEm^afIh$LAed^Di*%V2R(KSUBf zvQ(@l6}!}cp4?AKj1;;rzRlNp>BmO|Y@4L!l=XVU+QYC4zE14+uLMc9zvJPOjR6H6 zMsC}^Z2u8kJ=oAuehbl%WzAU5Kxz1-_(wi74m&1~-R{N1={_A;b9|~uAmq-OIm~sa<`fqq>Aw0XCMfb3#T#4*yv~!-d zr7xDN+`wEBTtGmstmCx^+`V77M(5paCYj|@v;T7Jfkp(8;8$Xw_Mn%V>6eeY4@oWLt`bEhb zDy6fJ4-V|!iF<`Umf}O*UOEY4l1tU^h%AGw0=!35U92WZQ4Koly|AwnfpJ@5vFO z9Cey?Fbn~?;_Cucq8_$!e0!AL%3;#-g-*z0iIPbyS06mmMhv+FpRgCl<$j(xZX!3h zj3G>8eiK+(krM65;i2u0NlES-ULpCoF8CB z9N~}9(aOH{>EI?z9Tf2OcAuD!mL8bFbYEQMMh%3unAM*6PU~aHk1_KU7^eQf)fTidl5|P=UtZZCly6Vc z$z!iMpPl?_bUmxfpxU1@=l$C#|2I zHxI}I_fiOnQ{!RC^~Pb=!fi(4SOoV-`|*kr zTP9Y_z^nWM5m4Y?R?dM%;Y>&7bl7JoeJOh;;lLyG@aB;$6+R^8V?v{b<0zcKOyP99RXGi11Ie84wm=iEyqqL|3+_uvn?_CQEQX-cH_MN(K*3GXRM^3# z4Z#;k%L7I?T2ckA-zQHmfVsS$qRVH9;&D0YUppFXbKkx7`~A=D!)CplD=h-~=J=2? z=m)+-6R*Y+%4477ZO)vHrnHyH#rb0_4;e@!#O;e~V@VL#A_=sf@r%4LGUn^ud7P36 zxjq_6Lf=p<B`74@1I`K^bJQXFHPq3qR*9QR+&?os#q?1~g+^3p?AzB9 zDVm%)FFg$ZN&diB<+38FB17F%#0)mlM(-QybwUhLJQv3C*y`duKOdKz_^90mn<$!d zI2^4u&6QOPZ@)Ehxt8W-q~g29dycny<&n+E#Q(SAQ&gA-z4`>c{FdR0Vu+;d0Z(7J zxI@}(1^$|;Mkw#qIBRPvM7!{4v0OFfkDhogn*ZQJO|uDzyK!)5nO zW5>BX%?jDl5U}hlYp%n>H|xz*ey9~3V`tGUo9KkIEyFMp2YXmb^n!J~PQ`BV{xa8_ zS6BW~jN?Tfi#R_$mfbTIm^Nx>;f#Hbo9R3{NRD*!IGIWQibAfyF z&!92Q$~h0082#{Z+~JvB{_nZ_B;~)2c+B@KMw%J1*cPQkB>6OQ3gA+{H5Ir@Xx1CS zbL;vOI1zoq_vE>V{u|MPo}g!r{E~<3P1bBL z!3;yw+vwh}y?IrQapD5 z6nN(^dEo~CnFv@OT_keJpS*^wg-_yS1Y`f9%Zzg!TLmAkY^T<#e-d7>qcfBvWQ3o$ zzHCDUukVso5{eR#e;n8TqXzuFpONBQbzuJF6%*0)HZ(JOgPr{iNE_;P}8hq(9XmCHW$)92+T_uy7{@jci;33 zltHg{E_QVj-+^lD_V)Nij>_1?4U@yW_W{0?=%ANKZaL!JrPF3!JJ})lm2u-rz-kd5 zdys+E>oQ#jmguZUI&T}funMyh6Mtm(De`k3&QFoTF<}QqbqbiXWvC>1pOWb~CIN;m|&EJ)HpiU_^Ma|l(Lxx2mQ=?->^1ixh2fG+)j z*fsEAu|bhQpsiMmz}z#Rw0{H^qYD|Lfd!@q&>EWFC`dQ5+buq9vT5I>Ggq}ZxnjVZ zw33sH?eRM+fF0QSGasyVL0d-N;B%6#9DnC}^4)~W+xXQE)&+Fb`G9IPP*W!^dXbf? zOF$>p*y8;6W3KO;t)frb!mIk|rf5jOZq3%Vmp0UbAvoK1XGjU%7ZQq(EOF;Psg0J? z4O=eN`ozOiaK_Kh_<5ah95Y4cJfV-lb?}21HU^D0QTYCn4D>%sx!@ayF>Brr zDv?X4M!j#mmWODKaa)3Ar3p$qLE!?fc5Tr!=;@0E8R{0ck0>REjDcsHpVg@e$hunFsSh->+k_}lUeNNLmHn^*qa zm*MC|*s~z~uJ{ayl560%>g|VYsoKpXEA7gW{r50cs-EOd^ym1$Yyn2kw5_~vd6*;= zb!^Q+{S~*zTN)fj{@XQp;X%7ov3(c?uo%blH*}o3=bUV7gK2g@DO?mnT?vwMRz{KI zyJcH!BG7}PkFHVJh{lXToFduHKkg@xQ9OO5WJcoT7Z*3fmxL?>)ec)6V^z0UK#`&_&) zhO)kDyLv$rx72*aEzFb+*i35FO>0sk}Uv2b$cVnnPg%TiRhN(!AeUa);?24o6*q52?ba zb;EmTH=JcA(VM550O6*&X?>s1H*toKV;3R209SG9KDZ|UDKa#{xCB%rOPTic;n3QlJdKeTePNio2 zP=lqbXM=A=;tDWD1ubbUK1{v8kOsn_61+9HQE4K9SuJcSUs0c-IW*ivHf>xtKMzE zqQB&@fy#CA>rb=tvaA%QNEQPL?E)99B zS7o)uBFpAkDYv#zDu&vs>kow;H+#B4e3gx56SYt%G!>F=&_&Q}nA+kLFvj!fjF@2= zvMiL`r-7dufhDk-!&SJAh@w$M7E84{u-d021eK>VxP(e(6xk`4n{dLsPnMz3Tr z`i_>--u{Wqp-=(FO~FPZc!h8w8GlN!%>{Ol*3o21o6PX&EZNA?gfIY*_IXO1I7j7= z;Va+5^K<6UK>rJTy}bvBYniOuX99JHXSNS|_yty5qiEH?nmd^}Zi3xJ_B>`uS7SDYeB;+Mu*%2PW4KYFCg2EOwAqgP&5;N%j47Pkn4}PgSj1_DPJKle6*x1*$FsR)5DSflr(v72P zngpI=5E%aa^1!>}ct+)Zu95}J;+k)9npz+4amae+>3Bc)!lBp+9m(_Mp(f_Y*HLU_ZcXUDELa+(%~=GUWd0sJshWKH7XBke`;hLK4Z$2ZTGo9<0xkp z(f}FmQ-9L`cM;Vz{@I`x%kc5*NWpt}24*>sr}(Dc*}B?QU*Ue*)2NL%7WQLJ%@sye zi+$Ulg%dscvIbAT zbcAMZ*w{|4)!0O0%zOdS#O$YUJu^)Gr_5YGkQh$?;nL8R{33pD||7;ABy?n6e?|1}nSmAnmV-d^R4>)!jH^;i! z=$I|nQ-5dG4K$jD z;d=~jo#3hqgI7Ixo^1hqPJh3KE|?B@&Sq%%KJViFK)r2z*a}(^pWwZ--Q#$DfDR{X z?;#;V?S0vLE8=g}d*_B7;}Ld;fWle_j|~AI)r(Dx>Ou_PFC*{hvPCl>Hy+eaNPW+T zoU49>+YWEZ&2Qem+sO|(Dz}m1 zZ&|i)o{3}KYaO#f9~nxrtl0a^=rDqe{tisTd>R^wDz)=gkSub;4D|K+Qw-YAFu&!& zOAqoI+qj@l0P+R!|EkVG2|rH8ki@wmynGv$XXB5&?&c+)`fZ4nw%LRf42ae8cC&=MU?Z4ly@7QBAVY;gNZ5NVJ2>@AR;+gZ!aU;vTFEbP^}r^fU5_=^b|i@` zM2^D(a8&E?1`TH(0g=aES8N^#Ci*#4xU()6tMq~?Hn{RedZNh|bmy|yOe}*hfOw&> zs0YWh`vk}&kRAjT^{5d&2E_iV9lts@(_~QVe;ypluE%R0#TfyjTI0r(eZ>ozbpPTW zz1T;A?h*G{-!gQ8lQE$uBe%O^={Y7#;^uwB2L6^|ku2Gr_$*v5;OPXLfH1PT@mR0O zHmPuD?F^>+>QeS6!Iv+K#g{=vQy^m*x^RGYkI4722-ge^@Ae}GaIf<18>axie|SM# zH?k{M+rn9rSQd#szusiVk$OU{r!SwzvBy3<=JMi8-X0vV!ky=72e9{9tDuKRhE-q= zAw4kfaz|ggY8xmNCobv9SpjC4CRYJEI#YGRk1vjHBbMj=mI!r-Jpqhc@eW;b~al zZgd=Y(==ajCRFkrf1ki9paSQ9t=oa+4b$SiKQ*K8EML`9l{+WYr$%fXB)P4&#+)7i z__LY06U*k$9x&CU4xV>gouL~tSrKcCB*(A8ovmV9Z6YK}_JW1=b)iFmH*7?7BdKs_ z;Jsz*sOFto<(crhg;Ba;tm7+lsOD^sX<{kzlIS$;%ZB;Og-E0!0NjMwMtiI~u{k>a-Dr!Ebz7s=al)!E@m&L5l zIikd@!kx_;0V5vp4%nAXex_Fu*qUJqSqOQz>io2^rnw%tWk`}cW(nuqu%Z3E8x{$m z({O#SmxLXTXh$=CuozUjK8qxG#xg#pkI!yeL;iZMEBW|xAfMN&hmbeBge^eN!1tQz>g~=pW2Raef~k#L#R_*`_MaRUKgI2BF?LZR zBe?a|KJRRwFgWLnohN#2E=>sW@w46B#h$`IqISz|g(3}K(#H&74s*SjJ8@0st z%AL(ajup2^1?23m#<-u`EANbj8i@7N6}?i54gKltqP5>PGd`OLa^Be zq76IP8Xo(8?X-~Oh{4O5lC5bm)Ga4YOF{r4; zkn8=vboy(TU4#x}lCQ0jIv4{3_ujW};WD^$v#M+?Z{IOYz}=0M%LVWLSg0Gzj$hjd z?TOqQL%1#zbfRf9C=qJ(e7|=7Y*&NY4g?CmC{P|Ya<$Y6@0R0C;m-Gf%*urT4%>=F zV9Rmg$O~rcisnMidS|wjEj}}p6()=<$0c<^cM+8xjX~kg_y(vWs*JXuTWoK}uTA>4 zm)5bpHpS+pghU*uIj;{O-~1pUlF3ogsMB6yfb!G&0UMs+@c_4Z_rr!}bA7F28r+!| z#XV!aZP;9FfMGx1GGQ2KLeSWDn2&T?GWJ$;>F~}lp4)6Vi^=blzuu;BXA9~Nb;vH8 zR@FqzCWANbaeVDT<<4uGBxRoj5GO>!j)_?O0W>&TxVGlKbNw>BG93Q4;k`JjL&n*~ z^9g{_%uqf zwY{z5eRrfjHgmSY?EQK=2Fs#Xl!E=gVEoOxpqiG=bLVEo0i zx5)~tYuK`G-dQO9{vL{7Xiv2IgU1}|I}XS;BoJ-$F(O;I!JTc@H2`oGvB8&Npb@5W zLqFK`vxU6Dolmgk?67Lf5Kj9mSnYM1Kb4O6{vK-Pd;=@rUQFcrk&11my4N$gf5rjs zocJ;j+hqx>3CFuGTkTbdUO&G6s?Ap#ne zAfi?W!82|!qG|ncH(c}ln6>H8$W za^C2r@t+p^R;=Z*%LKZ9RulKMSUQ3LAlr>Xp`-mA{GuAXg6CQ`v!N$ za_Dn$@p!m3+Ze-Q1HiJ4&Lgna;LauvoI1dg4j9v#$T{@P{^#8u=&>ySo?;$&18YWujJACu>S_sJH9nDI-LlfU5;aA#|~AOW__Oke@HuBjkn z*@E^!v|<^jum!ZkPOJP2yo43*IHQiB@E_kp`_BYpaOH)Wwz&+1pD($V1;*wj#+h30 z%n5WGOQV(#TL>@4NCNMB^zsNn^4@vjlh?K!4dOa&vxGx(bO$zdeqE#C&gWsO8<5fV zY?o6JOewK;18#7CLT;}x#F9g5UXC3ldFO%WwYUd`yQ0ph*(;2Fybp85!EA;saIiA1 zqIvC68{6Q{xA)doWEwKYY^3=bm0otL9e-a6cYf0VTR#=6z_y)7E^6*DL1y3!zh#_) zommn#>9n{X{y)b(`}KP5V|`aFYd;-}qd&lMn98Gd7E>+@GZ_b~q*i->IY1@O{y{GfrH@GuuYIM}=*DF01@Zk3{-t;ju zB930}j48n4-DZtUD9?Hy$Wm$6#DIU}*Wk|LMQn;8zw{cIi>V-pIXwR@AHaY+pBw|G z=!lN{kEJdG1b{H^5|sHp)Ch(#L<|C^`q@S?j3G9!1rYL}*v*`6o0uAg(t+nQ~y zpJZq1zVdtH2R@_fz4O56?O{~YMq0&6MW;LXmbMd(W%vbbnb$FOERp|B; zfp&aPT2{B*UUnMqjp~~wcdkH2Za(oEbe?L9yI=DqWo*dg52V;&VCgSUDt8^#)(U&|dV z(2resbQ-wlvzY%Ky?`NI>0I^er`qJs%OpPhJ6v~|XpL7J;Q-e4`;Zqrk2&b?_fWj^c4p5=zLogHDy}@X5vj5rJKmDZYcHtGmp`bX-eCcaa zvzRQ3tUKKKHGj(5s2i$|1-j7svn>npn@4dX~BiZL-=GO^UUij8OmBA-IhJTS41VT=?^)Rqu)2?fP z#%|8Gk&cW4f@AEmXDJ;zWh!37B**sJXWM3PrP_C3o0pREeK{^H8p9m>`?b^ddKIIa z?KunmXjXFEb>o{&68Z)s$epLX76J6wNd6sMv!BPrN6f*#zoA-iXZypm1$G2jRy@9I zc`?D)V`ksDTI%L(>$$Drx{M>#=)Kgt#nWxtmm`*8k<@2z3G?Z2qtv}$6|`j2KF{yn z`p>{TW?YpxlcTi?I$?Chu=EU->DD_>4Qh7C#EAuhS_|=vO1{RfV;}?E`LVOX>cD~l z@tfDu62W0?xhffT*=ZapT1mABH5&$*_#)$~8i4Z+Qrykies1e*?CE0%1ADS{dvYa9 z-Ft*|P!4>3GYnNTrB`I8Tt-N4l>3aF#twJB zPn!*Jp5BJx8?Ex3$yUj?Lw#a!2HY94WUvqH*c* zfPMNj3+|k(!X8lYb6nT!c&H9Y#8)0TlQ#+zdbWPyT+vY$T7KKR9S36$8@A`oB?6M& zUSVE-8)(Ns*XIf$*fAW+@kvnyjE?Y&C9|b~`9tUrnPy5Uu+!@$u zg$CM$MmIbA71^WRZ*K1~V%hwy$J94(J=j3@2 zmKoc+j>CR$Td5EJRyM65mbIUt$S|HV1`0WLMwlJeWE+kgSHKfKKdhd zdxdf4{4dbQjkPyYTJw8ySWAZadB7@08a5*3th3z>00fv|GshNewa;%f(EOEd-umQt z%d(5>dz-%wrsbXO@8vSM^I^vdZ~&MD7wXur5L|2N_&bpo4JG&u)c3GH50Buik#yKA zvQ-?IRU@H*aOZsXw;gx~bDZBJs%wVt(W1wE$Q#_*PW87fer$$lQE0Od7gkKcYUNvo zE?7(09KZIa$3{9$F0~DY-e(W!juZZQI|=v3Sx&E$d%pF7*(wDG`FzWoWzj_})$)1Iu{%YSMR&Nf1*u0jdblJ%x8G_8knIfE#@JrCGZgo+sY;37Ge|Ff z3q`m<39}r*7a+mEc{uNj(>I(qtXo1MZ`?d?6$$v>twOPry`a5}YYss(4gcgLGCm40 z_`O@R=vA@?qJNt;?;s832gHPM?YN`t!JW;_!W0xMjBJEzlZdGj!7-wArOTZwpy{xR z->HVzhIfT16SBJw&AVzEOLhG>Sl5UBpCKnMcYi{x2**(ZrGc} z%3c3P{p1bqY=(o0^6#!2tID>bINKU6fyfAp1b4Q9nPV54{a>BhWm_8OU|o{g4kMkbb z!D8D{0KxkKvti*C%<(o4f1pZNx3%HeKv1vwM_hJyDR!;J>XX2j#;2xJMhbivN_<4V zC9=kuUPGEYAG^|BCT?^~_aWpk(a+#Vo`WrMZ5u!0Vy=Up?RIq>`talWleZ^o5FdwB ztQ4(P`Q{UKz#7>p_D|llLwu2qfURzN!aq94zz9!E$Dh1`H*t#NjA}Y3n)a(%iNB$H zw)**#w`Tk+c^BZlq}TCRj9jtWd#)@0$y?@py@^?OG|L@k9rYWz2RmV#@}In2ya?E& zTTU();IDw0@N#P!uf6`{?Y@^&0~<2K@2+T5k6DM%37PZwleYt3n@rx2FGcma#o#bO zw)?&M^(Sxtxa@Y4@MFcU?H3fi0qe;TS<3T+QuFx5-Km(Xu&38?n73&9_I&N<5SM7( z{%@(&=tSbRD0IvFG*fIXZyet^6+A!ANTkp~NN34y!w0>&Nsd-?2vTVM#LIL$zhS$s zo0q!ni;Km@gDC^`Q)h#I%kq09Zav2lT=->cVPF=Jr&j(1$y{!`RW8e(@7FT7XlLcM zH*RkH3DPhD3A=akE8~^!g`A4n;jIy*BPw!OFsWZ!F&>MN5BzBtHg3fz=!=b?(b# z2_rQRs{4%=QjnmI2cSIVU z(b(usi|l>aQ;yM{wN$9|o!g$L)&qtS~Mnz5`qZs6Po zJ-b&?*nU8bt>sJ_2N8S{f|tR-O!U|hkvoms8ey}+5hPXh`IC?voU&trl%axozcKR) zda9(S@t>)&C=J23V;!nfftS+@*0tl>e*fp%x=hJh6x-ateB~qLS_qLfzN!65NY|O@ zq44NH0Gtuv{w~%kAMC<^uI-6L&1Ax%*BTva*&QIk-zYHF>rX=9gAf_3GB};PR3nbS z3~PWK!La@$WH{cbJ2U~gyN%=90`uLEZFjDF{Yl6_E`xzv&j>x-G3pT^PcbVZ0$nkX zg17nEU(C_~>;Lw>tDTC9V@3zgD8JuONlQWBx#r;XF56Fo^bgx5V{x`~c4Nk)0|LMr zrgitoQZw5Dq+uuf?geU0(!u>>L!^g;m#zW@dz+Y8^1#RH_1((^ssU?y-+>GR1MCFs zh`nkm!?D*NFvH7Sw?h|lg1XuA*ZMJ=xUk_k_7CCfW$LxEt%dhnP(ECvwG5-^KgKtu zKD^8eR&?;BjIzdiov)jpZ*Z!ed3Y&PC&dqsQ|2~$%?V~_ zJJ*jN7cL3!M;|0FpryRX}{GI7PF3UD`LQ$9H(gRc4?84W~UUGQ(r&-;p zc_VY6(-EX_BSVo_)LJAHn@243K1)mlyMMX^vXb2V|S$w1^xi#N_OQq*U8SpT@pt^!U^sizZmE@wRVdm1Xbim)~|gfj&k<26qG<-0NB zIJac<=j3#DMBT@6;$^&!;pe7eX!;I}?A(X_Y40m24~FOmea8*iuj#&$okQR$4bB)$ z{2P%oj>5ZvqoLQs3}NT8+$ClVTXJ+f(QCp}fc3SuVy-E)Vmc7|wlxK(0O0!nr%=}M zfIA1a1X&y9PTLOq_VBa!(%&hVPdHwSF0(DM0lqhk9mkQ1mG<}FDg5IyUfhu&IO%3z znC1}UWKr=7osQfK!wlTlVs^FvE_qv@T8dvDv zE91q#Q{YRdW3~Wr83NR+5n{*Mb{LnIDa_z8Y&B`yN7H_@aY9ZN`!@}ddz1DbcLtEP zciLGH(taP+K1RzNXuCa~e_z^vZ?w;>5o7_+II_h20|e_j=Dq$C@_$@rpvkf3X55-^ zQn%$?GVzkrSGqC|)Y%qdb{8m+GmI+O;fjH!9jp9BwudQvX{PZ!fsEnc3xeceJS;Ja zR-(rm5(Ph1G_K-QD(j%TMW<|=W8CsLQ)4)?BnF#Y)hXaFbkOk7+bZDyyz^xd zmr265RcpL7K%aB7hTru4|HSeimq7~JX>FgG1cp%f7l_$Wtq1?$8%PbWN7+`~o0vG;{+%^kvHa`rD9yT$X{Orepzq%-*e6ncJKJtkvt-s(5Js z-T5+Gdz%7j?A8tie9^*4pn=c#3B$qX)^>q_%*}m3BOowX*D@~k_1PY$_gSVb?`P?3UF2{0C=wpO9GCGD0X1yi^u0_n<3-Wa0 zmYjeAlpJwW%*+0kb9V5I>^%PfGs?e)?S|kN=U1dNa{kw4B};}8HOJD;1qOB8@#XCC zKH7*g&48b4dMVNXxAywCoAM~;{oNOKvKH14Lt7B`EnmU^V%OQO~i=Zs&K)%T{s;aEL%P=g&DDXiNIOFU9SyJ8meW znhCZCS;tx1O=Uh~eK;iJc9Sg!`s&4mnC!@J0OR4{cTjMSWyQ|_!@T)zA2gVe^+nzI zv<)4-A&h0mZ-cJy7h(t|x2==cj`$G}5ETE3*7U<$9xFpS0Nct@TN>F3XcVB|RqZ?( z%ksZ21AoAN?`nfHdtumOa;5{5a%M-1$FdR~+ul0vNH>64KGV`$yZ2dk_)(r1x{9P0 zM}Bo{0nM4=lx7Et+Eng}WewMMf;cO$G@NM#DF*_=J{=bDe!&Dt%kNC~kHhrY+|@2% z?|UzMC>;=-Cu#&n(PvqCRC7MeX#-;&Q0WQef5%NYn2u57DiglMm)?$+F;0mq zfa=|j&$i^LV+%jrTkFquWDe4_%K&fJvnWIfF*3^(WCFy zh?|HR7s^;73>Q@6uq&3`>p_OV19NQb8RSJtECX!6j~7l(@7-3#X6HdW^H}omL@F9u z{5uavVS&fH*@Xbd$IK-!tWdQ6nVOb<-LAC9f%CB<^oA1Lj?Xi@X4z6AmL0#zuH@H@ z1BCUoN%VCL(~40go1w(A)B00`U6j~oN(P{96Kd4Iq*8}D6!bT5%I$0M5&VWRY<|>Y{SRB{!mRDzr)f?3+O7? z_$<*H@3cE&QuHI=a@fEpo1J7D67V;_^=x3#QmTz;%vW?-$F&(YK)RCo?a5A&U>U1v z58GCM?xTApH_S4crf?VpyB!9y&eg5aJfrg%iy=@zQv5Ag+&rS}t!FPQnjPd8*ZRZ3 zF%9c}J%_WaZ-lry0KOZR#=f7CR6Kh5f%}~zh=F(jjW%9D$Q{AaHA0cqKTM>2p5h&B z0i;g6fg=v00GuO0{l8BDhtv@RTs61oG-eG#zHSQ`9OeBz)b@I|{-I_=JiJ27Ej0xF4&VoxNlJG?4B0XhbC zvG&nCBrmb7vEg+sG)8%L+}xo^9Q`@PZ3wORIOeQ!{OA?@0rDPSYE0F;gc6c!faWxW z%vn`1{OKh2SjH)=*IPy3~KAydicAWA#-{Ub>k-z%4OY1 zEUUlE-sWaFILPz1vkKPDK|%m72iwIm;4x~_tVh10QW772dmZTT4f|Jx)(>#+lk^9U z5Wls_)i~(dNX3gOi5M5g>4!rH6W=Y`l*N#^$o#p01+_ns4l&03xosjq<2d)Tw~6@6 zya@+|)kwM>!U>W^}ZR{81=&sp2>wJ#$(=40c@?F;jg1sSJ_PR*dVLi=yt!DU~ z_&k5(j-iW?K0BevtGMHu#ZZS%=0#C?Y@3meU-g)^}OMUz8)5{*7J)BEhVHfM zc>^>qV7hf+^Lw{x*T;USJ9x))<+Uw|pF^}{^I2>i**el00x{J?LbWUex4>R7xyszn*b^$ssZ5Io_;*$xx-?t&vTiV;RJAXS+0DUjatRqz<+Z)qbr$ zJ@)s|@w3$x6xKG^Cn$UvI&^SR40%lD`-J)9)6iO+BUHrpXtqxC;^t_{Je4@p6N_XG zHrx}~h2Rwa=5e6@AaPQ)r^>d2{7ricqv1F>^kin_WpBUd1e8R(jCpF2DwfLFN5GMqSHwaw$967W z->;zy91gp+dEVLVB*13a@CZwBmL6A`fKrRoi%nx4^j@|%x{l+n?M2wx(eD%bFUk}~ zw!3P!Rx#DdPjXT;Fg?fhwA=F9KKw3_MQn8U(^2ZU%lSaa!+ zJFM9eV@D$DKBfORG$RW$M&BkCb_W?Wo92NK!l+Ig_~d?>hHHwMP4h0S&SS(0D^Q+5 z4%5LgmkA9;C)sWPGeBI)@q4!E$q~ax(VVH#rzWY``_#_r7$|eXwi7WU9x_d&+&stn zFT4`!3?Zz^iI?!timHFh>Th$@o*k!*3AP~*hM7MoSGU(qY%di1%+e{l!8mmoF|kY> zq^rNf?|#1)K|eh1>Bx7hN9?zax?)tCemW9nCKP)+MeKr})dLAB1FMErSjmo>VDB*a zCQ@Ebb)UD*n5`@X+K&1FsTvxRBHM&#|18zNZaV^F4>+7YUt46knQ=86%Z}gem>qBc z*y7rTwRyab)m%M%VMquR+oT0^-+Glpw{}@8_`bF{ulOyvuV`wVd=Y>7;Yt{3xF13H3phapNU(%Hi{MIPWOfi^#IQi*QnG(1E z`LW6vEna*vUhQ}+nt}YH)8D(9R9u~Dps0gn*>-!N_C3txe7@92HvQM2BhOo<0&%lv z@k%7~MF!UX9y))AEduRi1HwPb(=A!V_nCl#l6(>ZcV1fxblDvg6yh~KuV*X{2m5|~ zSEkKxAq*CG-uX320|&92JTW_(xko+Vggdk8*eWxP9_JcwnH?|TteTGN`F<_`@^X|| zvV}Fw6HBzB;e)f&mSZ+!Suqz>dgtY(Ox2UE1aGp?hNGBEneMxX!ql_DXDd}K+L(mcS9F=kLkrowvCjD7>Dh0aW)%S&EGPS zDzM5F$=8l6%e`23m9$;7ooiy*`~ig!;u#f%X5}TPl9?lJLgg7_1Si}%vq^ALr$-oK z#PC}-VVxEJ_?tyC;m#QYoPDKMh67k{&>)D=a%B5w$GbUn)v557c-VmvsO*%1g{RnW z^zr?cWjhsvBfuUkyKc-3stVIH*Jj#|FP4?x^8XMc+-}t^189)e*I6Oc30JYK;*8Fe z@V4EX?dMR8?f=fh&0+e^6z+_A--j^e-X?CcBWyTZgoU!N&G)680=oVpW)rWRoG)u; zuZRPg-~XQVpI4ik$RNBM1=63dF+mM+c~5xFZY5uXk} zwIrcoMUD?S$el5MR;BC=H#{8Ng0C_W>ApPE*bun$W9HVm9h`;uS@FeBSTQxcGyHpK z|MAn%Jv3$57ycCz>k+D5wcC!Ip9yz9PNxELY*zl9rW%|ur3kDxpw;(l^JhPT90OGQ zdp73>VGV)gwsYXW$1=DxSU3uf4Vr;Ps!_>ePayo(o*%Y^JGV8Fv?JQ0dGTP4H*mCp zB@yfBhd(VstfJh=%CN7NRX?XiPG}F_I6BN=JJAJOdYP>&IfQ6vIkr`yW?;sRz_fvn z6K(ATYcVby61U~`Dr(Ip-ha!g?au5qWuejuD|bE|a$qO3C-G6=m*N+qS*ue|tXyv| zMji5@y(!1}hX#j@8UU#dSciJupvQs$VHI$N<7hd3pWt2Fvaj&CHk%KilQh2wvkd!r zKb3(y?}|n6+Q#wZ(?S7g^y?&<?FSOz43JKIwk zQa>Fh6O=LAtL||4&~1faECZ>sZLOvQbA-`+PWM*^QkT`GpQE(-t=Wcl_z*wYMs@&7 zA8(^^y;r0@g1vtx9Jkc$35m%9?+>tIw@Jj!A4R_9oR<99k1Uy4optfz)a|Ie&Hrg_$PLm$b(s;wu31VC+G<=unBS)F1WMo3=#`r zpV}kaeIlh;@`2<0^6+u|KRb#5k8g)2*h`h)jrJM^HNCzbl1G9(XB&xw^{TU$?BR0W zo%glB1wJ}*4$PsnR)Z5i5q>tuqD}q|dv`bzVD~5xVcq$&=X$=K@*2J59a?OEdFz6( zm-Fwr89VZ3<9O3iHprDZXZK}2tv+b|{a*P!JEoCtTjkqey5G~O56!GCl=yF5<^2TC z&X~Jy$0x8C#}+UFO2O}c&xJypB~r1XUVqk@FpQ;o9Eqt!*Kb|_nK5+oT^KHh4LN7Y zIh&Gg>viY1Zu|gYj@>yS5U?zGOoGsEzwU+?#^sS&w3x65lzfOkpm13Bgn~jhuwhfa z6YHSS!z`oAj?vz4!Mw*_4pFSHIkDsWJ$N)gL-z4nKLj`0{5x*nLGI=UoPX;Kur4o+ z_~_H&1=xKj=U|wtT~hAvI~>6Zp1CbDLv>9_J~4_wAcrq42XcMu%Fn(kwqfEDzQ-!)5q?NaxPO`i6= z{Chvn1A61YWcf5uY1%JeGX)_VeO`b2H-1=g`<-^UD$eXZViK1#$sNQpqgs!3HUS0I z;k>Zv(Z}n3ONu!_UV9zy_q`Bmz}8f|6f&pgIz-6fN#MHM>b`Fs_!TBvi__hgx00Og zYQSaOq~fUmgBxWlKaXEb)d|p+en$v`|JcfFC&=B6S(t zdY*4x@s_Ca8pq`n(KgTvi(=&=}*?eo( z!3l>Ib`bL7w9@CZFEHzFNpH1N3;N5$cJ@jUQ;)Sej{dzL)VgEFE?c!*wE5bd#Zm~( zh{K2@E8XtG;9|Amw(%511LKX3DlySjx4fUcNUjr%s$fbY-KyEK&>@Jn@$qKplRwzC zb%i$S@}l4@kQ3N)b6PqU=4|;p59u}F9Itn&-E;F|D7g`bvpY%XPv0z5#0ZztchF(k z@wn{3dD#d@jQOn-NSXQn7-6>RayR!Vc`5JI@$0i!*{0n%@4^0iNf4m+kAEho8AZ}XX@0jPd{w+V+0Z-bT%8c8OXEGSmU>ESmFBiPnr#V!TOb7I8O$^BRd#->As{>HQQ}OKnoVSyCtE|Rw z>nATT?d}|=G=(E}h27p~*jX@Y$B*N0otHvh;G7Ole6NM?-wvJUP|%jYh$HLzFFUmU z+7On}E}1USJpwaqrX9U(EWB+09r_2=Jg`r|Dm-xr+^`R06LzX!-oL{k3j zq|;`SweG>9nLrG7X9+6^a|?QM3v#*SB;E4Llh(#;8R zpS`kxF~ywG_}&+-gze33ZLN(c%b(qC_9F`lf1^ug$$}spOzs%(?I6K#Uz)K%bN06* z9pQGYeC=QZ6KtTOZ|pPc?5Pfhe;kWiTg5ip`!6Spe+?Y}eTU6+>zSQ0&iie{HfFUz z#xOPZLoA;jLB3~j2c@q#Q$iz@_*JI{IF#eF2bMA3He5gKSKW~PHk=w`n*+|wxqja| z>{S`BxXi97d#1QbkX(0AB5>>P_xjHPmv3`awiWSDTUH<4H3F&*wEfm$uk?T*Gi+mj zuX8zH)Vb-|I>j$hjdhOnwvNwW#2p!u4lTRhmCK6ymTzC6;8uKFhJZ`rSdO=QyMEYj zd}a3k^D_>hu^`=2XlG2sbk63~ES7Fzz$aIb@a7DQZjT-N)79aydEhwKd|Jo)?Th7% zV8WffgD;}04mMqys-8{3ub;d)g9f{6(!;Z&MFSsMEj_Ix*I=06y844en+*n+!QH?M zoX`Um##iFHzZpNaTK#1wZa@=mfY_BWs+Rn*JHs-uFJ+r`a6oi$y%MsqU`h|r&f1}g zKZIiLzwaHt8|I%aqfJ&8q7=4lPnt;JTHXMK4>o%`der7O0Quc#=SWh;4~Wg9=D9gzU1G&K*vo>fvjC1 z2rDmbxr{~d#t(45`{!ri;}bu=%k5jAzLIm!iv`P3-+g}i0U@_sf*0I&V?Sd$Y;`)T z?U0?7^U2E)UxE2CCRgHQUhBHSYya2M8C*dK!a(#+HH!*LIf~GK3HyKW&U4)uk_jX; za`Z^oQR=dbvyI!+MFo1++T z54z+8H4e?4HY{!VRa2lzDJy4QE~U-*$cDvTX;QrJ`@a_EI{`@j-l3+ZnnOdT&&}%{ zFFn>e1r*=I)}x}}htlET4E;u*X>+Xn+vJ%h!b)M@ij*i`k+@+R)Ej_M28q;W%UI%hpb4sxir<$cB!@&WN83-F$Nf404- z+B4Sp1}$IL}}Y_e$XJo0G9pp~`s_ zBTcM36VXf|9FG(WwY3vuCr|bCnT)w`dsd}Jxe&`|vh#+g^a+fle4CizJK{HFChrdi z2~%#nDw$)mK>4ZqdQv - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - - - + + - + - + - + - - - + + - + - + - - - + + - + - + - - - + + - + - + - + - + - - - + + - + - + - + - + - - - + + - + - + - - - + + - + - + - - - + + - + - + - - - + + - + - + - - - + + - + - + - - - + + - + - + - + - + - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_checksum/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_checksum/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9bd65433c5cbb0b05704478000748f9ebdc4d7c1 GIT binary patch literal 9101 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 - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_destination_unreachable/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_destination_unreachable/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..efce2ced9c3fa4d8ae674f4d4309ea46ad396a40 GIT binary patch literal 5441 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3session.xml index f5f5789f5..74305ac0b 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3session.xml @@ -3,381 +3,331 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..21de1d50478edca7f7e011f1ff568463c01f830d GIT binary patch literal 5484 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 - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_time_exceeded/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_time_exceeded/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1ebf7021230fc74aae8eee2ad55e7745cfbad280 GIT binary patch literal 5538 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3session.xml index c25834b99..d7a10d936 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3session.xml @@ -3,406 +3,341 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - + - - - + + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - + + - - - + + - + - - - - - + + - + - - - + + - - - + + - - - - - - - + - - + + - - + + - - + + - - - + + - + - + - + - + - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ca243d7e2887b664476c375990f2f477efa9bd9a GIT binary patch literal 5586 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 - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + + + + - + - - + + - + + + + + + + - + - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - - + + - - - + + - - - + + - - - + + - + - + - + - + - - + + - - + + - - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0b4b9ba3883a79737b80f111ecbfa8d1a5a5ce12 GIT binary patch literal 5370 zcmW;N1zQu00tH}VbhmU!$LMYt-9u2i8%7IAm*nV@97wky6DBPk!oW{TIwYhK&=D8! zdH=$B&S6f$Mf-mqk4q*YE86h4Kf{tmWn-a4-|jIyC1Fg@xRf$<=?d`!9oRlP$YymT z4{8)6GqZHHa+-=9w3-Ro-tkj6m^M9HG>ox{qjt7hLT?-x)VEQ6tB$`;T!4so{*Q%n z96?7X)phrUk4HSZtFB^N>5r)GbyXR5i!=o71#8cAnWrYiyWwiv_u513{)EX`9CbCk zD)o5gBdM*p${vrzC3+_CQ1&h8krq0#IlAq7^<1y!#DWew_~oAe-bI4$PYpt!qBuwl z5sCOrFRzgL!DX)anoFOn(A&m0Mo3j0B2gr!VcDXAfd1 zXBdCDEFUmRRy%qCOdFgBlnNgr@X`tt)}St4NtVIzQy9EMzo;3&iz&VRJ;{qR*X4(6 z?|0Xcp$eu@}Z@hU-ev65$gjD@?XV^;SE=Dv8^6bx1&(iuJe-1AiQv2 zR*<#QH(B{q-eUg6aHeq z?ER5||JC(|Ga`~nQy7cKWj6|o=hPFf>WuB*(8wol9K)3InZY5i^e9C1Hr-&Jf4tg$)Tz4A*rZ?#BW-B_eql%Ry27J7C5fFGXI<~z6gDsI!} z2gnM}=<{1ymRfBOnWju!dWqS1U*Q7{dSM%a&m3J91gorBTIm7Y?~MB)@6nDUl`2!v zWfwaY4TTJa&VbLxJkCrum7erVi~p7Mhuyf%Rb5SrmFrUA(|oN!dQZl4;J#(^G`_#v z7#2O?L*+-#I*o1z({UPm`jG^#y~BdL=XAGNDI@O`PoH@x2BTP)NtPmNuT?)WSKqf@ zei^^>wlClebtek78B(Qubq&bt~~ecy%;D zk$w|oV3xjae0y_spnd!djtC8~Iu3tibt=f%- zlV`;o`^q9lsB#A$&h2DPqWFoAzOv_9<+{rrzFbW8DWnF*y2k0w05`9ufpMkNU4iUW zOGP{zRUMAzZl+Ucyd>JZUaL4+!0xS?&SeHTrY{m-(jq^3o1e;x?f>1r_;{LmGnlw# z6i>!%3u?eT2^7PG=K>H*ijRngZ=s6ee{1#v5*7j}gG=5imV9WS2`;fkzdwvGR7w0N zU7a-L+$dH?iWHWS?H`*a`G0qBlNC?R)OiVWcE)B z97t`kYsv^0^V6KJIp=SfBR+TtvM8&I`ZC?VSN1rWfisj_0$A2w^f!B5WIkRw29}owgC>amtyf5olo$y$TV?6wxe`Gp7 zipH`{{nJjq*HuNuRj4?-9cQg%@+8m{w#*Zo(K9%;p7x!?>qyX&=ZQ2yb1}DxtvBz1 zO65P2oZyHO2c*xFvt9Sw#YTH5I!g9(0BE^r{KTL0*La`&4uXbqwXc-vl-#!@=}Xvr zjmv_kHUHADiS=eY_JDz8s+_4$3SV|o&E^iG7w2MMlM?9T>+jKELw=Oa_?@`l%`g#P zZC13FKiTA6I$LPQy#+rreBu*NSP=fTr86iy3AJ18>N1hr5!uW|D5%R}U1Xgaq&|KA zXTtWzZAPM=sQC~>d((V#*|b?)@j=9KdSz?$M)f(2Dwe-93Sj)L||F72

c)>_xyhIO6nloY69zQr^gpeUWJjJ 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 - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3session.xml index 53ae8a2dd..43f695927 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3session.xml index ed6fc87c5..f4b3212d0 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3session.xml @@ -3,289 +3,240 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - - + + - - + + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - - - + + - - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..029bfaad48adbd56ab172e2d6144da77481e8c29 GIT binary patch literal 4327 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 V%mkbX_LNel`5$YfC1{Ki0RU*JSdIVy literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3session.xml index a523b1964..ff7ff9a51 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3session.xml @@ -3,1260 +3,1201 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - + + - - + + - - - - - - - + - - + + - - - - + - - - - + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7cac21fb321517210d1658dcfeb7dac4059ac357 GIT binary patch literal 20894 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3session.xml index 144c83b86..caf8e70cd 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3session.xml index 8e5692f7b..b5904a52a 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3session.xml index 3198f6dd1..e492a02b0 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__10/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__10/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5042681041dc03aa49d32738bfc5c73d924cf696 GIT binary patch literal 573 zcmV-D0>b?tiwFP!00000|Ls>zYa1~Tz3;E+y%a`YBMF?t_F!r#IhDOGBaM_SIJQ|U z4(_k7)~2PUZb;ftn%b8^Xy0g_-kX(n%Yt~nqPrpX!)iz4K&wLQoaxhepJ-0YZ8{F8 zuo%99H{*Jf#s^KscHM^&AqzJhzr`$ zvhPoFpEv1lQ}+G#mNu!mrmN^8Ea>V)wNB1|dN9@O#Qc2JDi>`Y(`H6I?C2f6rBbsF z8;wdv5gjel>ZaU2srLCu_5|*oIN`)1uQ zr-j}RH%HhIp+c5@*u_Kns$tcSW>e_P!@A$BAJW)whtFwon7#P?Dts=B>x*5l$F3I_ z>|*tQZgo49KRC<3o(=79Uf%6rZ?yKsKAzjsKK>hLe!)Y}+cWCZMj&#?(O~c?=Zqwf zTtGpFg9a_%hz|l9=e6)ghG4*I%U%WPw2j85=mH>B6f|sfMhHnc4oXq*-Y}vgA%)e^ zPaxUohz?M&X2~+t6j0JL1nq=T=yL_BMy1GXtaXX4A?I16s*A^jStTW11?h&hlIT1L z1*$SO2pUB+K3A%e-2^gCPGDJB$w`=C0l>(_D3bwcv_w@w*r2alKtnMnon4+lIXR8C zR+J%6E7_(pM6h0IpPc}-(j_kwaJCMB4OEb8qPKMxlXFs$lk5Z4*DePTfrZPH1itwK LfjkLfRuKRIQ1ls@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3session.xml index 42444fdab..d0e05e4c7 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__12/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__12/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c3d7cb4fd08aebf2440237b08904b09556731abb GIT binary patch literal 573 zcmV-D0>b?tiwFP!00000|Ls>zi`y^|z57@6UJ4^=^aa_2dk77bJr!TgXe8|#vPp2X zS<+u$IiaPc>9X4{rQ75(2x3o#kHC?e|SkTo8wocA}+L$;yF+U%-%Eg<^lL8yxhz|l9t(c841~I7M9EFsU#w=Bk){{;Z1&s*CNiQ>IN--O90GuNtM$AA0 zD@ZozWgXyTt#Xt>dY6NftbFAQ+Tz5g8b}TW>&g~cCX-aK>;hUV14#>}g0L}lD}zU; z0)SB60(9!6&@t8lg_iuA)#`XqCjP{ z&`wBQLAKEXVva@|g$4p!$u@$?$%8P#`3dA2n_@`b8I)O|uL`vV5mJoRjLZru$TwdA Lppv7iRuKRI68RWY literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3session.xml index 36b4f8696..048d925cd 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5042681041dc03aa49d32738bfc5c73d924cf696 GIT binary patch literal 573 zcmV-D0>b?tiwFP!00000|Ls>zYa1~Tz3;E+y%a`YBMF?t_F!r#IhDOGBaM_SIJQ|U z4(_k7)~2PUZb;ftn%b8^Xy0g_-kX(n%Yt~nqPrpX!)iz4K&wLQoaxhepJ-0YZ8{F8 zuo%99H{*Jf#s^KscHM^&AqzJhzr`$ zvhPoFpEv1lQ}+G#mNu!mrmN^8Ea>V)wNB1|dN9@O#Qc2JDi>`Y(`H6I?C2f6rBbsF z8;wdv5gjel>ZaU2srLCu_5|*oIN`)1uQ zr-j}RH%HhIp+c5@*u_Kns$tcSW>e_P!@A$BAJW)whtFwon7#P?Dts=B>x*5l$F3I_ z>|*tQZgo49KRC<3o(=79Uf%6rZ?yKsKAzjsKK>hLe!)Y}+cWCZMj&#?(O~c?=Zqwf zTtGpFg9a_%hz|l9=e6)ghG4*I%U%WPw2j85=mH>B6f|sfMhHnc4oXq*-Y}vgA%)e^ zPaxUohz?M&X2~+t6j0JL1nq=T=yL_BMy1GXtaXX4A?I16s*A^jStTW11?h&hlIT1L z1*$SO2pUB+K3A%e-2^gCPGDJB$w`=C0l>(_D3bwcv_w@w*r2alKtnMnon4+lIXR8C zR+J%6E7_(pM6h0IpPc}-(j_kwaJCMB4OEb8qPKMxlXFs$lk5Z4*DePTfrZPH1itwK LfjkLfRuKRIQ1ls@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3session.xml index 3debce5d9..d649ec77e 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3session.xml index bf21f7046..37a268249 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3session.xml index 8e84ff5b9..ebc03e570 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3session.xml index d20ece502..a5142ba22 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3session.xml index d1ac3c718..4106fc2c2 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__7/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__7/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5042681041dc03aa49d32738bfc5c73d924cf696 GIT binary patch literal 573 zcmV-D0>b?tiwFP!00000|Ls>zYa1~Tz3;E+y%a`YBMF?t_F!r#IhDOGBaM_SIJQ|U z4(_k7)~2PUZb;ftn%b8^Xy0g_-kX(n%Yt~nqPrpX!)iz4K&wLQoaxhepJ-0YZ8{F8 zuo%99H{*Jf#s^KscHM^&AqzJhzr`$ zvhPoFpEv1lQ}+G#mNu!mrmN^8Ea>V)wNB1|dN9@O#Qc2JDi>`Y(`H6I?C2f6rBbsF z8;wdv5gjel>ZaU2srLCu_5|*oIN`)1uQ zr-j}RH%HhIp+c5@*u_Kns$tcSW>e_P!@A$BAJW)whtFwon7#P?Dts=B>x*5l$F3I_ z>|*tQZgo49KRC<3o(=79Uf%6rZ?yKsKAzjsKK>hLe!)Y}+cWCZMj&#?(O~c?=Zqwf zTtGpFg9a_%hz|l9=e6)ghG4*I%U%WPw2j85=mH>B6f|sfMhHnc4oXq*-Y}vgA%)e^ zPaxUohz?M&X2~+t6j0JL1nq=T=yL_BMy1GXtaXX4A?I16s*A^jStTW11?h&hlIT1L z1*$SO2pUB+K3A%e-2^gCPGDJB$w`=C0l>(_D3bwcv_w@w*r2alKtnMnon4+lIXR8C zR+J%6E7_(pM6h0IpPc}-(j_kwaJCMB4OEb8qPKMxlXFs$lk5Z4*DePTfrZPH1itwK LfjkLfRuKRIQ1ls@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3session.xml index 09c537c52..76efb6332 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__9/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__9/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3session.xml index dd66aa005..fcf3eca25 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3session.xml @@ -2,29 +2,21 @@ - + - + - - - + + - - + + - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3session.xml index 02b915cd2..12d94b689 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3session.xml @@ -3,437 +3,364 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - + - - - + + - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..859627d3ab37371d1fb0c4ef4d184fc1b8b06a6f GIT binary patch literal 6048 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 awM?);Q{Y6x#eQtXSoi-bgfPN9mjM8 - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - + - + - + - + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - + - + - - - + + - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_identifier/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_identifier/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7fa2ae12752a0668642d0e80c1b06394644e96c5 GIT binary patch literal 6084 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 - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_originate_timestamp/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_originate_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..481592c4de279dfc336c50278142a672e75cf92b GIT binary patch literal 6762 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 K5Mzx4p#BfoPWKl8 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3session.xml index 4c89b3e3e..6f205ae28 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3session.xml @@ -3,453 +3,372 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - - - + + - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - + - + - + - - - + + - - - + + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..354cdaab1e4cb6b34ccbc71575d01d4adecd30d3 GIT binary patch literal 6142 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3session.xml index b4ddb8c50..21d686be2 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3session.xml @@ -3,550 +3,423 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7f7e98e3769ff77be14921082aba998c016d56c4 GIT binary patch literal 7083 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∋wU(}bME2-PbUaq@x(rBiEx8q4@u%{+NmZoDyg?nk4@=I5rXOP!AJDoLgU8C6 za5(aO{0P35(-}6jHYUXmBQFr}I<)fh#DTn`sVm15{LL-kFu$-5jCCVK6u0fE^O0RR z%Ud%Ar5GW*uX>N#0!w?>;2-ib~wz!mE}|tNiBr=Lr93gTC16=!0wyq zDl&xslTT?)R3*Sr21D1Q5o^W?Zms;xQo98|C!_j1+-Ri~qf8*hd+0CxNOKq0C0JuI zr--WbZDP%j`b>C)OOp%lSQF7pt*=lsVhf%clyMjFjj=u83f!B*iO%C^%X?;S6x$Z< zRvsQ`Ds%sgCdkM z@Hby=uGtWog4?!{N1;wFJX-}XK#+S$lrINYw}nWEWQv^OII1Q(G6IbbNRH7G5kifn zXkem74aS=KB6EO1JI7AO>*LUzG$V~xtet7w2p3?Q=9H`zuLmCsG3^*#BhbYjy49A= zNG3&|`5r%{vyEC{V0E7ZF+@b3Pl&S@@PhF=r*-8xDe@~^yx(R;0jzUc5aZ68YeuGwVV>nuS&T_`NQ>5>L}@O)^YG$Q92N}zow2DOU5;|cLC-O8s-A$NZ~|U^@bEcGr3=I zu*R#^jeam`$uOMTBuK@Fabs7pS6C2v5X-|pUB?Pn3-L&85)@hD4)oJ^qnPWBXp5K1 z7vj2_I{6JoymvLjY~!laD)<)90c&aG=5m0`-KOjBUUZeRPx>d9zk&!C*nBJiG9>90 zB*x-5fV;JwyBq}o9)#b@_d8?vWLktbQXoRO?o+fK^WH)2nSy)OGD|^Obrw(yA$SUh zIQO6ml6sU5!Pul-mbDG1=}(AG9M4XVp5cPe(Sm(mtqL9?9xueD`!Y(q{ws3SY4N<>zJa+PImk9{_2nEai< zAVIqN9(plKdq>>(G~Yb44WE|~ZR(UKRxbShCPUJcNsfr@v;Y@Ch{{^n3(K^4J+8BK z8o3Sm*mSAKy9G;z83`p?&5{~HQ9vn#o`Hm0!N2qV%Jp2Vw;V@0)jSgZL31a-l*_Q= zWV4AO2!2YQiQi;fN=PpbCykXFCi};1Y`@x{s0_dkW;wQ+9-m3oX$Fzy+Pl`|UX{QD z_|M1$#9JiC&>eE&*3(at<2CNEKQM)9uJx7hgq3334He!b7mDkZd z)XR)XqzJT%ji9-1{B$z57oJFqNX$Gcu)3jdDTTYDqvcs#Qn3vO`XFPC+S!sk03kCLsn zD_l@oP|1egxJsJvk`SlmSM!!3y(r;^+A3m}cz(V9PpFGrOysGr2yEsNBR)}&t~mb1 zH)c3S{k@r1n$!bYsdE0`)ex(d_#5O*thH8^@t|5>aysN%>{&4~E>ZI&)4PaXcB8yr zZbm@~-Q6DKpl6$9;5(d*k^V+)Lf&XBI=Cy1*m?Nh$TTj7Ke&fKgo8ie>vdqIi8Ghx zNGF>(lfaGo;FF?T?Gv$~vmpG^+b79~JH~nsCvd1%4$&Ko67T;2lyJ%%9`AQ{UFVM? zrK5u%_Yhl9!XxIPIU>;BXeNj{)$zgO{MVYuWGLZjA2nyw#w5hesL<#$5BQ=>3n%Uo mdO4KsRz$LUeK1hAao&teB*Qz&T|Ib%&$Cvkc=`zs_kRG9-(Z;l literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3session.xml index bf5dbbcf0..c23f07dee 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3session.xml @@ -3,577 +3,474 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - + - + - + - + - - - - - - - - - + - + - + - + - - - - - + - + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - + - + - + - - - + + - + - + - - - + + - + - + - + - + - - - + + - + - + - - - + + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d90cf0a9f93951db2dd73812df24034a871045af GIT binary patch literal 8162 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3session.xml index f63484fc3..619a6527c 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3session.xml @@ -3,528 +3,493 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - + - + - - + + - + - + - + - + - - + + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..92c0876cae1954ee4518e6aa41a89f0922779364 GIT binary patch literal 8481 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 IG;lEg2S}qQkpKVy literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3session.xml index 85a320f85..2c3618c2d 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3session.xml @@ -3,579 +3,441 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - + - + - + - - - - - - - - - - - - - + - + - + - + - + - + - - - - - + - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d33e1a90f1ac09baec72eba8ff6e3581542aa1e2 GIT binary patch literal 7483 zcmY*+Wl$V2+by3+?>prN#>j<$)B8rJ{}Y4|F-9od^Hbd(X`>SJC2*y=s_fibm$?nGhQT5(NvHT zf)l7>-v;D0XyL)P-=94z%t^Zjt7Zz!@~R{$mfD)AvoTX##K%BV#`zc@@1-Cn19v-5 zh1*tyr&-&D+wM~M&wtO;`wzf>v%k}iOH0=JXHU{!CO<#jBvTePqAEQK%nCliAYUl& zA7Epf!Q9W1ArH(CBlDNz_1jsRAl^cE29J1qG@p$+)kAZjkogpv%N-2F7 zzLjU8&i(b`pz}aT#IRnnxZGpF!+Bw8-`?UW%O0QaI@<&0xbzs(tTpU5So%-uN2=S1 zvnfdGzBHZJ7-8JQQ^VcA$pek9(}cY?i$b5^T2V$eBo2=C9-PY=={l_?^pk6}K+-TsT_p zzhgeaOvY~aANxDps-4zaaok5u++RL;32+EhkD^#i(!?ebYO$~|Q|I%AEWZX%KP}NU zA)Z_^O>S6zD56U|1*6t zC@t1~JB+f#i*3GZ=0blHfAY*^Qlm>eGu!6zoTTlVcP`;pySFk%_jg{%-4_R$>HF4n zH8~u&+q=JOOLn|d7N=OhRG(bJxlyFdh4QKCY5#}dTBK4$(;vKzjP@&FZ58An4B;HJ zt`>z!oe>JH6w7(wD;p?QHw5ddhFX|S?ZUAfNzvd5T$9sGE@3SB(PI>c( zT`87$5fMHZ>lcAv=4^8ftaBeEevyPH&L#eb2@vB?ASKouXmu90GKr{fU{S8&~cS}=c; z?NM#^ZAzL7@&5{$$G>hI#o=?*ll)hx8BpuU-vmG6sk==%QYGrZG)JqCk64T&WmfyT zG4>*?MJtY}*VeAv^X!cjx*rKwFx?_rou*p>$dm>QM^KsX z!WJ>(mEgCw^U>sIQNOl2ZXF8v$Q@z0BD*D78K@p zkrx@yrakV+GQ;v*9upCtDUdel$-4PY`!Agdrl_k28CS^Au3|7ph)l8S$N`HyNJ|L3 zyY8GNMfyL5@9(7c?;dB{#H3AIBX1Ug(U()!#eqA}+TonBN+YiWwyLqp;UmydCvw9j zU6VUu&#-)a3HDolWU{?1Kv#$B!C9v@GoD?_pv>DaXw|TmSgM)1r21X6kXbzoUrdFX zr|`SCA}JDdoR}=R6c`uDG|v~eS0^QJ)&c>_bYqzD!Hd?&FKdYrV%KGVfe6%S>^>VL z>+#ckwfo*kE+y?#9B{z}x`E#}j*$>SKM#9~rdC?;0PjEpc_ZWX+1b_t)?*pGd(;Hq zg4nD=1ZnTa?8UqS1@ljWsD&*EiZC_Ns^X`2wPf7R%*DVz@7#Sj60VDDB&9!{{y}uX z?S4DVxO=eqx?4=5u56_Jp5q8PwUZ=S=k;MP{Hr8_KXQB+)c=TP*!Cm%jJWAivm7Q~ zkUuCFZ0)M)K}-|nCO&n%;sJiPZbB4QCg8E3jLg`8x%kcN-sI$-dq=YqDZA4dyyMzwyks&Lo1!Fs@NqdohIfda~o#W)ke z!8Rp$F=bS9_pg$^=NgmDPd{xpnH$P`k#$Twycr+ktH8n{$&r!8`PYMyICUk|3)Xr@Nk!3LA+x$gNV35)rF^U!l0{k` z(zJ%AzP~y_=uD`o+stX(^&_J8NB%bdJOL^nvTo8Ya%Kj|tZ^Fmj+V5ikbpfpF|P*D ztx+3`4_byh)e`gnbW-wE=`z|92-J~M4lneFxPY&CnxBUbSTqPLV{|HYDQ(<`(*wn= z;P*h)l3gRw(=W$##tD$BN^t9XFDYZg zA5mSIvpsip|JX#g+~6Ry%I=a*>(jiF7rgbMbP|;!;9-G4QS$UkBE_>)9hfIMnDARM zD6HE|yTDxXyQTj>C&GS#$*UW|tdxhrKOurYqpFK<*DaIR15h*t8x8~;8wq``4+0&KVVUEs060C+&n@dWr(8oSlU(568H3&ka1-aCd{pH(1BseN~ygdP*O_VQ)=1-r`^E$>cji)C$(HC z0$Q#ndhXe*mOBw#@eZ;PRSdx>3GxX3tL44qjA9T!Jzk91vsgJ&KpcH3?&je;D`eQA z@=R>^ok&zuRzrVW3eRbWS z3~83r>tINQuxY`V9HTs2Kh7l31S(8L4_CH#<53WipWvJNF74}C*fLrsVvt=NY5Vy& zp9+x~5}UHKyk~pC(_w*x*-_*7iJ2c&^El(*C)R%sH>&_r5i1>O%HH8DUjoc6P|ySP z=U9mduwu~Os)hYT;aH7#Cw>`#!jcuk=-%^t1kC=#&)1Z8mV5l+C{yHDF}->wrsR(E zcV(~^HstY@UeCX!{k}1Xqy1hhoq6S>bNu9U(8WE*Qe*|thuPI=Q4+o>)%wud@+r9l zdK!!R!R9q0XeV?_>74oYWV{zGR$ep{E>OZ4G_EDi z9CU6~!G~!QQLE;)gCAZ?il@lKWmHr2@tb#`qxhPEdK_^HrdC9in*3ZGsn_qd8+Q-) zy#|=w0N)Pz#WC$&OJ7e_3!G7Jvvt3Gk&)^WjSYnudbr-xEZ0-@hzg`w6n6+n38s;a zEdprkg{k-XpFOeLZa;2ecjBM#DJ7bc(WJRt*@-hWd4&Y<)K?B>kq-~@Py!x)n^xsSu z=XU~xHY%uiyxWN~V<-G?rstxly7`+bOviSSC1y2+XKJ*!ZW@%#@qw$0-uuQF> zgqnMN+{8iBGq=I?ydybf^DjomI2e@v1A)nm+x0M#-|H`IAMmaf58$u|axhZdySwgX zVHgDad+%jM8$A8Fg%5^#m0tjHehhHmJ~iA1dD3St%7;H`2EFFv7DA*FjVc8yZvnUYlHDz5GcnPhq_sl4SVf=mfDWe-;%sz9@(~}`R>w}6k zX|owukxwU?OMw)BIgVms-hTGiJm@0YYs5N_dbDS5(NZk+ow>Be-JAregF8#`tORMa zKOBHWiJygJu8tdetCaNY2l?l_yz;wq;TOJL$e{M37qqe->dkb}ZJ&OLWh9n5Y$2^S zXvAHc+373h^Dba|97x+?wVg~_On@~7Nz5enzq`IndyoDjR^s6^l!Fbe!t^Y4Ns5#p zIAV|9j>f6c6w+Pj-?_1~rE^AxnS1sOd3vH_at)HTWNaWXhhoLhY8+=1K&Rq6sxDsJ3p=8Ey?OU z3+En@G3AWF2af~j`L3g#2iK8L%vXe^-$Yck#WME$UL0OOwza?Fw;~YrSj;pCQ*IH@ z%^S6u9W_$A;0rRTLzcHIA8dIQlwxPK%CTwEYz!&OxC-1opf?SE{4q7b0TJ9R$DMq(+z}^>_0$2SyFSgA zt@lvZ7D?APd`r%Fje5;yc|H1qZ%mXnL^{NpJ1mcNv8ysqgfI8>XKmcwf)D7lC-Wpi zy2mKt6(O{Ji7n_Rv#W)1jdZX2>EyPrv-PC}Pt0VV4u9w7e=qIJ&ZIU`iyyuP4*ndK zZri_fSt>Zx`8DYO(KH%8VH_rXJA~Zd?bfptjO_K-dV9lh0bF4AV;|e#yXcR}%=Y}j z@pa!bCgux_P0Po-m0mj11xh67_RHM{B%nYKEtW1{o}>rw-{pyT;t&zD#}K26c&K6kOsyz>#Cukw>|wSs^H1+E zPwybSs2?|va*o{fQodPq4tU$8)u|V7JfHS)-5dG^H+9xyNh&KKF@~<8$>3>OZVtYe z0cdR|w`J_E$k_bM1t&u~eW$=-kq3a0NasMlON0JIH!xczAc13Pp1D=o-4^C>YlJVg%kU z0sWRXwc79jN>qfHFDjJYVSw!8q&+v<(?V{%T3KTl;IYc zK>3gkxEkv}QC8<>Afs`BN{*ozZ(jKRkG1E;%KX39+fwfH|7Z2vGh+6AuwqseYJb@U zIw;)0@qDZ_`s(-gOD!P=st&pEU-yz@t(k$Ll}*$M-+{F7Q8G8S=s%$lm{96GJ^=U}dCx%~)6tTcj~-b-r`L z8>x$Pi-!=HrXDTG*?C{rSF6G?;X(t0FxS%U+`N=hyjIJ8*+0sDnW9$CCQnZcL13#o z^L0j9m*0*tO_rU%9DcJBG3Uq!`ax7nEtHmF*;K6~+&EEZ-{Mpx{q}!xxxZ)S= zH5ZTaGzrH{IsF#dRma+4KA#xJvab}>`td)?9p1Rq7;t98ok|4H1s#Z~a#X45A-1ws z=WEX6f(D$hbRFWBIR%|oZ6oUOjOd;pz!T@gPr9N47RM>hk&36yiV|~1t76z5*0$3cw{s{$B2wmKEb z<6}5ic45A<%e&OnK>Lve%*1KVUR5r=Z3z|IY9HF%p@nxb1?=|Ciye4T-)B?}B$~MS zsay8#CW`3QLy^KLf5C*^xOC>H3dc-^GQ~5fPN|&uPg58iO0~I4YqLl7zg4L48uA@| zRx-ok=!}vE55md>`(+}}v)@XnWI@}{ z1E`C~#TE5~)5R-aL1U&7F_rj6OAv~QaiUl{P6?mk*s8tPdR%E%fDl1age(M1W&Uy*wHBK0h;lpp2_2;qFj zsx_Gs<21RpW<#;f&R#-z-;9k9p0Dcz|uOUU}b7RJk*%WGQ<)TPz}eNQ>>urL~Sa*Wz)X(Tr1VOCwSz{DOa2_OM0 zD`Wx8v+8*_rd$N)UGcC+&Br1w^Q!5c^SZK-Q0_Zr1}|8mC31V+rh^C))^a$(IHrqM;|n^{-R~tA0YIrkyk)f3jp}UksfDWMx~Qum4&GxWywUX(_t~Dx|q=K zm-F+@%Rwm3n6-fjm{qZ1lCGYsts7;6zwxtA8IUjaXZ_DQtc#~ZEY%c=${09tw z8F*kARzC`NpTt~O+RWD7vSctdvls1UU~S|6a2i*sVgjHj&!A#EVO8q2rw-p9rgC7N- zH(0!EpQeG*jF8b>ZkpWQV(ebhdWO%MuNlii6$KEVK85ohZ8;|rrwejwU7$HGSxbi< z4{;%+8J&9qKBNPmW>obFhazS6%lBIMH!{vjeA&3blg$wQFKN~8LQgsk>LO&xbYfst zAu1`F+%UcJuN7b{R*gOgcI9zGbyUBl7ZFJo_Fj5*6TVDUJRHg+IJC7l8s4kP`&+)P zw2c()FMm%G>?e@Dhqwbxf2&#UvoI&80f5>iyOBuW;bGinOQD{XD|8Fy2KY`+XsaMF z3W!h@b&Q>rtBt7!PV~to5|}uQOAO(T*GTedB40RzYGP8z;uAh+jabykI?~a60!$E) zR5chO)xT?`;o)r86F8Un**h_H8)3O7lsJqOK>$xsQv*@>A?sS^h5j0;0O4Xh0148t zOn$3}r-Z zjV3mZ_=ac+dwXoX;uF>;n+LxZdbR$6Og`K)W{Kz9$2o2Tx$rEVIBm= zE=ZnZno9zhdwci+&I3W*nU-ORVXh;nOeuInSQr^u`XznPnc`G=i7(+pn$2%VnNS>Y z%t+#eo5pB7=|?WtkN|Q$oYZ(`ek^DOtJaa|a6V)Ue+%@}yh#nGD0hJwe8W<%bU`?g zCZ2%I?&qPfSR~dk$uNmN4Y}XEo+A{FOaiQCo(u@`15YSNQJ3#V03~)et~TST4A_Y@ zoKHq-qlb>w)!b#7Av;rlD`?#?G!x3#(7D^Im-$WMaj#vt4zUp`+Ebm5MTObwt4wMW zW>oG9oy4@@fRX!cGPG6>W$%2KQl8wNAxIH50qZq8i>65?J|K^po~O`i(Kyv#16|5` zu)=w2L3`QQoQ_3k)xZ*a9vT5=Wn>H}!i@_d^^ZGoB-DPL!Av2_ag1+B*r+m7oeZud zU~k2gDF`^EnM`tuS4O^M)^9CcjI_vR#@XLFBYN@>y2Nf5?O5w|Q{`Hc+(DLCf5X{B zW`>o~f)?Y3E=|nk>){q@i&T-2fOW{9Y-AawOHA|Ln8|Eh;p+lpxNN!}-l6Es-cG}h zIYe#BihN?^^n!s1m1lOwxQtlf8UJUt`EyS&S?||`jYdvV&Cp%CRy0;;JPKw2DQwra zNXBW9>m0ocg;{~_YYGx`>ih(wB=T2v_tGl)nhf>ubIi?{KiOWE=)tvdE!G>xpGAyD zF;i97lzQ6EUCPA4bjfqbH(yo}r@8=zUNIO5KGpnMS$QJmgrT;l@Ys4z{3lcr2drA^2nFFr*J8k(9{lg|4 zuo<~fCG62~jXWf5xT4C*!Q-?`Y=~%v#~{l>Qm6l@R%%nrisISDHmWdXWT+#kgqK+? zxQFAv%yHmWzqiNBQU1w)uiR3r)D=g>)9L_X<0Sq@7OU4h!yJ1hQt7)47h}R{aO1L- z2SP1bwckY`M+k3GX3)mTHLx>WX6k1b6QGW%we!0!eJENMrAvciQQ4*ro_5Ms6n&=3 z;nu}GP^bRdU{ zQdL)5DX)@ei)2u8Qr?H+$8ay3MEQkV#!;*b%X5SpOR$%{Hf2&f?@1;><_Pt99j`^z z{4<5PSKcmGKZTw{s7Y~`mO`=wphyP)WR0D|W!R3jldopiwT;TqG(&lZef3ht77u$H zg|?(3lj@Faq*M(hrV1hH!UaNq+ekq;UQ{)7x$SeYjAgqa@|cI1 z6mTe^D0>=VI>lXetJqn3n*96dBuZL6DI)gdsQ?CfS?lOgH#Jk;z9Q5iZP!<^Z_({E zYnjh@DdACn+DO?|w__X)Y=}rv!sNuFy?GQ_#4+!E5?aNpYq&4bm+W34G_xD8b;5 zvAex}OWH}SnPI}5DA00=ME=&FTR5!p@(PJZ_yv8$!xBS=6=WGm9c7(iJ)wZnZT;+_ zGmzB%V+l!#dOgf{SL7jeoI bsj_;=Ys3juUvujYKI2n*(^?AtMMnBRhQe1& literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3session.xml index f2afdc6d9..3492dfc46 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3session.xml @@ -3,494 +3,387 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - - - - - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - + - + - + - + - + - + - + - + - - - - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5e0bbafb9c119bea7d5add6193ea2e2b75bb3718 GIT binary patch literal 6370 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3session.xml index b66043cb1..9e18f6394 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3session.xml @@ -3,462 +3,370 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - + - + - + - + - + - + - - - + + - - - + + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + - - - + + - - - + + - + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - + - - - - - - - + + - - + + - - - - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - + - + - + - + - - - + + - - - + + - + - + - + - + - + - + - + - + - + - + - - - - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..91cd919472713f3ac96f7aea6e590b9947204202 GIT binary patch literal 6058 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 iwi3&{XoBuIGhSHqMAe{R1# - - + - - - - + + + + - + - - - - - - - - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - - - - - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__structural_valid_message/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__structural_valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..34ad5e3ca624cd2c8feb7278719e8bc435b30278 GIT binary patch literal 20081 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 - - + - - - - + + + + - + - + - + - - - - - - - - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__successor/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__successor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c371389108073cf31d687bce0a7c17bd9aba8dde GIT binary patch literal 4767 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3session.xml index 992612784..882d06c83 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3session.xml @@ -2,53 +2,39 @@ - - + + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8c183ee910666f81f41caed5e17627efb91e6331 GIT binary patch literal 675 zcmV;U0$lwciwFP!00000|Ls>zPuwsNz2{f-URCn=+lL;wpdxXs_G(SWcCnP*O_MBw ze_v+t@rCvDf|_^PdPTh)2=Ip^AD?7-ssyV z4-;Yp4=iQMDj_dJqJR*GaIvkmUS?L*bQ26y-^-G*2rQG#S!hGoSj`_ zNjNuHH?goH#gX9C%uXoTPcu6S4gbl^j(>ehw7H+3e+#g8gd@8cX;4)WqB+$4~gXDfUlrDBj6usy^#~()F*NKLm}t8D7$-VL6Q&_Q@`$RZr>8 zHfvZ;x1LnY_iI>A!=7Z!w`_R-1IQ_zKq`@V9Sk|tI=B>-RHU5Mj5|>~#l#o*VXDL# z2ktN`V-#{89BCs-*V0j{LtQ|u0%K~_KtX{uOlc#m1Y%kn3{eTGOgg{Dx7Ew~5 zl36r{0u#zWawJUwiHaZ^p`4Pz84*#VF$hRW3T30Uyntk-WGxDlNL57w2&WTCCZJ%6u#B|^=b}I-3rJUip))pWRN9&-xZ%NyvT9gHj!U~=r$2(Z JzXQJ$002VyL$?3` literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3session.xml index 1a204f08c..23a1cc9ad 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3session.xml @@ -3,134 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0657b7fdef7e0b8a022ccc2b082e383da63f25ad GIT binary patch literal 1409 zcmV-{1%CP;iwFP!00000|Lt5$bK6D?zVlb~*6S|zeaJxX9gkomwKBNSgJ5lx^%s0E_P*ncx)phq}v%$Yg*QMn{Uq1Gqf3m<$&;A^oJBHZ-Y>)AAzUb!{c=dec?diiYfdJY=yndrVQuGyp~MlCJQeHUP&fiPIkS6D{I)LL+4C~{mJ^Kj z91q^%Vf23Rm+XIm$?{Yx%X8HT&QhbkGPg3fGWQCZ%U++st^4JNl0TEn9l{#VQ@79c zd1R4lD@1mJm|&YEX(o`K9g-d`K6h1RtIGa(m2LV;$4bXa#|xq3&uw~|PeWJhlIIC~ zt`Pt3XaQhiK5PkgT-N7CEmf7VpCMzi>e$Wc*#3b(TrSt|-d3TiLRE$8#|l+5F7$58 z)gy`;E@m#B$y5~dWGV`3if#~Kf_4yg3pyaqR-Eu$M+ncaA$@-xOopq!Gst>t_#wB3 z-FwT*>x<|0ZP2>1`l=efOKl|%+%)4Ar>a-&N@`a!iGEGcOH^WC8L@AJ*Ok^+_po87 zV|5jqDmGPYE<sT!;qZR) zyZc*qFCexHjV~M8)*Rd2#QV%j`bzp6BmKA~$^TU@W=ob|J#9m*q}9kwXX#tF~v z@28q3XA==2DCLE+A~_&$RUunqRHD!?@;6Wo#stB6Cj&tNO)3~DsW@Q-`j87-iPss) ztR+ea)?!LfJS8iH%rW?wlreI+UXw6o(1|FLCCDOs7Yqp_F-4V)Wh2#O?Xn0a<`jh1 zF3&oO45?7&BPO1_ZFL6iU#fVVIlDloTeGWFn&v PR?z$lL(*?&8e0GWkfW;H literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid/why3session.xml index 69d0ff87d..eb6acd3c6 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid/why3session.xml @@ -2,42 +2,38 @@ - + - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d795dccbed6e4880a6353a42369f1c0fcb4d75fd GIT binary patch literal 599 zcmV-d0;v5TiwFP!00000|LvH|YTPgshWCDo?z_>EWXXnhF^hx_l&*@m;^^q8HFz#q znvlGG7^l+JPE_E%2{j=kg(h5Cb~r_U|zcm(KOH+B&!5l<*5X7keIpqurP` zqjLkM?A&(b(80&@KjX-BJO39hv{`4qEK~PJsR+|{==0t_A>~VqLs;VbPLL=c%o{iI z_L=tI2bnTvzFQ&miNeC5(t+;W94Oh5MHZIh1Dq1Uu#;^&bwbkNE3zX22cuQcVU6mT=KjHbo=u+bM#@>$-hS;^Tx5Ryw$=ojzN6xm1jq% za%OR6@!zvpYLN1{qr4k&a2GiA;dbHsZFAm0XJ}6h+H%NCTnuMcXI4*|)x7*PV>x4a zYFPI9C!6TvcPD~7niqL`=1q5|`w!_}oWunW{CLB2uts;LvoBBc!Cj*{;PueMM7ydI zwU2Fs)<&&@f~FNMwGe}B4Kp&ofe%eZ@+1F-Cxhl8~%I(J0no%C4@2v9&f}WdouZc#o#>5WV+J!=-CQ lWU5*Vwh^!_D6Byvgi$pqC^5 - + - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_context/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fd49295060d6de2364bfd1f59c67639e0654ff30 GIT binary patch literal 31994 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3session.xml index a04c1be29..35aa2d5ad 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3session.xml @@ -3,1124 +3,1051 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - - - - - - - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - + - - + + - - - + + - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - - - - - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e23d8c0b152064b0909a2bb813040a2f96746bd4 GIT binary patch literal 19872 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 K-ifob#{>YWy)Y60 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3session.xml index c0f8578b2..7c88b673e 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3session.xml @@ -2,27 +2,19 @@ - + - + - + - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a262999cc90f69967f9bfbe9098daa9dd68317ff GIT binary patch literal 311 zcmV-70m%LziwFP!00000|J9SRYQr!PhIcU(zCU90*ys5g-{Q#lf+6wJ&gDi{ z&Y+v&g1aG~A${P$1+MXk!8;ftJ0?!)5HFM0Ra;!|%cb+*XBx`~h&*6q0zijwt+5R! z08iZj&`msiXMomoa6n_6@bF_7KpKM2OJWY^KO*VSXFg^4qNZOYxtDuEa`k+D;lH9M z@WsjN!-$ag5+NT - + - + - - - - - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_value/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ddd8ceefe98e78585cc96ac0dadb030cb783873d GIT binary patch literal 1473 zcmV;y1wQ&8iwFP!00000|Lt7MavMhsyzf`!69&LM4>{!GiZ3~(eBGJ{#@>oZG33&* z^Yy`MtDWCsAmP?QoaeFCMje- zO)#u<^@4H5_W$0-S@FIj+04_1NB&Tm8@JQip=z&QHLUc!d>S0(04B<8FvQWpJ(_V$kJZ-?XNw7a?LuU@NLVO0sJ1THsHC9D$mUI=@( zXTQxe|B*k+Dl_l5Jj*HCUXD5K;l75e*X~!CReh?ydr{x4+E8t%Hooo7G%Y_&^5XvV zUKDD)dbME%R;8`dR%xH!_Ed%{LzUrO?y$SZr>nlx+iR@p>ZQgNRkaYc5VeqRvDCUH zt8`VmD&0Gi?#*}qqo7&r%Mlh>hRj;bod(rC+$B~QQJV5)I z=>RI+U~YOIoYdRY+tk}G9S~HqDp{56eMt6}mk(#p2#@>e?eZTg)<1$i%vlaPJuP5` z>rYVdX@pXvQ=?O(yL@0!)v9V$wRfZ1TV7F|Ju}G4JiY( %929~*cE2dKjJr#E;W z-_%#tS6`;DKF0#dI?O`KHerbGg6|O(U!SfiWhNp(7hW9Ne z2$iqOSLJ(u^1bD?#`L$Z`KOmNR9sNYSG>LQavkpi+`j5pS-14l3u^g?kM7*kqc5o7 ziyu&aa{pndm5Z@0WDLQTYQWjXV30yIm^1$XKNAd;Lx}~VJnPWsn0hH#*#?tbw?0dh z8C>=?W!X_oLhFq6g$i_M6U11OAqm1En(P9EN}*!R7Hjg(#8%L8a|~`-Z-8Do0|ksO z=A4Z$p%)}4%4CBOB*+e?WRPP*fNV?4&b4lH$q7nEtR5xE4P;FB(7kWTHBR7+TOtET z4!J^-AU{AV7OiO(*f-$76golA&6vavm*v8ci71*HC;~QugcMydLFzOl2`-7pp%|#H zgCR<;y3*JhLCpFPr64j^f|69{Lyy>E0*Um-H+0d2-Z-}u!Ap>IM$$)A*pekrls+stfEzGHD@_$# zN^s6c>pF2MMNaG*!qV5+sUVZB?`YJ zk?MS^3%$?{jY`6hr2oD9T$0eGc<+cpBImg+QGPI7Q<0vC$XhG&9bBwXd$SR0YEMyN z2*D>Y10pG@^kNFf##F@*1pMcyI0O_4n21uHC1Eu5R%p>9cR{i(0>UKzAbd$|Y6Iyz biQ`CN(j>#eHfi!AeKY(8&>{7oe`Npw99-m+ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__verify/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__verify/why3session.xml index 6b35f48e9..242980c01 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__verify/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__verify/why3session.xml @@ -3,3316 +3,876 @@ "http://why3.lri.fr/why3session.dtd"> - - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - - + + - - - + + - - + + - - - + + - + - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - - - - - - - + - - - - - - - - - - - + + - - - + + - - - - - - - - - - - - - - - - - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - + - - - - - - - - - - - + + - - + + - - + + - - + + - - - - - - - + - - - - - - - - - - - - - - - - - - - - + + - - + + - - - - - - - - - - - - - - + + - - - + + - + - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - - - - - - - + - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - - - + - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - - - - - - - - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - - - - - - + + - + - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - - - - - - - - - + + - + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - + - - - + + - + - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__verify/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0db9530a4ee9c7250ea82924ad797adbe2fe8943 GIT binary patch literal 14430 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 z z39RNaTKkgXl#>G$R86j9&Xm}5;9`Fw4jIv!zmdldPRgn%v(ySLj)UHWoQ$0VG@)yv zDdGw)e^E*CX$DDp|9WdfvAWbnU1fw4279>(Nea>a1i{5N(NZQLNsLOabcbZ08&5snCiMQ9i<*S(`915`?dSRDyz#LWm%U8j;9K zRKXHF3)TP#aRC~!LhlT9%5g8K!dj9_4grs$Vn4Kq2T_vyYx$>L-*{l(K#Kqv4tafD zw+yx?v!ZI-ixN6yLM(T865A^m zC<;$_6zGB^EV>KsdvQdeR4c5iw+3V*5)mh=5MoVEt9ffz6UcIui-vXPdu)1QkvW%R zbBIHIDzR^6s5c2Ju0;$JO$9n)!p#-9rAwN^=r@I96c6Dh`Hf+ceN1F9vHQ?u$*`?g zlz$XzQ?s*GhY=4lV6kESpqvFeBO(r~Hq}13O^!p=JHaU*&@4NPL$&gFc4uhwiK~bxQ_x@Q>kDR zS9jkQ>g1s2l>{nRe4f;^e4@tGEE;~5Tc)-PyQYjXBUQMeprfUZ2zS0x4+*0LdBbvu zALFX?9AM)X3<#!3D2D&;J;R(jTDOi2i(l}QjHUZ}3)mk~ua4l!lEh!8t`*D7q&3N* zLOJ`p5>F|y+vk8H%F4*^{G!efod;ml;Xq!8c!fllR0~^kqSAfVR1kq zDR?9&x=qB&MUVbO+fj1|vLWj4Rl-s$N(Eg)odsyv=g;3@E zRX7)7;E+n1WHxB30jm@@ZbA?_Ng+EV%0IpJ?#MwEZh>^W)Ur`j z7F1f?P?Unu=ePwED72v?7c*ymb(qA9&U&a64;IZl?&czKk3mT9!m#Kw{1sz zC=vYvMPw7aXscS}sbZpfs*dmA34g=iJW1NVEf(i{MjVxM5 z4qswT+ixdN#p&&=s9h$eS+e7tesAqCn#Gk2#!yackI+SLbP@f;4Cfcw<*tG*lTD>7 zaP;1u646xUgO$1aWl+x{f--iJXqGAPy;?ia9?nPoYmqOyYo0lx&XjVdr`OvGZu2bQbZ_osW& z`+>eu6^-iaRRS4)1+2qnH;&xvMcpWSy82==9(x;77}dT01~edbqQQtO$%2hUk`SzikNMVk+2P~8c>IN9EU28Y~Ua8x}KSZI@{2; zWSpPFM$VRnMFUjUP(p%8^@>_z3VNo=}B_vGB2HJNFR+6aLdMGkROMgvx|ctLDd?GS|_H^h^W zJZcYn#-czpwawrZ1~XsGRKRgV@LW~a!f1{$Kxvy-vXESiZnlO@rmVVXq1zpiVSjpo zVEfAf_A34-rk@fOXjgy9$zk@&BaZ3B$)U!uGg0B#8_NJTiIJYwQj_H^fg2grT>7}1 zA;o>rE^NkgmOT>^L#Xr78#>gp$9ff_-#kBGLMw?%SWg|Lnus z&4$7uo#spCul+TS)7N^e@}W@C-Zm>T4S64bWCVWJFeEr{YUy_ymCgbU`JtjvX*T$|Os_c%TD3i}7#& z2&+>c?Qt06u8`r6?xm2xnwDs)swD#Fl5UK66q;QmLo8ALl7QlnQ{=Oyy7H?{`FUX= z5n?j(9JFp4-ER{)&QMwDii)v<*O}rnVgkUlmZ%-AS}^heI#sJYA}u*|TPzx*JBXE9 z2F4ZiTtwtVPL1vbqROV!sE){xp2)3lkB>j}-hg()ARN?_v5P+Kz(!)cdq>cz29Fk- H!a@CiQcz - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__verify_message/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__icmp__message__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3aeb990163086fd569cf94c5290dab4d9811b515 GIT binary patch literal 1870 zcmZ{gc{mjKAIDv}8iXM^eo{u05=*YoWZgr|$SfxJeGX4!9XZRj?g_bPT@6Y|j&crz z5HqgE(PS(!7$MAtQ9nDozh6D=KF@yt{=A;o`}LJg<7NBn9dDNCpyk^H2KW98B$Z^d zmEPk7Ia2#4$d4SOm^RZJ#!a?i3)C`{k?$b+ErmU@g}UJZ6}sL7>5-L`$gq?pKnUwG z+Ih*rmwoMj6dc*xXrz8_y*#u2$<-b;^4|R*%sww9HcSzZ%>%_eZIRBu8y%%9v)oJi zfI|_cpfoac*FXQRh6x_Y)gAi4DhZ4{e;jif)i8A@df#8mDY-+GSOq$cIg*t;ORyTu z0*x-x8b9xNMwVv?g=2_uoYMWeRx6(t8ArPZ=y34VdLMr1S$J%0Q?BzB(bP|lc^z4r znj?K*)W6UUnm3i3Ka4HzOcflfqxTt_9~tX?zo&HX@R(`fL^q`^tKUy0WmUVs?7nn3 zHLBUV$Fu)@aAbr$@C1ULL@SJ3s;|_Y8neyUIsAG2P&f^sLPNvDYjq3vrpe9*edsdc z_LzJXN2z|wDuvzV?yI=m<;4;08&kO1I4iIuZN|X;`yd=)Q{M0$U8p!cfwSs59)4N?s&9OQm z5aqpQzDE>iBLCxlz(ij0G=>v0U5P5t;LV7-F$%yAXDHMjG4}IqTDv9R!aLGq0zdDtx#4`@904eA*nO5`g1xqaGscK#lnP3xI}$L|uSAB3^7j@? zzWM*J`bKQA2qyw&>nri6gSAaxbGr>S;xKd3wU}~-Ir&*h@tO-Fq^DsmZmufo%z8yWFDO%*&4lTqo&S9uc2XV9L1 zepFjD>0~hi8p6$@SpT}(u7sXf1Hm+2IM*u^2U!x2za*IdNu>WSVa0r#b&t3SfR6t; zi$x4Itg(oG)~xRc_)_BELdw5|{2TGlkbtit$*hn=F&Wj4e61&uDgPEC17C7uzrNoJ z0ZTI;9JPvngoG^QJ@}9{{{qpE1~NmnCE%uec-X#^pM20Y{H~E#{(cKz=j@qA-h~1+ zM8ORwknifUqFLk+F_sqLg1k**DDAMlg!K}sS6#>>(a%}0ip}FOYS@gl zdlOB4Zpj0JX|f{X7FJ(YepR5FEOf=p3GbkOk(l6|m6DE(cjxI3d-q$ovu@|{31;`! z*nVjAPeEggCu6B^wn^l5`c=BDNh!XK#F$msu0Mu!w#5ivsPbvnB$*|iJEFtio=Q+f zq`+p>1IWjX z%{T?Io2>(srG$L4`13cy5E-UoNnRfJVuF+Dtx79u5nWHo{VI2@&z#Rhgyf^Dl3Jp* z_%8&hb&Gnr`}_o?D3^j+Jj2EzozLM7*>nY=c*TFwfuU~SkXokiB?9#jz$6ZZ_*q;7 zrz3Qd*KjkL+;fk^LXSQ1bbQto)gG+n|w%m&+l;tW+c~g@4j4djjow1LJCwZV#s(+ zzkxK_a17A^mdSX+K(F5z_b%fYlPlo5j8>m=gCQhEGB*^A@Tm;Gf2y;h)W0}A?QC6w zT`C{7hHh4<0lldqF3%2>uN>|>&H~48k3*Fz1Z0P08VVK?EnA( literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__contains__icmp_message_in_packet_payload/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__contains__icmp_message_in_packet_payload/why3session.xml index 4cd753de1..bb01c4ed3 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__contains__icmp_message_in_packet_payload/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__contains__icmp_message_in_packet_payload/why3session.xml @@ -2,41 +2,33 @@ - + - + - + - + - + - - - - - - + + - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__contains__icmp_message_in_packet_payload/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__contains__icmp_message_in_packet_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2e3b0e958ff6851a8ea255f1a913747ad98452b8 GIT binary patch literal 739 zcmV<90v!DxiwFP!00000|LvDOZ`&{shIjpn?p;Lj8)ybEMGXY$Qg|g!Ax@KZ@Z3>xJv3ESp-TvonGF1_rMO9V8g={-0uo*3u}t%9@+w`Fg%7IZIAF3$_^LH z;gaBO6MmcS8X8Q(^a?H@uj|s_9kghT0S9JvZGHJ*OwrskV;ZnG7>u!X74RW0^4@!F zV_4UeMKHd=(si>mKB)S#G)-N^z;^!4JGhvU`RWp`pOP?=3OyLWJ+O*g_P3~Nl zv3=Xs?Qqw2VNWvr#PH0cFVb~;iO7svBH{B=A2~%}2`{bBl1a3@3vF*h-$H5bp)B0k zMOe9>EnSa>e!tpuL9sNpX|cnF-@{w0{js}}ymVVexr;K+53)G)G-juZRS{yq@~ktq z3OMA$W_SJeImqfW(Ik}a0Cu3WO+D7b|o2vd*9ca0A$ecy1j#=|Y45f}+ zJ(MRjg~J9b7a28_pvNse^ZR`pPH^*3o`0zHUZ!mDGn@Pk?pT*Y*uLDU=!|a$?+~}; zQEtm4+&-!C4^8HnrIOp^J_(BlMssX|+vuiap?h?Z`|M8O*l1(b-wyZaW_*}g{?2EX zJu&gUyCfcQNj}9Tah$B`C|T88Bdf9>0C+tBO#a`mtq&%Q$%M&s{zSiR zWF$$hl)}_yH1phxOgNFECsJE$8KlmCBHv`9Ks!yTV5#DgN+MmxIQ5E?RHiP?Vo(}U z!?XmI^_h>R3hq_4~bJiRLVeE>j~Hx#1l)X6ojTe3YCy^4w`8q Vq5y*0(>w-= - - + - - - - + + + + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - - - + + - - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - + - + - + - - - + + - - - + + - - - + + - + - + - + - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__contains__switch_to_payload/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__contains__switch_to_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..329f36d0c2403de75845979dfa41754166ba0a50 GIT binary patch literal 3084 zcmV+n4D<6JiwFP!00000|Lt8%ZzDGnzW1-#+a7`dWbqAT0{CJiz#w~B=qm7;5k{6A zNuJH**Ke^~Z?~kDTK32`4UDa!s;i5v`aY7yR%!9s4u`Y&`0t0W13DnT z4C^=OfDPbx8@^BM!^jUulW%r5vXjNGfW5cld0hVf@9e4h)p8l#xnm>x?5a-#J)rmb zuNsj1`zk&>F1`=vU+iP77W+1TvWsbMu(RlgLz^uh&eHgA?91afJ{&&Iri-bcj)%iI zd3wNi=a1vjVwgs89Om}VxL8XJj3;-f@1&xylj;8^YfWJ^_p^OXbx*RgZ+1KisF}jL z>2Vh4ak9vbYTfw7&WG+Pr8rw&{1-Nk{KMn$Ald@+0Si>H|#51Rqoyp0MdT?+ov;_DViHKWwHc<7&I^XV-AZ#G}FxWAh& zKbG0-pJVyPpr~#PimHL)KCSib)$dPTJtMb8#j ztx1S8UpCb+)ZT$KB|GXC^6H@iq%4exM*)(A71e0H%a=c6 z%r!%_Tne`mTHZiDUrXid+n2b__00l(mk{XzMub9%9~?#>hZ1xCqtHX4he8j99@^;P zK1BiRQq+CQ{qGU^3~-Hwrg)35yb)C5?tNmqVtD_d32wP@A{rt=zf=?|pR(*i8}9-BMRuXY?Ke=feDPEXzgybHPux(m8@wg_-|i%>tUgtr<^Li~FG%M3WmFR6fj z04{*;TmXd&3KzU-F4(7n%KoxV0L^5#!G8mP`mXWc^clLZ1)$)+;Qux7{~AkyOaOV} z{|UkGY1sjk9Y8_-yPNfo>;Qlu1Ju}8R2eM|RkE-^VS&N|ABY9=vxE=Rfa?IS%Oaq_ zzrg=P!M|PvEE#|z1C)b+!T^N?v&rWrS%_SXxn|rzL<{tR6qD}xjprr9f)&gC8dqB%}v;aRRRdih8%DPRexcxIG z`vdy?5t5~ITOJ{~-#uBnmDKX4;zzf~%@5BQJI|ZLiQF>mpDq39-16$N-~#yq`2zV5 z0r}k(Q7`O8z&Xs@O1x*Y)5|gMwTbtIdG`eE!YlCZUSTr^ZH3M10Iox#sS(SlUw$z6 zZm(6ew({0i*4hfKt+ch3w6&VHM%~t^+8SH?)!MDrUbS|ry-(}L{en{Un?Ko~`z>tx z0;?$)`Y;VUpWe>4}?t^41j2Y>DI7+Sd(+jM^x?70=+od)|Q z3T|T_Y%O`#(8Shf`0Iv389$0L=o{pWLK*LuGIsskS}b)%5dAjqjMtVj_N>fEJ4LmY z8OfKoFY33dj1-0|i=qPrN6V_{*yj)zSIaSQ+9k)(ZErT<*GpJ1)8DQ&qv=izeri|D zR6~sNP$eU}SN`Urnlp8Ig{zgnLB4KmVVBtQA|-?JjImwJ=;kbwZ^EA)zw_lNLNfWC z@vSeL)JmbBLO+Fm-U|KHWeZwMAFfYvUhEK)UVMrP=jYO)HJN@px%9VkirMajwtPCh zg>%evOXWcu0xmhnJm(nm)=n`Gl|$W{xO1O{_P9)rJ5Y{Du_@hDn zzA=3Z3;6e+K&;+#Pz&PU&b+95R@R|xnwMQXwMIq20t)fhF zueISJB_qJ508D9!$)b>~&{S;lzLaI`NSu2GM#v~fRavx(d z+M-IlJI}Y%m5LOH(JAHw!yyGGEsZ`IBBdljWFb?Dq%7B9BXFmapfuueG8SbJ7CTvtuY!;1w96 zjdIC_$N_?rQ7ENk#0ZHdOR*|R2Qr|UmP;mVB0{UkoeDv6!&S&qypqv69W+%@Qel#` z;G~jFAq{Egoyt<8GF0L%EhMj`Ajt~D@Fx(enN|jByJTe)Mu>14$K4R7tkp3Z@c2(V zWkvQ5Rh5+~XopIeRXE@#F{4=`1R;Q~JS8Ookz*1<%sWaE(2_xp98i@6ONdM8WJDOpH5oAu#g(!cs~A05N>@Tj z#WecOS&p=XBOn6E1l~rEQ6RIFsglBArOY!EG(v|lG@W}S8=xGF%TdTkh43UYaly5q zLZN#@1nHRz9(gT>tc%f(QpyNwa3B&AWWbvS#gRgsO`1}4W*!L!l`|3DubITIxq#?I zc@$PkyOeawWXf0t(nJB;K!`MH?4$BLIm3Wx5nRdyz<9-|w9;XmGfk1lJ<_Jffk}u@ zrMb%E#YDv&HQstE2#YK#X%&e`$v9aiiWsVO$;u)IL_%Z1ONX76k_$wm%gQ`8bsy0~ z!FVGis$)LI6ajo9U@%IMsW9fUl&)})4bqtgO{6j=SC)_lNDL8q9!<+q$X_@u;DiDM zSpo0I9F74_8%{Znlwz}oIH??WQezJVGGP?RP>vwrj7pIx9O7&}$FX-lTMz|88fP*a a9nKgGqZS - + - + - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__available_space/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f4efd129277fcdec5fac61abdd8c99065c233aac GIT binary patch literal 193 zcmV;y06za8iwFP!00000|DB96ZUQk7Mf*KPE`YQSVKD_QB0bu6^lgvHNXBdI0WG%= z2&G7eXr8|GpB^MrMLseXqZ#{eY@riXE~xB@5I}#dG0j9$u3tn`QJHch@>5oxl_;U< z-D)L?Qjq3rgV%X9yZ4)o&lk>~|Hq?n3eR|dkB3{vNjyouq6)G;9vte0u|sP7oDXz- vDte>#gTh^BoaN=Pif#x?yXM|`>(-H-;ZJMhX817s{x#_rRucNhL;(N*$q89@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3session.xml index e4d1f1bac..0931b388f 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3session.xml @@ -2,37 +2,26 @@ - + - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6a85c9bdb071304212f8752c77b4e73aa86824eb GIT binary patch literal 420 zcmV;V0bBkbiwFP!00000|Lv7eYuqpp#qa(Uxrcy8mSp*m!(NsKLQln4F&d3pfunV7 zW!ZfD$b|fXCWNHjL+M_Ggdciu{Cl8sg_l@%ZsrMRCg(7qds^o>9-K?lUOBg$O4{Yc zIojpIhvHmJ^HQp8nZ{IHNDIviQaKEAd-WYJ2f&L#5WE<`XB`&4z2i*mMttQI6OZB1 z3ARUwFY2Y?KI2Uym+~Ixgt@F=@W*_|xW#ed$L+c_d^44MxBSA1oAUKIAI_@QS%((S zF{FL{wUU4=!RGg@RrFTU>or-*fh(aufbwbVN2UJv;=hR<-sg@fyBYIO9?W$eSr6^X zM?dpX@AJ_g@lmH9{eL~e^TDk1KAquItW&X$RIJT$TekUU9>Uj2Pfhz`(;BoLnLZdJ zS|5!B(ODUE2xuu1csPS^x`|!nt``+nM>c2)K`ASJh%tJN;HyY9t+9k%ByWj)A0=z{ z(CJ=VP$mdnMY6G?kA?|Q000REgwe|C2vq%gtfIEjR(2dgqm|$-STt1|dNAz!URhB^ Os(Apt+KH(D3IG67ztB1W literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__context/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__context/why3session.xml index a38b2a90d..a1dc3b8af 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__context/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__context/why3session.xml @@ -2,36 +2,28 @@ - + - + - - + + - + - - + + - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__context/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0f84ce1973b9d41c765692d8889f47712bfffcdf GIT binary patch literal 519 zcmV+i0{HzOiwFP!00000|LvI1irX*{#_xKH-b+EU{#np1_}08Yu3{vOT7hG`wouL8FmaXN+G(QHj4n99s z70Wc!rd5V%`3Jj_V)$5B>x;rP1iaKl-&xICm^;Ua^J8WQUtWo=RoA!4eGJX9OBr5v z0AI^4#Eie8F<~FBYer!u!ruC`l0Ys$CIV@&GYsDlJ{_57hc&6;k24M)Z(HS_qBvAHAF-ABhz-m~Y-&ED zs`-fR%tvfsK4Lrbd8^#V(9#M=TC=F736898;$1l}>@B~y{ND2Kr{xQ>sjyh2TwU&J zA0V#C{m;fe)$CKv|1s4N!o1`(NTWh9N(aN02?m(dEHbZ}_o)g%a`5|{wh@DLQx>$4E5C=P+5q)>t+`2{Rl J{ljM!000nn`1$|< literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3session.xml index 81e08c459..1ac88bc4f 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3session.xml @@ -2,57 +2,49 @@ - + - + - - - - - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..81b3c2ac3c7c19e5e128ae9c03c10796b49c4e3d GIT binary patch literal 736 zcmV<60w4V!iwFP!00000|Ls=GZrd;ryz47^FA9(pAL1bgUxEfGaw>8qmfR&OK#>%Q zHsZf8?KG&1HqJv;|qNb#9;@1`5srf_q+v*gQH{_Z#V4 z*QdH`N9RJx8zQ-dSa+>Uqb`UY^@!hIcF-ELs0p-ub0 z;QO#9xQ1qYUUwS>-S=th#vjmAaXXdYAGEL@!|;n1zdoy?Cl?y);e|@YL8W{a{oai_ zgMev{J2I(AzmAcHBk1e^U7YT`?Sz~CBH3yVP&1DJde+ufv!cs6bS~%7Su&kBqgS^`k2!n7$)AHS z&SQ(GlcJgh)y$%Rp2GEg#yA7KoT_wjnDi9BU;VmnQr)_=?J4K@ZOR{g8l3C9I_D2= z1I?Q9&w=n`m;GM_ef)%9ZJ?)vZoA~ccU|M?;dHd~Ub}9ZXKnU|v$rhu+p^>l%Tlje zmYm=%Z#3@3w`aI@Y|5kX|9pGOT(ETB(s@hgo%_V}F$pehJUG%aQ^w210v8LsOba~0 zV6gPu(sN7CUFO(vX7j-+t&mtM&Gs@&3Rfrf^WHA`!Ne41Pfs#sF(14~CJ5IWQ%*W$7JkM>nL+jRR{o!9hdD&LJ5 Sc1ZSZNIwC(17OYbAOHXW;AxTo literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3session.xml index 3e7cacc94..cb20dbc85 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3session.xml @@ -3,160 +3,148 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - - + + - + - + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - - + + - - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..167546f2d04852de519f0dce86048fb4369c9d7b GIT binary patch literal 2345 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 P$(sKIU#oBxLx%tWO0 - + - + - + - + - - - - - - - - - - - - - - + + - - - - - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__has_element/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__has_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c71c8d5958db8ecf6bd4ca66780ee0324acf38fa GIT binary patch literal 762 zcmV~AT5{kSgvqgQjC}}K3vyzej8)Iy3sK%S3|#CY+_8y z#ZYdC80os!vS!_8HSdR5`!dg)nc$Aa^?V*z%btbnZR9JQ%wXF(!wcN}7&;UCr+~*3 zJi?#rw8nKLxXL9*v_}Cjm@u*t<%R08;Om?H~SJ#o*6vK8jFp^|Fm&w+%@jroV$M5{T`g| z`cOAU8>8=I$N2PDxe?q5e*XmT+-f$68^j+5V&0-QUK_6;hSz?0;kCOH(I>R0!}QQy z@$|r9W5l*H4p|voy4N14Oh3r6*7RMR8a~WopB2}U#hiT&MrP$D7SPs1DX3iask;0L zzJTs38iS7SRump}5MCD@d{6>|GfJ^abVUnA!rPF&bvaw0BxONaRK{v)w33}SL4h^| z%2Yunb2RTW1|q4^6=0F-lr}ji#H_V4(kZ8{)u~t$1X+@!lkS3Zs7(r_Oz_GGHt{YL zO4e%t3M?{RkO_kH><{296q%B8q^*-E5WHlOeVs@`uAXwLUb_lHW{%BM_rX@31R;xD zr({MY75Hqd2INY(REZFaahX$Kk?*wRdTWO+dyb4?NQX>dOhFWGIYJ51=FGd==H|N={c{vU8P+ sPr-wLRK%!~UEpb31;#Tes5Lohs|oyU& - - + + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__initialize/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d667e4c49a7b27b049671ce1e99350e1c6e83515 GIT binary patch literal 2258 zcmV;@2rc&?iwFP!00000|LvSjPa{bZhVS(&_O{ZjM#_l%mWGkIplPYKrAASz}az4!a{`_n@ z8}hvWPN$cdf1R(-ZZUX1(R4M4+1U^%oSmKa`P-c+{&jYFdU}=bzjQ=#;M3Dk&l1mO z7sH&UGtRy?lMRZ(Qhu<>{u2x648ByXpFP{-o19`+N8@!6=?f z_>)(x{Lpmzbq@W5PU&J`NfDG)P8wy8Zz+9TW!p;M#juZ`Q27<>J2W-c-S*&uzn@5O zV3l6Q=7Y!B&uR8|p4iVTRho%zw^UQ;S8O{R{fB;|-zPRgbkQB(A1{Y&n%QR>&iY!N zK1>IWPWi{gzQHQOo@K-ldzdEr%Zh#@kpE0&I$tW(>hKH9-zxDcD)CIK35Zo4{i2Sr zsg4};U?CTdSgWLOhIu818CrSYb9rwB0=QAARs0=S{5e*D=AsYgqM_CN!_|DP;<#3b z=7SIBgC~dHeA0Zf^2zoyZMJE)SuQh2SL(A7nk$+su3WJcgDc)l(M+*4#h*u2xTRiP z!VOMn{`koL_+!lV~I~LWQa8;WrnklYL!3DKoy)z!HZq8`VxY~h!Jxg4? z*m%)gamN)bbrj7M%@o%+&8u>J==$xp^_y-UF2_` z$=+ct_%}s5c&n(xy-_C{>V5(04hjHsatJq9K>LsCnc$Q4ZxAO0STa(i?lJ`*>0 zHrw0f=FU@n32yFhwKvMmF#zB^1MgB~6yF}(JB?8HQN-+=S>{{uk-w!F;73Kzt4+e_SG+0?~ zIpW5G#)8IzkH>=REx~>L4s_A`{eWffyMl*)HgWXT`7yL?WO1)v7i`^hY`;~ZTZ04`Z-3!@zx`6W3hefk+*|A@z!;S zR;uKPr9of7SdFrH7riPury&0Ye<{^vuz{CDfj(uY6;gCwstjP9$Vo+x5}h?*JVs|p z8%sW7uu_mso{BfF)Ku7^bdflj%h@R_kWtAb3qnF6m6YZnxm~8Hva~4*nFK2Bm6sNZ z4#B!0DN3j#@3i*OBpD+gWjI7TDT;$6Az7P)k}L3X=LFMK-5nXD38I*f&!b;4;9%DLnuCsiEe z4tTo5Wzv)oEM#v5e_9fF;S$?iTc3jvHOP0AGy5%DAEU@onG{rx;DHk&2~%eWqVvhf zOl;MVjAqwn;V4^a5JYf6SN{TZd;*I~sX_oMYaJX!s~wcU&I`iSDBLnvDgvNHWxch^ zl)!Ga30z5RJXK;f9>`8QolS{B2k(uIO6N$4lLt~3by%E{+rjw&)*Dt!q7PUoxJ)3} z=u#EuYn1K;4<^TmuDB>eA>zIi${49+id0gKGF#^IptJfGfCkSKkyT4*Cl1`#A9f(%=-M)@ssnH+M- z1|)YcQ>93YMhfIYD5gQgiWt$kWF4>}s5qS@W@QvZOY_-D6s2k|gw8oBDJvda)=*e6 z=^bdvwRaMAbTtaQA`@Z8n4L&PiCD5`kD^u*ox@b?h_Xu_g<;&Wtcq03#RQ#r0@5=O zmpn$*6_$cOvEaB1opeTXDHI_4A~2|`5~#akgMuim5GZ`YqF5!Qlpuk2ZaFUQ>WqnT zOok5?LW9!mcPl6aDvE7bqb%c(x0`jXkS;IjVtG>R z#HfQH)>dmRMUC=ZNJT2hrRun*Ah{8-dYR8$RN(cLc({QVHmsbGddn!|K>FIX zAPiYv6SGcr#_VD4JiCah6$0;)_ad;HSX5`2V7yxM0tPXb>KtjisylZ&*G@WDw9{y! z66}gpfE?5cN!KC2m6CN2G3itsuY8UXTadNQY>^t}I~6!TNi70C7(AAmoy;YpF&db3A(! gJ#&O9pSV7W;c0cn3$MDaYOiGXe;d>7cM5a>0LYM5dH?_b literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3session.xml index 77f83b642..827c44389 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3session.xml @@ -3,155 +3,146 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..493559bdc26c4a3a2507aa9ca20ded558e800516 GIT binary patch literal 2199 zcmV;I2x#{oiwFP!00000|Lt7MZsR%<-Rmo6H;ao4u=pm>xqugAOn}DBW}vOXC$2D# zleU$h`|qbH*^ZJcCw^t}FdIlBhs7dUbQ8$YE4z$-HnTahvt^q9Tz_}>&Ae?Ev-a0r zT+L?gSBpRH+U0C^ciSvlT+oA^-$(qo9A>4P?6tjW)`Ko?TW8(v?R*x0JhQ@&i~IR} zr$pypY{q*UNt6FamG_m=^Z#Fa!_V-$O@Y=)VuZu#XvE_fa?JXLG__J2u zH>unc!=vaok3G${r+H8G9|(Uq4FB{%{2v4VkBI(#MY3SEVD-JRilIlOVF17NK=7bI z87&PcG0DH|C;QvFak3w>zhy9Y@jo-N_pc+6T(G$T_mjYnn^^$aJq;Mgz+fIg))d>9 zC+kQ&qZrV~zIeUq40McT@PDJ(Q9L`4W*5t{D|>Sr`WW>1E3_-LE3|vFLToR#ya8GE zEWQS8c`LHOA#6E~EFYUIr4)Sap?%XaKYcgewy_5BecKl=R(JEJorPxQm#gj#B(H%X z7&0C=t*MFg(6^H3FF9+I?|_I={4I8V5`^ini49{qXn_pE=jPq;&kSiE{rB~a76uKh zHl9q!GO}dU?TBa=hul2yKiuIM?sGJE4}3Pey=xnUZU^8t{%mL6LNNGxY-m8|uzPIP zH4lPt=-53up;lvq<4PFWJ-F_HxJ26D#?sM$RO(KVkugG~^`bW??Or4?3X zljEzhZ&zEz?eE9i;_Ht=OW$iy6OC0SlU*gpBx~Yx@q|(J?6vw84c&R#qRPU~PYdt$ zYhxFUDH>BW<|AuNCj;!H926BODo|A5^Q*wY*eg{);eX-(SKz;``rW9bz*qQR_+R+{ zx%s~(RMlR;x}#9|T=-o0{5kl1)XrhGYtt~t8TvO})9a=^p=g+#^29MYebZuchV9Ry zlSL;lTPOR&k3|uRA{0d^iqI*-qaOSlFWGhw&@aP#+8L>rQN98Bw8+l+WCu>sogzC$ zc6Q3nx;!Y%FU&8@zbNKE7970>&?hV0>yHFC8xY$~i>G@Soe)rRjN2z$AtPSFoc0%u zqdtoW77@Hi5$puuEPJxLrgC~F-9letdb$9k8$LZbeCUPsdPa|Rw2D9OY0$ z1a$li`FH!I^I*eQqobnU=TdJd^1W*d@kmA^ShJWbPkx{e%w7|op?4#6$I|>o0Xo*( zr~)0E#Agb0a5{G>(7}$10u=>1MuDo4*Or(VOnDCE$cxK@hw?m8o+rNW^F&sJKkaIr zl^u8VA^~6bmhkB{;1mfcZ*n&p@KQlv=wIkx=>KKuUqf}SO~WUlE6P!x9X_ydlxK&b zaGWdw>%FbvLW=+t0Vo3Sl3yxEYO^r~BgQ62f zC-%?@Iwlk&I`PIbajZ(b^rrc7zC{Vj4&z6bg0jPSj*4MFEts68ws`b%^jX7xLX+dy zy?a~abf=@+t&^AD;!IwB%{v)68Uin#4Vko)!FjU7&oJ$GplmqCsquPxr0m3$zR981 zbDb#rFbB%I^wm|x0u@$R8H8dnT9*izki3h|C}*tw8~l^;iiT*p1CgQ$#_9wCJ4IzU zjRGiev?5gqoCF%R4wR`t2uZ@pM2reRq~sBeXhpo`oJebdd8dgWmg9IyD5|7n67qQa zc>#uMG?JAPiOOV?Q8;1Fm_Pl_uB+%O}Fh)l-le71thDH21{PJ5j&g(e~LfNRM;wJ1G6?s+xZfET5-fI5z)}_o(TN6YvK3~CF+w$B-UV#~7arjrDMK*g%0cJY zQ(ZAE>pdlC9E1@WdrUc8s-ePgh$35=%5(gXh!&PaP6?2R_i)srD6IwrNR~fRK?avV zHS|(CK#XByQj9YZy%RCdi$R5Xc19b7yon?QhmM_)76|dEW02{{vfy%R9Y= - - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__reset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c741a4891231bf4d5466c1af61bafc15428b5e6f GIT binary patch literal 1061 zcmV+=1ls!_iwFP!00000|Lt4Ljv6@>-Pc#lE~`ksetVGx8#FCtIbvJ7wyza5G)uXFq;)7@bFy2RUgXy?lZT+eaYVcV{0_3rlH8O#{| zv%V*s;$lPF%l_jAKg`4oru{dcvFWs-+g10q-F(6oHC_H0ySp9)*A&_oV}{&)uG8X6 z+s;=HvTg5H-TZF3Y1?qO?C49^w*EdPTDNJw-gNotW?Brjz(*v#hXm(BJ-MUyK=`>J zJ4fUr#wXnD9Q--iBUR)Z%4$t<9z@b>bs|ByU1A85q!8P>R^ro_*vf=vlSe)*_v-^lX-_tVC zF1EANy6azn8SuSk1RmJ5a(N(^;Ru<}=FTxPixJ5@6zd3?2gjyL6yXwM+d$!YiWk(D zRPwrrf1F>hLaCriRgqNjBU1GTD^-b5jkw6=Y_wG_xG`o`P&8$Ha>ZIov1Kp@h^Qh|_Z~0q<>|f0vq^tUg|6ucO0fWJp+>-{^sn^4yq9l`{`g_I z0F({=baAlFb(@Ti<)+B*vhw5G^pw#!Dc(MJ1_tkzaAix`7M(kj^mLaK-{8>t30 z_W>c_O*Tj_f{185P>7^ikRcoCCMX4-d*^*jMry@?l2wX4mrAfe*~m1;DetAx#s@FC zf}BO*Boc!0Ilw-f_GL!FFduD*T4--ckci1TrMZ>LC_tT!T;tIsBf#eHwIac!@hR8S zdGINR)29GfV^qLwl#G)RC?`3(9I2EbC>f@D&jA`r6qV67LFQsW$hqNym - + - + - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__size/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d6b7bc0d0fbbf58ecf5bd2070299fa240a04d6be GIT binary patch literal 201 zcmV;)05<<0iwFP!00000|CP+KZo)ti1km1JK_4OcI0w_DMM)pIU5)qF$x6rhaOOcD>ge)o4P|LT*LCpBp0a#!1{8qNs^Wzuv)Q6#%9_$)`k z93-lCC1wlmdlWN8{dPMgtV2k$rDhu}KTecyKD?$vGC^(*(@{_S)Dz{M^eN&x@> D>~LZg literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3session.xml index e9c4d67f2..6f941baeb 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3session.xml @@ -3,206 +3,176 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fe934d106f6cca26a32c47f391ab88ed53db0a5f GIT binary patch literal 2999 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 t2{l4vLb+_kD(O-FNlQ - - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - + - - + + - + - + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__take_buffer/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..63cb65df4b4d6f83f6c7b8dac6000d2bdf74b057 GIT binary patch literal 1572 zcmV+<2HW``iwFP!00000|LvPiZ`(K!hVS|nd)q6A-#ql-ORxos-OEB(fgeMxv5xK9 zO3?iK9Z5;*G>$j6gjRKlBzEGA#>3&fk46;Te)Jz|>Hpr{;a~Kd=zsg@)5F@|E@QJ? z-}~LtuUp?VJKX+$`)@63S#y8mS9^SX><)SBICwq~YN**@`|7X{wXWf&dsa2OxvB7W z+dee=fBY7!mR|P%_m`)K%U&4I|8_P2xp9-i@G+x-E@cg9mb~di5xvX?(*tO z(=505vS~KkcDY&anH(`F&fn#p{^J^|3fU`4@-22z;V6!o_*y zm*nwiP#DdMRF4!T6)^HJ9>kC zv%Xucn(byuu6H%?VMOQpc|5+k_p3YXyqr6r*0)Gm`*iMsLrDxJa#_U=9%wFhluA;1 zKZWCb^|L~**nulJ*Vj`(?!d{}d3}t;9{3O!&P`;W$p=mFG93ZqAv4aO{i&e=C#V6J zW8++E3@9yvFM=>Pmobg<|!wFY`s9hUNC zqXbdN^+U)71zlH$uE(_kH(RCOd@PhIlq!_^o|GD(z}X}>W569-XW_?hXPmel1Fn#& zkgAYsMx?67y=~L$IKA%fQuGvp=GJ&f&o4{O8C&T`eBH*7}z%$nGRmgX)>Ybn&oNHU~tUNs(3JRf0 zi&0vPcLzT~Z%|ZxRVtpbh_6D!bL}&#Ki}M4eNYc2^Rw*m%5vYYxZF2`8xtKg!e+B- z@bl{ngm1-h4G@{_Do>$E**^CDA<}JYer#;zB>no&&WD1Bf``&%^o7&0VW{AdXc(Ln zG88ftGF%NArf3$XaH0!W3RenOX2g}zbQp?w0w0A9g$;!b*TIHyEko%Q3J(eou89Yu znuO9F6dDv7%#sG*>}Jumdb;m;a-&PpanW(n@l13)Ze{U=%umpv5TFpC5a2opaAN!D zTmK^x6bKXu6bSs{5Lmq3B%InSzxa{s5R1_tN*H(eK>%k@^s!quqnu0-%*&*V^U{a& zau>|F94%h&xEndn#j#DiaB>&#;(tFZuxROP95%lB+~L=VCh}ZWsI&7yMg~&nfKFSA z9-;*=1ifH>gFm>g5@Xsr6J%1xVQ?%e=3)>+#jK@KWX0ZR1V&o!yf)6Ntifmr5}4u` zY*ZERd0TpHUJ#IXVlQtO80F5M9VxaTS=$svn)Lm^K_V_@K1Oz$qCh0#ZT+ z^1vh`BUf>zRW|g4Dx%{7qlwwOU;%~Cwle}&xhRy0Mn@$%mntR*%Gj*vZ+djy@Bk`f z1PGcp2;K@7s3t^ISuvYkBKKV(0Dq@1-esJVtu-N;h$f}T&?*W_&^!3fN>o`h7Ntra z3|dN)bU{0rkR_UH9(!MMQeW@05|&|(K~e&xVp)n1TmqLJ3)Xn%IxAK2kf~G{B^p2k zg|e$p4K@SKf^dEAscM9`hNe=o9F*nR84)-q(ODj1(6X~Kl{BP2$D}9kfr+Fn4NWBP zHA~vF)LGd|2`x2A1;|Xhm}#n_$f!dANK%N-ifRI7Vk+2VZDur6*0~@e)7(%Nc`pmj zDyzVu3?hZ(G&5Q-gOU5}jprndu24BtPDsnVP^kk$0qw75Ak8 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__update/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__update/why3session.xml index 3c5e38844..1d9e3f057 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__update/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__update/why3session.xml @@ -3,277 +3,192 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - + - - + + - - - - - - - - - - - - - + + - - + + - + - - + + - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + - - - - + + - - - - + + - - - - + + - - - - + + - - - - + + - + - - - - + + - - - - + + - - - - + + - - + - - + - - + + - + - - - + + - + - - + + - - + + - + - + - - + - + - - + - + - + - + - - - - - + + - - + - - + - + - - + - - - - + + - - + + - - - - + + - - + - - - - - + + - - - - + + - - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__update/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__options__update/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fa9ae30482699124763352924d7b3c34313d9ce9 GIT binary patch literal 3116 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 G$N&H@c-4jg literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__available_space/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__available_space/why3session.xml index cfecf1156..5eadb5a32 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__available_space/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__available_space/why3session.xml @@ -3,38 +3,25 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__available_space/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1830b213ff215707f9968da1fd4e4600f19a6db0 GIT binary patch literal 365 zcmV-z0h0b7iwFP!00000|Lu`YYwREthWGgucV8|6dcWb%!3%}Gjg{+zFXsN-vH;HFB0D;h%i&ce9yST-=P_#6{|lHB$VnjntF8FE8}F_K|qdDHGjlSQ(0$5$D-?H?MKr$z8BVO53p`W z*XaV)AA_W`%2=bcfog35q%mk(sY?3jL|Y(P`69)phH`D+p;laL&BBeng=`xy&QAXU Lq@v(<#svTXYUQ(L literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3session.xml index f8a4606e6..f6eab5da9 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3session.xml @@ -3,39 +3,25 @@ "http://why3.lri.fr/why3session.dtd"> - - + - + - + - - - + + - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..afeb827ee0db92ee0cbf843d69cc76d568b624ee GIT binary patch literal 418 zcmV;T0bTwdiwFP!00000|Lv7QYuqpph420qy_bMSk}c_w!(Nsygr178Vx$?RqF%?? z>azLwl^dD{nh>&V4kddL1A5H7(f2@Qhu2u{{LB;19KA+iDMr9jN>i$-Ax5@)wjL+ zy>s6_^3gBzX$kJ0W9@NhT5o0PWZ@ zn#jonC9EXuQj+cyd}$jkgHw#bqK>WYRM5f*p - - + + - - - - + + + + - + - - + + - + - - - - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__complete_options/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__complete_options/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..af203efdfb696e92b4c2b5b371b4ca0416343778 GIT binary patch literal 414 zcmV;P0b%|hiwFP!00000|Ls&wPs1<_z4upe22ILW+vTtW7X%VV#MN>gmqm14X}xLt z_hf84Fb!#dIG`}SjJfMMO@EE2?aiG9RYaNsu}S>aQ^V7$X-;O%j<9l>k- z3Y_t*lQj%e>^Q>-F0qLLT3*SsB3*o79yhNaK3#4+`|H1rPtwQFIvy@k5oHcNcNiA4 z*&1)~8YMBx&aJU$0>FT<-}|~*0mN?U06L^s7Jxc(6CiNMZQxcQrMO@KnF}`1aQhaG3$; zRKvp=kOfD1RXXe0p(%sTmA76Mj;qp+k?Bg`y9|{j<`7(NoaVYDuBvge6|+&==>$@z zfxNG@%1KjQmoBH=RgAS7JCD|Jt$YHRj9i7pK4?=Egx;6RCzEUTWDC}L0@>3*?_Vbl I3gig@0F5)jhX4Qo literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__context/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__context/why3session.xml index 8dbb6350e..35995b4f9 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__context/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__context/why3session.xml @@ -3,40 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__context/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..83e10a114624f4194ea10afb0674d6f6a08bf035 GIT binary patch literal 721 zcmV;?0xta@iwFP!00000|LvH`Zrd;rhVOcc-g+nsa9@C?fGHL48|a4|)bBUV;9}E85q* z3VxJyN;TEiC`+}<%2!40!ndMMpZqo3nC=QHKT5GPwfq4wb<>h7`1!_ap*g+C?6l^9 zt7gdC^*qUN==xpPKdWJrHu2~%wR<;yV7>0rI=5X+=p@%UHhcft-kw+(@9c1V7TAg2 z%Oe`7fp}=!`-dxi_+oIbV|UE{D!Ux+UH=>QsTvjtED%^A@ZUioFVb<)6*ODd!FHYC zd!75Z`M6%2`X1KlxCI_X#Z76Lh?!s_io-ls+Rt9?aD$u0i*VhF_iD6gyPs3_heY$F3^j!3mWO5Q{txwKkODv+EiDSAv$Ml>W z(?vO^=i`_z&oMn4$1XH`)T}B%A9ygFC?2I`Qh7imQ3)ngP+okYzf2{p3V_Koh=HRG zo(iRfWke-J;4uf0%6gF%e2^R|@ghhSNTQ$>vj!8|9KsmfmUJkoJ7Gj zf*F-~6%$gbxK5O#fDn?B90;Q__n=Yo93(2Ah__s#jXX(X6UPuS2`-dP*7%TvWR-gm zBpRR)2#b - - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__copy/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..be5d203585edb4b6244414fdc6c29b4da9c96086 GIT binary patch literal 2524 zcmV<22_yC&iwFP!00000|LvUHP9r-OhVSbs=6zxaYx-xlQ@IY7Gn};FaWal08Nl?PUhMf)uRmQEsbP^E z7KvdI9~Qx|hz*L|x}>}P=lIJiF3%E0pZqqaX}XE&rYi%xOH@3;FYRpc+m=vX(r&n$ z&2K3+yV?Q#lDZcvchTN_t0hh`Fb`w*NI53$kctD_jFTNiZk5}+FKO|8SOyPX6}|43 zB-~EY&6n=$8O2cHx4X$B4e?inVf=M+E~9U7eACYGhIFt<+enS%Rqv=Fct+}S$43P} zBYF7~py(%oqK81yL!js(Q1lQedI%If1d1L4MehO1>pXF0MA6S6iXIR}?0kZbc+%0bvb&$AIo)+rgy-$Fql+x>uvY?~&Qd(YEqs4ZzBv<( z#CWr}|5&YU`3M5rHJvSHI=*+NgUhOwLq2e*2|Bq19m32bd0qWn<#KfPkGm)1ITPUV z&rcgg|L*7hWt?9%l9BA2ue$$5-NPaae5u@5N}nHRDyw>{dOM!p4l*;V!zre!zpDS3 zw0(%~%d)-<)1tq_+>i9-&!xmqdAlBb>?$= zw(ln3Io~~=I~RReB|nbmVYaZP?f&~&_37z7sGyy%+6k2mky0@Vj_!g zYM|1i(qkVz_!IQtFQf-mfCmJe3jx++*t!F~moL&(OE{(_L@;1z`kg1p7}F!u}IRATM{qfv@f|_;R7auby1P!Jz)LnDdA!+r$}s z_+fbSQbQjbIL|zNbWGs9H{QH%Je$u6^wLcFYNJpr3q{39#Yn}-yTeHNFE4+rJpN$% zRgqr9p+ccTp+eyuLV=b5L$iObZm({yZhwDn-?;=hr4xjoKiEN#b31O@)eN0@hEDDL zc-71M*URy?2DoBZ@= zbf^>gX;{2Y%ZxglzGddq}e^Bde9{~*Z$e1@it@Oq~ z8H`82^=YNblvCX+uzmQ8mHmwSc5Lp9XdgDWbHk?DB1mOTWld$x3A5(W|Abj>ciuSG zVHaigw=-i2hkex8#KAshY}NS~#CUJOsJu8VFE-A4*|q0aC%x9kDJl{w5-Jit01_S! zerMNRH-En#7>{=#;CYLLi(NMpLv~#J{wEN-=y7ohq`5d*gk7A$HqGOc z@Gwz1+}`br?jSvC8WB}=HVDPM2uh&v*)oM8LJH_X{tf;mdBYhuK1y#4$D{(&(dnqP zr|%fUl&4y(iOEZ;m66U#>8xi8tO8(?$r!D*REam*S;3_jCPwEhLnavTAWAnRU9Pkw znurc$jvj&q$s@BEBnKUwLgR#srBjWz;EZuDvn;jL7Cp+W8AcuLZ6r~n4j6MSv40Tl*PFK=0J7EPXiaW+oYVpPLz@ zoMFj$W>7#jQaL67S;kU}q7Fup)WM+jXp*4-iR7Zr6y(HQNexH}mT+8BdNAe0tyaL3 zkkTs?P{N`u)g*}wm|=v|KsVd{C^^vLpvis^Zyb0V?tUHrqhSQ;syNcpp{QSf7~W zF1V~HR>DR=l@*Cw07*^s8f8ruDlwiplAMKLQ6uxDD^f0!MPe}phekLlw1cDs2cHts zRh-sA27?-Dn57nP9JNC|5So4>g+3}vTBq?bOM$_XAubx4lX*&p1qu-a!G$F+fo9Tb zN{djX7D+yMmxT?S3yP->8f?hUBja3B(n`FzY9eDsNR2^3W~Be@xRHpFqNXTw{TOv) z9C$8d?^Z*-&AOyg&?r2oftGA@({M6@ParjkPouZgL+g?UMbfq=_O)!o5rWg+xiUa1 zPRO$+=^HDvLQ%BJUBg3^fYb+*ax{^g#f4Hzr)+&xqPITj-ce9xnd9h(+Hsh;HabA| zj`~m>D=7BHqEw7pV+>*_GT@B4OfpQ7@p47M8&CNs9rzMM61p*hTS-76n+L6Z-xQOjsO7rX4(Y+ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3session.xml index cbc8e5d77..5c1a73d11 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3session.xml @@ -3,97 +3,81 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4d3128b5dda107be5f20c15e623e5da4a87f7173 GIT binary patch literal 1153 zcmV-{1b+J;iwFP!00000|Ls{#Z{s!)z3W%>UM#>NDSiM=0bhzP5cE{&N({;2MyO)D zk{l%c^&QzxkPk1CbmQ(ORt(spG#b8{_hv{b<2k1B`W#D_KV!aG;$@pcyS&1_#pQ?@ zN5nt-4dHLt4YWI)z780}y_aYdKw@g@uxxTb3SjAyvU@gk(vGPh&9S~k## zt>J<%U18VeuUA5KdWK^|8GV@@$GTfjM;2?&Cdc zqZ@D{Ik$zp?$m14(MQ#+dU3=I16tU-VxTyrp8Z?Xn3l< z1dFGR`OZUL&-eFsxN|k@_9N>SUL{=l8sVy!F3qm7PnYJ#FiE++!cR?|Ai2X5HeZo2 z%costx^C)kDiN4#WUdib{cCDOy{1O=GtJ$%kN<92&zsB38|G*?gqJ0KM_}6Y!>SKk z^*(--|3c#{`P+FL9yx->?V-v40`1H$NbZn^Ka`Q zbMH761;Gh#f7k#P5BCF$htCI#&$gr4~vR7co+HhCgg2DhC)PIwMoGGC>5NNE;(jCSfoN zHj*zhlB$qZf|85H`&d&>YVu0g zO4iCNkOGQwLW3}5cz%(Qjp`~2ZKx!X3)V4NWjS)g#zHb$87Cw2GEe{WbWxGj*4VoC z8mU+TsEo38seRG3O@XaYNv%^V0Mce39k~bv$%>j2EHbc>tF*J^vaQic%1IfgrDrTz zXBSx&lP6y(rbrVr;7PF*yjCK+n(CT#QA*lLE26@pFeT+mHUa_6G>zriNs=aylPiGA z^Kk<2m5rp5%ftpw0+BH}LyVJ^tiX^b)C>oU_RgTSYyhM{Di zB}!qF1IQe!6Kb;3jGk3hM=7lW<&)G|#H2VtQ<76&PgZp$JaPUkD<3nb+SFNQl7*Dz TGD&{x%T)gYR+w*Ci!uNJ7XLq4 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_condition/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_condition/why3session.xml index 64cc56286..1feda82fe 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_condition/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_condition/why3session.xml @@ -3,68 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - - - - - - - - - - + + - - + + - + - - - + + - - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_condition/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5262450b1b267f173d9cb492f652fbdc09b28a45 GIT binary patch literal 1013 zcmVO$tIs!S(!L+I zeJ<@|h!lr>@kR1rG2ne1ud9)^n=w95Cx=Rhvx=aGnh}^)c61o~J&pT5wK>l46@I#@&EbFR(+xpw?q-s_mJ+Xi+dgz(AtQVA4fs0La7K(d=>rRX z7W^#uxt0a{Zp6oZm+Skzy+0nIw#O5a1XfCIq+~`I=9B^rdZuQ7!O1xcOl{Y*p#|n- z3x9(x@Jqs_P^(VqQbyAjIP)>!i74aMA - + - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursor/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a42c47ff7e0c51cb5a981d06db06d2fe76c8aa4a GIT binary patch literal 439 zcmV;o0Z9HIiwFP!00000|Lv8rZsRZvhIc>3ZMRyoWJyDZF2Q9#cois$!U>HN!&ZXk z?JHMFaqW4Dm)>9);17!w{fQ81@Yf^s5$!ONj|ho6zK= - + - + - - - - - - - - - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursorPredicate/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7c2159a363d957d9bad919e265a98428cc271547 GIT binary patch literal 271 zcmV+q0r37GiwFP!00000|LsySZo@DP-2I9^L9!&v9x`+Z+P%n1oFobr>ez-P2hH#6 z)+h=T9lB)8LJ+*ek#`^vKty}ZaeOCA%S96{@NZm+V&XB7Uvrr=(FNnm8<;sDN!6BT z9582>aKu;`FL`AgPST5C6XE4o`^m2}WnPfke=q*;`chGOqn2e%l|m{$m;H{DJl;%N zY|`O6;ha3B>4Kav)g9aI?M{FEHhf;{mC7p?Zt6XvzapxSxWC>Fa&3e+CP=MYxSn;d zgwu#Uq68Z!m3xp+s?mdm5}nn34=68%5T4~=l<902t=UMT(XKUY20z3>M`@iE!3|y8 VqBqhQwd;n`(B0@m~007V - + - + - + - - + + - - + + - + - + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursors/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d95003f59f8818c0101c918c46be50a23ba81643 GIT binary patch literal 335 zcmV-V0kHlbiwFP!00000|ILuQZX+=aMf>@Re1hJOVi#~@WPZS{a79rYVJG%rBnQdg zuTpFuq;WuiWO0alz_H>NDU4e>c*nt%5(?7)e$?$frMADBly=Zx9x2tvTS;_3`t3-m z4-B4Y-?uhWX`POK5$6@ZvGMiKctLH)gf{d+Vy$ak_;nv2slQ<7r9L1Z<>QLiMrl8| zG@ADpxuS5zeH*D=+i2JldcRN6cDr6A&e%GiAK*HEtk^P6pY`o$p6Y2lzA(Wqji715XMatsK;u(dH{s0oRsLdYV#QeaCCmaC$e zT?8pMMa2oJg;)qnB&d?w2iGGB92 hB3ey?N{;YKI413cVIz%1CaouAmw#nQjJx#%0017^oHGCb literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3session.xml index c1baea07a..f3391db8d 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3session.xml @@ -3,280 +3,198 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - - + + - - - - - - - - + - - - - - - - + + - - + + - - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - - - + - - - - - - - - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..19cb0d9449f90fea1e35dc572432d875f6888b54 GIT binary patch literal 2828 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 - - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..be43c3cc916fd4e8c5963b361467808425e93a76 GIT binary patch literal 645 zcmV;00($))iwFP!00000|Ls=GZrd;ryz47^ZV-S^kvh0QE=3FYSm;VD$z?)RmQ{%k zl74+DKLpox(lkwjCb18KL5^l;XSpk;IkT^EG5&#jIxA7&GV~T^YA*eN1uL z*0d(;t&54J>(QgbVOaLl?zf3zz8@=ZKS#1ZCAfy|c*oRaJp4HlAuUah9r)E^aSLbg z9#RgKw#yWHbjE-OvwQZTxiKbo*TR?%+*eG-gouqd9y@G3w#j4>D>No86Evp5_A)!U zUdseS*Tl4WWB3zxx9YRe<|q$^OH2q1V)x4ne znLFn!9~bVZ$_Hv=0Dp|uy$1Q0ibtj8T?hHiRj^2}VR%iN_9K6oL59QzY=b#za5&Al zjm1O!J}q6`Hw>RAhdaJ7r!oA1uBLB$4AW^0lNU0E>8SKHhNm$Mu{Axkmk8%@R?C_> zdi)Z0=-4A#ewR}NLprqPsWPIqcuWm{e+Zva;dm98n&m&&`D?G7D*xIlUlg_q$f>N# zsv_K32$oc6Ed_?2E5_c@Ppa@vDXR$su7wr=EMyQ7s4X%Xe3?O{5Vo`xm&${+4oIm( z>3Q%>3n?7~kwL6roRypeqIBRK5L9VL2I*CPNry2UFC@r(cOpS5Ml~W<3T?@lW?s-S zat4V)%D|aam2jv*Re%*%oLU0B^o#&xkSx4*Ob{1zRzv}SOX0FiZEc1rZ8NAWTxoe} fRiKJi)M~+mb0EBARtD-RtS$Hf)N!JC4G;hT)PE(| literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3session.xml index 45f6ed253..d09263436 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3session.xml @@ -3,117 +3,97 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..76a0461ec248126a0efa19ec76164db22cec9e33 GIT binary patch literal 1741 zcmV;;1~T~{iwFP!00000|LvPiZ`(!?hVT3py%lH?U}yIGkV7v<0|Y%4z6!(rNQ5e~ zAu&Pn?>kG{spCk9EKw{OYz~gCjF+?T%s!l*-E?m#e%aE8by%&ppJ=zHZAW<%>F?dg zL^rhAr{UZ3<$x_v=sq7bZqkSQ?#pWbp6*kV-~2_d%eVpF(Cb?f1ph_d-D;QaX_vxk zMUhsIUw3))d9_;Ke^RT}J%xW#w_4?O+Qe1(xZB_D_|sjADWpCBz`wA+->kdAVo&c< zciM>IZri2L<(q!c{j-6FnX${a;-)zJi8kxF+VXEa{=+d%M$+#;&9G<&y>v^_3~q|| zHP9~$v@C(fKHf{w42MA1?ELw&QW1rRm4q8 z3s-1iduYte$)n2JLD`D9inxlnX=&jLEnE+cnK^k>SvM$K5mymc5jQO@plp9#gCm7H%Ge3_LAV2P594_Ojvwap zrH;Rp5ua%DF+D=Uj|_<{Lzyczcd3{SeRQJSuMBO1v2zH}KQ&<{CBhB)pk!b2}f$ z8(MEyJKDZW^gI1V-LLCycZ(1t(kuSt6(>38&$+j~k7MKcazepRy%~)mFe*gwIYiDX z#wMv+@H>p0m}{3~M9%dkia+AW5Q=a`(3-BwF`QR-&1r! zFX|PH-B84@FP;9sfRiv2lC2baqvcPPfIMzu!}Ubh-`xZ2TUrQvhznPQi$< zfyrrejn~5zw5erVE!##vV<-*8QR{{?)Bog_1@x^EKVHuQr>>nwJ`2Oiil+rQKFN9S zH5|XrdGFcPLwDEFX0=J%cisDMc>&{<5o59kCV>x*4WG$Nsgak$bhXq19G?U}muw{t zojG7|k3W>|eRw6$EKE*d$aeq$e*T!J4`UJqpA+Rpfjs>PW@Mtks7S#RkTTm-eEbnp zmf-nyj$of2IMf~Y|NoMhzu$Go{qr4^H0$So@=R-lKjyrVDRsxG4qm$lGi}v!c37_1 zoh}8?CDFJ-`LvAcscE7`3pP0?JqWK`Y?YJJWprL3TKx3Mm?sr4hM2PB(-(%4TvdK^e(3z@K}ev<*N$@~d3hY$yhAGRH+5HnNQ}l7do}B_%Bgqe3T= zbxNZo6N&_`Q9KXJQd66SYLf_rjNT|%C z`PN%y*k^~i1t~PIL7hsDvi6isvVxM~36jaSbv}U;rsWB0SF}fHq}C?d6nJ&T7_~}< zSBDoyhA1LOpjcsJT4^J>5S&UP3avQqLGUb;Ga=iOTqql1K}SwZ@7WHs_CdR{*qruR ziqx-FPI(ZzmBcFmjK%DHh8PTS7#y!C3&l$FI!wed0#4uHk)JI%V - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_destination/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_destination/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..41bc2183a8c60f77e1a76eed641a4e48b845679f GIT binary patch literal 389 zcmV;00eb!)iwFP!00000|J9VsP6IIvMfdX+d_ta+WWk~v1QJWsZRErbL`b_8d?lx>!%kO zr~yFm-XGR6bsO*VuvXp=5MQZypE7mm<7%9iqxWm*R#Xp1!Z~|{XDTpKe9!;7N?i7Z zHoIV7XsWtt=yExfpLV@Qt{>nQ>J1r>`+d6?Sv%7X(m*{@U)~KNO(pkG^0NQnkw2d2 z?-NQV7O#nmUys+Zz+4=2Z=o#xNW&$zf2MiLg3ra>)yVQ|q7|oT`F~_P`@8R;PV3z6 ze)-e+e$=xvD;JHsaS~ZfDhb8f2*w7hTatn+t5kAH-tc?fn3k+)6F{(mf&!zQNf41G z>l}|zMeICLP?4cjk(7}spwcX8)>_o$Bm>-CCmL<7a6&1mr9 - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_dscp/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_dscp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..91e6eabcb7bc9f3a909d2453a4506183f26fac84 GIT binary patch literal 382 zcmV-^0fGJ>iwFP!00000|J78xZo@DP-2D~(1idUs9D9wO&9V{F4O}Bxefi3~2ExZnEhG%F;KBoIn@Ul-kKfXiH z1ptBf{uqbYZoO~%jq$z*{NUt$Y`7(l>tS3C-fy5?bG{sy7Ge%>oM2!)^M9^_t1j_& zpBxH}88`NAlaA%b{j8{GFoE2lq2uu|>|Mfc6hqu|N8F{e92&9zB2CV3ll6@`7s?*# zl6;g+C;md6xD!Y#KX8AK=qn~(S|Atd`C*32M>?u59F_mc(&-<3?s+@6j`ho5%C*%_ z(=^?+-aV=Z5CMb{#()e^l~3}e%-;_p3J1hM!AWb$MT(h#29(w@gT!s1 zD(EQcKng3GGO{w{u(qXDWT_6p>AK1wT^Lgu8-=Vj cM+4DH!FFytV09paBaR2}S literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ecn/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ecn/why3session.xml index 1f01b2ab4..c93ae2a6e 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ecn/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ecn/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ecn/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ecn/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ff218a30182141664bb608dbbfbfc3e5b44b91d5 GIT binary patch literal 382 zcmV-^0fGJ>iwFP!00000|J9VwYQr!L#_xHGJ%ao%whuk@GFIqu^lB7a*}~E^ByMTn zeooUKR@RY12HVBR_>-*fC*!!naB6T{c~>?&*``gp|GZcq4(bx&hBEE#Rvcyj$a zwv-_Tbk2=ySJp@8s`enAYtesDbgrzZ4$kkpe%Cp7zl!{)}= zoRHXDlrH%je#u>6+_{e0M@-*mcuRn7`15Q$*_=T64N&%vh%W!$TTio@+SM);ig}O6<)|(3s8ZR7NrET9CV7A59*1%s7wJPqdCh32gxZ&?m>Fsa>x`VPa>Em z5*7?;l4L;x3(PQ+bISq%S|P1XBA#hQxe-=_kt|6;6*gC1@lq9BYC%aPGHq=cg0v#1 c0EIM|Yfvbxu+|u3izJfSCzIiuTssB;0QKgycmMzZ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3session.xml index cdeea156d..1fdc0f337 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3session.xml @@ -3,953 +3,930 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - - - + - - - + + - - + + - + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..805aca896bc713fbdf717b6cc9d93037eb85ad7d GIT binary patch literal 8574 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 vWTx@fh`s7g*-@p0epz7^{nU7`iUUgt)V4Q&v - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fe3818c5e45f6cdcc691e94e74720c411b7b0971 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&)?kA74*nuWbhY#>Pe-UPgX?hDPQl#^&A| Yfy5@CV1q9P3VwnN54_{sB7r6V0AUOk=l}o! literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3session.xml index 57deada14..2f6dccdb9 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ae211033bf2368e181c98d268b20293105a2c962 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&N?q3H$>Lr)U}pKU&#em=&YW+wiIhKA;z Z+f0o7wuTsdF;MUmWRQKiXjdfA1OQ!07fApB literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3session.xml index 0203601c4..10d0f6be9 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..502010a96978f8ed5dddcbcd61af334ee0efe1f4 GIT binary patch literal 700 zcmV;t0z>^DiwFP!00000|LvAfPuwsN#qa(Uz4cHb*&hEHOY9*%R7FCZs=Y>Idkm45 zU9=mZ^wW2;h*GrB3W*gI^^nN1UOeyp;@Cc+S;3-@sNO8;d?@{}yrT6$%aK;C(YN&_ z(-&H7__jIS9?=@AG}5DL#pf5}O}{y#3sxt0)efl+S9Cz1X#63Fss zZ;z(#jm(~MQowYt?vsXPzoz9W)A_3Y<^kWl^KrjpAJTzD*+S`mK`8;c2VD9;a_L{? ziyqFTnmgV~j;B$NPTD`7$CdD&0zEV^*AL3i%{xjudpxSRdq*K3I+u)-@As4Ma=|pN zJ`bnVhV^Eg+oNHWPH7B9i+IuJt74?wWUn|nl&c@FSN+B6n%Dhi_`y@3{KDOC<+`1Oh@8^d*iv(b=rD2h;*g0r zC9E76s))P-Zw!#djNav(azJZJtxZyjt~L<`RX7nr6Z659j17Y$Q)6)0Y(oqpimHM{ zi;Y8coT7^mxU}FM06HMjB0}Y}_Zl#Q&K_+N%a(2BB#$~5n9?N`Lq#YlS>Ptvy)&Aa zP*+!FP?|(Wt6Vc_j74XiAf^_Z&14~Y8wIW2s*K`dT(R=$OlUPp-4IJGRBQ>^6WU2- i6*L_sRf;*J;6+F}Fh&Mp!>LX@4XB@c<~oPs4gdhJsaq5P literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3session.xml index 94eec0427..66b2468a3 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__11/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__11/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3session.xml index 0e0ce5466..cc3780f82 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..80eb3f8000521b807708c9a505c12bb76d070f92 GIT binary patch literal 705 zcmV;y0zUm8iwFP!00000|Ls>xYaBTczUx=ywucaqN~IUrht46yV0>EU+LTHqr(rx} zX4=kXfBjaE*(7G{1jBlhn9v}E`lG&w)ROvwPC2tZqxNY-R}+uZ=9YF7ZD!i`PJixh zgx=A5FL&Lgc>wFE(M%7bja*&NpT_+Mx)yWsFWU*V>6YHmYnuOz zQ1BU5eNl4ys1){Y`0+|<+KfBeTnb%n+gBp;FQ9#X-r6VhMy(uT89&Fu(GT~M8NZ#( z_+w`ExiZ!iX=*(|rXid!K*hUXN8GBu7v=N5cD1=Ee@PB+ z)(v0)R?RdTYD7$e#{Vj(<{ho(o z@)aBrAG+ss6LFNk<{k08a)$-<6Xfci5-fZtSoMAv?V9%U?_8fJ*WssH!owq5#&NV? zZ<$BI9-kh==R86H0AKLWxA+XCjv{2CI))mY6KF0) z?>)xGo?p554vlB7&XQ}AS|eMn)t892_?VDuRg^Upn!_A(s=aY)Ay}U%d-0K4%Fq-9 z#&&OWb}dQk(!?fl&1aob%A&ZaAa5|F6hnsS$!V=Xt#P+lB4EdymP%+ObJoEeI@Bh* zjBL%)bLq*2Py#3@7+^`<5GA-EwE%I94IQQg)|FNi6phWbDX@!3kEy5Jqc|yq2<*`Y z1tlZcYw@XJ?#;%ieTEQ~3>%dWUP0OP2Bm8%0bTS-s4~UeY@i%s6kLQC6Kt(&u!hhp zq(G^3WMD4I`;cg< - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d6c65cb2f9e9b0d049214651c105a8af8238f788 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|Ls;wPuwsNzWZ17)8`iRQSlFkS2hvgNm2U?D_YK^|FFDrea z#irg4r`sb~ph6=(idOafV!Y`$XLM23$sOAvmEnpG=o5_}hg&YT3>;}um#5>|w%#5^ z-3ysLrGyc>SJz3yvR~8kw9@&i{H7tkdFA7NYah~qSlNcs{|bdYb`Nst|CmevDjhwX z37b9MLXM}ZMpv!>3%={E*F)?)#u@q z+OXb?b8|F|@=yi?YXL9%e8nJilRUO`C|5sTulkGCbzS$H;YXdG$uHdPGSAHp>vnid zm)`dE`?w|^=P*s2S5Fk46RG)2q+ z-M-j8y5V}7j5Rq5hNenUiIC!we1d>zSwz{ETGrNsbhtVJC6y{Amvb_i(5L8AZKX76 zKXUO6>lC?GTI>S|qjW}IL|;jmgEJf`V4my&C;_04zC~{%5cne0&BYoULM^aG88t}? f1#|_Au2G9x`W!hqu2gfw35Dt>a(^EG;tl`+PEk{V literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3session.xml index afb02ec5d..8557135b2 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c43c100cf89beddafe0ae279d3ed14f5efd688bc GIT binary patch literal 704 zcmV;x0zds9iwFP!00000|LvARYaBTch41~4hL^Lj6L!{zS*EpX$RA5HSg!&M1MBX;g{LA!y_MvW2oPK z9gmP69TLOWb8&d^z#pFd3Nt9<$1abg9M$?7GJurwdRz_stApj zAf?$%m|eCYl#|4kDdvoryi<`gJ{Rw5Qf2UsdUCpH$TRs8DTWLx@&*}8ELeas+vrk= z&?t#--9;C$sVJCOg~>JVnsk@Bhzrs797}9Arb9h4z_|-2sf-9#5x9($L7-s_j+RW( zq!_eZti^e35Cce;)^dxSdi0W2l#FOMkJe`AkiDfGD|#X>tpHW*D#}Kkoitr-hk_+T z_Z%8GLh%_3`vti*K`FBZCFiXx`hK_;d`HW{Qz^XA1TfZe*UGwxYMY=aHRKeXOQrfK miy@%Vp${dBbz*H2azPh}s!l|qb6E<4GhYDW%6{_V4gdiD4rB8G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3session.xml index 2580dc3f8..2edd9d5a8 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ae1cca036af449efeb1ceca6d53b7fda1ed77353 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvAfYaBTc#qatQd)q?@l>U|k_MvkKYcM{Axi+Oz$!QqR zn3=Y-*-xM9G1pp?;{|`>DF63p(Y@a7OL(hOQ`dM|gw{jJP8%a)Z>31j5kl@UtEiadt+;}|Ien7Q zv!-RC)LX^IIW5S+fRmchd2+dxfC@+?#@-OcCv~`}tfA7Bp0|vNDMnIMzzuEgoQm$+ kqH;#JRGZ62XJZVhA^0RJ3rwiM;z8xj7yO5k2;vR^0D0?UCjbBd literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3session.xml index b4fa7ff27..1018920c5 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3session.xml index 4459006c4..5d9ddf20f 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3session.xml index f4e7c0535..1cb228d7f 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c57d3f018ea799eba11fa891af57ffd04564f08e GIT binary patch literal 694 zcmV;n0!jTJiwFP!00000|Ls;wYa1~TzUx=?)Tpd5^ohog!yQ-A@{2U*#o2hiskcW_ z4?>QfQc{fWUR@^*i+)9mGp37W{Y^uB^UBBl);^>Iv9bxJ{}oE{rrXM;|6?xwtE}kZ z(ZqMMft*ZLk5Ah_@5kGBWN2H!47TWJ?`r8Dw<_x1k;!f4;&Iabe*9g{na1Vk;f&g_ zT8}e49!8mz!B9ZJ^FCh}Ep(GS863*hk2lNya(Tn6em(r)X-;0@ZkKt6JFJ`G30-;H z^Y?K@Wt{1$ab7)9{hUbgFOiDzyHMw}9{(r$(usC&rfs_?J`lU1{`Pg;iF9X^=A_Ja#X7{Oz81s(*m*uiq4-3tU32&A?IpyFX6#YSe)m9~& zo2@lCMgrEJJ+#8ukX@k=ouELa(n$N#Aoy5YY8H&=6u_kfjvxyNRmh~Pa|Kh28Y?&x zauTqH;%tZ@Afr+;rg$vT`wCvl(7D)JQ;1 zWuvP!7x`?8Y0l;9oh{s;7$6^$fV?Uq!-`!K0>qXBB1E5D0qb%mL;(dA@?D*7OGg;IY*Sa cMT!=I7;VIywT+OeOemv%0tGl?{o)P)0M7zltN;K2 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3session.xml index 6cd756063..9ec375a49 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..dc4e3775ef55cf3308451ac5009c41e06bf5bd2c GIT binary patch literal 706 zcmV;z0zLg7iwFP!00000|LvDgYaBTc#qatQx$PkYq*Cc0*oV#`#9(|{=Gv4>C8uFL zV`kdUW;%JllbBo@jd)%4d#^QW^#z@BW_w2M(}u1l9;eMM?IzmHwC$b# z+}#MhqxD|yhRfvvt)oUWJ*YNvbv=I?_aEq5%*DUmPN+?{^oCy3{Ks_Hi=Ai3nbxwo zoIe~2J|oo^lG8^~*t_A!lhU*qceJ?_y4tp{Ao4H3K0j~m6MCao4zY}%W8vtBd&!L7 zPG!c1Qwklqa^_HEsTlkcXPL|6!f837O+mEsv_tW2UnAHFC zaNK+aM~x4|bGnH*%3t%2cwV`~0{RJZbx#Qvz7wo^zl(NF`}udS&y(x$Q!U})kuBpm z+ON0FqhOEU9>eFC=J4=|VE7-7IfJJC*dcTHj}OYj6F&jI=$~)#87!%m7%XZi8(dYGcT@`;uc-l{KYev=pGQ#OR6>_T*b}F+h`C zSw&!C!ejwT0s(;R19A@3EmTU#5LM(2XQ|j&xoeH7cbj8^QWUb;DjZaVCTPim!G z6fXw!%z7(@g1Il1f~m!^6y%t#kHm!3J6Z|RCWP*?ilTvp(RHcpZOF0ISV{oI)PZg9 z4po#4cW_xPbt}F`ib{{%eMk|NJb{X`;Ub8!kT5R`L9YqXd_Hv>sU`2`wstJ1*c oW@+)~z&H;*IO!dV - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__9/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__9/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - + - + - - - + + - - + + - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__offset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..eaf7411c9c90f746a12fc6a68afde3810c7fdf4e GIT binary patch literal 237 zcmV`utQs<%T0%A2G19?UB;Rmkgo&!!c7^zFcu8+R>x`l z6ztJWatl}U3#_+Ecf$3y`hO=^(x2yRGri+170S?z7~W**oY8+|JTq;6y?K#}9$Kou z<#{>YKI+Fmv|N?TF)3!JTqdHVTXsf;#K?iN_U)5?H5HQ6wNcSV?Od=5+1HLt5-g0e nae>r*kQFgDr0j!oELxElXFR2-eegnhf$HiTOAx`g^8)|?_A+wq literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_df/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_df/why3session.xml index b2a56322c..bbb9cdfb9 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_df/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_df/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_df/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_df/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..eb1bd6b6a157b5b305acd38e259cb5baa228da41 GIT binary patch literal 385 zcmV-{0e=1;iwFP!00000|J9ViPQx$^hVOj}9-(oP#yN1<1%bp7?Haj>4HaEiwb?Y@ zo{YhP3D71D38W}V+uyGL&r$LnrI&$LT@2l@rKzJKQ_MShm^Mr|)X#j_?x%`ZV}1$q z6OCLEB?=)N=1KZp2;I0fA&eBCIfoz}_bJ59G_R)+w$yL9e4IEf>w9|SOcTeC`0umC z^^keD-@GN7i*6qKE+5j*`&uL3(KVGHbm{Q;R_s~EPBfEvQbcMA7h|d}2^Ef@s((gx@i)(X>Cvf` z{qptlQ-c?Ik&?=22M!5v8CTp>6uGFoq8o|gaI)JtXPoBlMOwOT@ zKv|2ZK23zEK>%x8M{uZZ8Le)jj}};4y%#|R7!@Yr@|MMTgGQicUu$-)pvNN8mGg`& fwiZhe**Oy%Envh88f6 - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_mf/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_mf/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..085071e53513c91a8242c0ded81fa2e8057cf522 GIT binary patch literal 385 zcmV-{0e=1;iwFP!00000|J9VwZo)7O#_xTKJwoE9O>^MD1r3Sg#5Hnbn^h~NY6D_# zzc9AL(1t+jr0tSF%4f&l&r#wM>9xac6MWMhaA>fL7~&D1hCSl~+mX-9(~$ADkFS1w z#-1}oLht=~9Hc#Z-}DFLeUIUVqxaHqOFry}aW{B>z;@5+a9~=i6>d1NaQJ z@VPKIB`7@=sgL+Ie8kQ$?)iloM`_!XbEBoc| z#C?unrcWuEC*WaW$j0m7qYH zlSthrBEuwQZAC$4M5S{^R~DwSc@QE=BFJ=6)r6vKATdq?DKQ~u$hmf|EFp>VtVYNI f!~g)9!dfT*Y)a{B#a1enL?(L!Z|G&tO9lV{(Ko_C literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3session.xml index 2e6f80653..5af5188ad 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7b3e7993be199a8031d146b63ad1761cb767269b GIT binary patch literal 384 zcmV-`0e}7XPRz@vB55(OM85aTf!N(1D%)0si1YA4rX}A zo(e>d#+dUQL%TPo>371I9^D5eV?sl%H*On;O*CeQ?UwRkB)?<}Tv5VE?i&Ad7PsjV z?T?F7q9N;szHQPu{cx<+)pML+zM%2v?Wx$Oj6G<^Q%{|zE?w<}7FQ;IF$assjD3UW z#@m>jU@TCV_$9x@PB3jur2ZMxcQM{VfF+-eh7`tR%5Rv$|AIRGlaD@k=+VM{`D?k? z-f5bqr&?T4#Xut`P9?Vvye3 - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_fragment_offset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_fragment_offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b759ffdda464ad52052d0fa84a6281853722d88e GIT binary patch literal 390 zcmV;10eSu(iwFP!00000|J9VsYQr!PMfd)SeuAEsyvQP((m<9aTQM4qQd7q;3OtaNA}& zjEj>|Kj`|dsq@*sAA3d47BGY1g*sgJr*`j(HZe}1j@m$Nz6Od3)|+v^jj^ZvDJNe} z%lHMUo0yM8#vjM*Vz3gIyEDjJm#DiZ_B5imJorjHKa4JaBwlfgm;YD3^S}K~3{#uh z;V=J$ejfQe&+}blFUn{t=4Gi(Fr4F1O^DVq#gz0C=!w7RLYfk|u%@c4(4e_xLIqX^ zZ@l8tj3PEoRAD4iF@Q#+gGSG)s5J;}rDROmK_rT@luVM1MhGpH(xs_9<5~$s?j_@c kNEQa8LL8h)RLWE_cnDHyCdgRyI6kL}53XmM6LSUt0NdlbwEzGB literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3session.xml index c65bf0e88..90f6dfa38 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ceeeb26824d7e9ea505885acf7d2e27f9e4ab0a6 GIT binary patch literal 390 zcmV;10eSu(iwFP!00000|J9UDZo)7Sh4(o{kKljDi!RupBC)L4TI2DgM1&AI2GQHs z6uKyCs~}OS-B=U(dHmita`FP=YY*ENecK-(wa{n4e1zw;CzwMw(z!e>6>W$7>c=$< zQ~^Zr-k;ahbVu*o;h?-905_DqZ(8c2$9)=i$@>Fzdn%iW;)*Tdg)$_``zwM(I&=;G*BO@&mV!-1d)=*HQ{F5Z$IVa z%V`2s1v9hbQ zt|0`2QWp`MDzZXy3!>a+H8K+;Fm1_7sxc^DM51EFh7dfcCN>dGpa5EuHVTxe!H6P~ kl>vc`LaMdkwKmL3CzK{E=B;tADI!(90r`oE$a4k&0DhOgzyJUM literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3session.xml index 5de4be9b9..f92f74134 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d03aabcbe408f018017d883f605d685824098a26 GIT binary patch literal 391 zcmV;20eJo&iwFP!00000|J9ViZrd;nhVOogJ%S|4l6~kQm!buFEOHenlIn!Hj$tc7 z`u0Tp zsh`#v{0*iHkGJHdZw2fle``K+@38E`EYmfnSK+*bp||G#W@z;-*_sQs`u~Kx`KK>K zo!Ht2zxe6-+qgGnQ?43$(;01TB5PysYXr`i&O6jmm}9j3O+U1anA9r-XQS7B+k*oX z(`$(uh`g98QtL$8yDqiN*m;$dCdbh!&=wSdbjDSYX}o4-y^1|YRFGT}M*v7&OkkAJ lRRj$?25P|@q8RH}@U> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ihl/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ihl/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..159dd61106734ea352d40213db16a366e7cc0479 GIT binary patch literal 381 zcmV-@0fPP?iwFP!00000|J9ViZo)7OhVOlfJwoCnZF=CqWf~I4iEHG<&Zt&O)dmD_ zzX0PfG$xRkv|S=c`R(}s93{<=_8qR8;F@lWLxWwykaqYwY#5)h9r+X%qA#wj0ie1Jgpx@r@G>9M1XItAurz zcy|bng~qHK`?g7^^5db`05hCmzM!Gg_So!Q#%?r2+;d0VrL&!8*?w^*=eN1~hRubs zM?#X1qV$=+IOk3@X?+SMR_ zk+R4oNE4&AWI + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0680dfa7285dac28bae51e61dcbd1c8c78ece7be GIT binary patch literal 1711 zcmV;g22lAQiwFP!00000|Lt2#Z`()`zVlbic?SWy`rW|f;7c$DjLBueD^dMQh*cyF zMFsKx`Yk>rKb5g#*=yPDgG4op&8n}y`l{8m`U?#Gk8_NdOZ?V`rd@u=uEk|P4CBAM zZNg8u*re%jc&XC2b${7xzT!Gn{rO+`5&delXwu)#h4WEt&6TAwX9!Z%6?inMVfiZU-pAvDO z>x5g)r}NX{?-<+f_@RaX!3H?HI~y6@H`B#Hly(`@j~b3o8#pp=UXV8MZ1pwp=yrLD zT0Tp8y(UsY5u=~6>Uu0w6yvMkwu`=9HvQ!~ZK$_i_Vl*y37WZ&4(@EzBuvL>)Q39n zNZUiaQRC_9Xh$1)m^SL4Xd{naVsPXdd)p=UW`+CB@w&8*(mIaOI%<7Ux<~0ArF)#l z0c%o>~05l@1t4Q=6ID>bff4-(Tx|>jpHbQeMtp?dlg_RtfvWpnWist z_9!_!T%nVk@gip@EN9i8pS7ELdA=WlF~Jv4B>o0 zqx{QPqSyP>lP)Ld=;aw;+87Sqo<`xcOzm4A}X7krz%XFYb|x~mP;Fi z7fxj_wb9-MO-8axN-z_ZLgP_dYph1HhiIZjPi~QssyLHL7%f5;LgtWo#GtiT-fEw; zq!*W7~zfTUd*UbGHLA!mjMBqLxIYUwdJNq2HqkcF`( zXopE>CnOAz160o2l*xBVE;(Ux$X1Z|K}6vp#{nteRSsIpL~a>1%o+nBmk0L@TE)a@ zC90HiG@!Gl#7IDwMe-n%#YAQ192=};<)!6J8$wlT$+97iD9a21YGd|!KonG^gNws0 zxidm!n!_+9GE<6@X@ner09|G9bT>i=2EY~Jh=~jIiel90MX%1F|y`tRE zZLEvh1SUZ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..53e164a8d538af0b3dfd656d97b03976ac0c5385 GIT binary patch literal 3139 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_protocol/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_protocol/why3session.xml index 91714bfb5..f31534366 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_protocol/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_protocol/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_protocol/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_protocol/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8b05b34e13074222059dcb7cfc8dade42878e330 GIT binary patch literal 384 zcmV-`0e}7XLTtFDfXi{}#}HP~E;%2LOmp!F&zxXnJl_903-(>& z^>(vMG-cg1v`yNlpSHE4R1a_q`GtlK@vhv9tet6xc;Jq>OYesI)MMX%Feo3-GxrIi z6MxraC9enTkYIkidkd)#BM+C@{sHAF2su}GSHmi=$yJ?lmH!Ux?2mr`+^2I(`{hCN zeUoQtmM&^^o;OgkEM3XkN-r3sRV8`rSg?)8-N<`eNUELD61+i{wKf)2p3=TI6fQADpQ=PSfoTc_(RRavA9pPwK! eme?@XMw?hdmRMa0a?#o>GQ}GUq@S`^1^@sJ%DPwp literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3session.xml index 87fbda8ea..58253495d 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..807c72d4be717c9dcc584211795bd4bfb3db000b GIT binary patch literal 383 zcmV-_0f7D=iwFP!00000|J9VwY6Bq<#_#(SeFR5cbq_t{Qd;P-?Pzv8l)nC9XcUpZsqa612el&~B! zZ+4S?psDDlvG4LB{Itt8fPTVzEH`v?T<_Dp%G!l?h({iXhkPUuDYzY~V}Q9lp1sGs^ohr7Z2t)I90Sbd!_A<=Evd?Ls_@US&i>@XFEzR}v0wgR zelGAV&+=78t|CgQT(E`}lf^nH2`tGr4qepI+`(gA8Dp$#1pr}V0BunSB}D`igT+P` zk+@9Mil_`JiZ%dP5-u9kAi0{F2yD2BWW|mmlMY5Z<=VEXao-fxO0d?Uh*TvTV_R2) d1>qoC)L295MzyUrGVHF?)dxFZ;i*ps000MRzkL7z literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3session.xml index 5f4d8db67..bb9cf6cbd 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..14ce8fa2746be483ab959b40f604bd749485a764 GIT binary patch literal 388 zcmV-~0ek)*iwFP!00000|J9ViZo?o9hVOZbJpu+o;m|`b)h6vY^@pg!Z-*e}fw|?OM8q*VCUZQ}NT;2>U+>)%kAPfHy?cxtVgEFnD z?fvqX^V6sod6BOgcO?v4Hnn5WwIiq45DU`U&LUam>>b?Km1NX20&SFJRx;{D*0Lp6 zOH?YDA`;U?4g@$CF(F7%C#tnG22yYkFlZf$NLC@}q|uNIRuTrZXoIi`RA2#$QW2?& i6$CAGLL-8U4jju6lq^mnN(E3vx_SdFeQPgY1^@uRD!hRJ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ttl/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ttl/why3session.xml index b9cfa2eb9..52493d42d 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ttl/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ttl/why3session.xml @@ -3,41 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ttl/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_ttl/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8534163102b17d80dd4773f1152b9ecc649d7312 GIT binary patch literal 382 zcmV-^0fGJ>iwFP!00000|J9VsYQr!PMfd)SeuCbT7g=Oe8pyI_D@M|&HFX>#D|yQsKJK2Rpn& zj}<@wYwc-GvE5tS^gCf~5B>wQwXwlASieofCRw|Kc8ld@!muJsc*6_{{pJ2`7r*H; z?#Ip1Xehd&Z<~CwAI4rir3;ursnCS;`PlAV(I&mm}>C)Bxn7()gC0Dk - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_version/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__get_version/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9daf55f024b6f7045e8b6075a3876aeebf9fdc9f GIT binary patch literal 387 zcmV-}0et=+iwFP!00000|J9VgZsRZv#&DFXx}$NCV|Z8^d6~;= zSbotg4G~ia;kf2B?n4;n9fmMd{4FJfG|0#yZu7FqA?#?}NR3p zxS5LV55aq(rRtV>9Lll$a_BX}1Km=+VBq8Sz1fS5ooR+;mWgF5pLTYVmtiw~aR-m* zIr{^j6LZ%D1=k|=k-u&~a&M_@LYDaw)8BJEr2y;p?rKcono!#lsPLarUHzNyzRu{} z&VKlN`EJ0gvMLu1xv_>jtJxXddCLi%?!AkM7**SnryID}jTq$Ad!Kr3Az3ZTfBSpno4_GfQP*@G hDPs} - - + + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0c90c3b887c38ea85faed416091e82c5020ca420 GIT binary patch literal 1964 zcmV;d2UGYTiwFP!00000|Ls~$Z`()`z4KS>ZGjyO&{h2nj0f<=*Z{$v7P=DEUx_fX z?2%|A*%UO{O9>!Gnk1F zl)f(Md>-5R@|sq2T6TB;hnbwI8Pb1OSDDUevCcP_^<&^Z*m1nM;lXVuGc%KC^;^&I z?5xS>m)+NP{h2OvL#rIymTH9Usw}>2KEu^~(ao1__w_Qb+ctdd`0KJ;we97_eA(qy zdrgb0%zv)7v+INBiRPOimKR;1aB;C{^WWcC@t@19#p2fAf9Ql_$J0|+XNecfb+@AV zlD%(bGEh-?uB2lt3NI;X_bVp-Hr$!no9X8L;Vr|$C%qj;;rpS|PC zcT=5y97F%01+6ZKF4~Gt8|EEb zr~GARe?k;tB#iiqJ`naJ!sfD|#7elxO#RU4%g8s)A=pTf(03YUE z1)MLROX{g3El?ag$orY^KL#L$Z(`1LxY2f4dykN)?ikHNe$<8H%QksUr<=&cFpkQ zn}7aBzmF8MTk#nuIk#FGNewh=4H}0c1+A_R;(R{O?Hiun`^`Vzy{o;n+LnFG=Zu~1DPrj=1 zx*G1jt1^0j^>**79I|dZud9rCgP;j2ml91TA##!6Q&5h`qW0Q2MdcsxZ>byfo|5t^ zgoIvbkzZ_@L^1`*~6jFbPmXAvzCIAk~PKa6Xru0~@KvqD5n+C9hP<%BF~3`;d!L!p2xV z>HR$IRf2*XuyQWf$c;!kxa@86K3kMYM>aAI25+^sp0tW2q_@fxtI<12revs|?0%lU z^K^!Ev{5BW+C~Np$Yc$o5Z|O-NNnT|INjkqspMTDLLV4h5k*n~i1-$a!GNtK_f1kD zCAb8x#3%)MoxFCc_b+@RHUiOT3pznIMG~OIlG$EHkjY5vwW@>yXaG!cCd3>ec;<>Q znH@_s++0G58WrH4zLKX%)<+)HntU;wqR!G3qoQ=NvJ+$zb1@KYu-Q09Nfsq|W-LJ( zm5>mDWO!Ue+)6b|It+^j;LgM;MnH8pBlt`InB4r<4wK9#h zoR7_W82}M$XVWL^b zp!GAlMilRZhTvonoTQ8{KtiS~Yq*uFwh;QpDgZAMa0e0tAejn~5@zlsVIozoO40DB zw*q-3P=-BbZciksgHI0GU5!fuvoLdk0(!nNTQJf)huSF59F#)#zOZ5CMUkDMx@-yN yl~cTk#gLJeL14dr$tI3_s`)<* - - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4ebace3ba775e7665a30baf8ee80a9f885d429ca GIT binary patch literal 2569 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3session.xml index 3e9163682..0588a1941 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3session.xml @@ -3,434 +3,287 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - - + + - - + + - - - + + - - + + - - - - + - + - + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..da7144e65137996a611b871a5a107bc172632291 GIT binary patch literal 5357 zcmXBXWmFRk7YFc-ax!2vNHZG5F+@^AO1eX&Ls~#Wx<=;!Y3W9!L8QB5fOL0DHv+Fd z@BMwb|8vi|pYNrO00I81$KUBX_Uk=~y~{UjTOa-EK`M8rF<>(q#8ZdZCY*Eji8;;+L{|tAx+Amx{hsgMR>+gaZbsBE| zh%DZ3Uu3=%WH|IaqWy9=sV|&2S-#n8f4KcDbIfqC)mGZ)zE*zPb+C0CVz{Wkm)LrL z==1sE^3pn^rT&h1%ZY4k_ZRBU>*DCf>(f?e&s8g_GWx?FO@_xp@~@*i zNI4^6+6K(EHuQ{g$hH7&vZVdvxn}C%Hr_(It`BEtSj6VqrFlUn@@6x?yz!1$T?PWF zyV_q|HV~XW_=8+FWW0pNUBvLFCYEK)^IrTevVW_E>fPzS^!0zfaQcJC_2lIC*8U1| zWoQ>x`8<>NS6x33Y+N&~*Ez|~q(Nr{p4`im3A0Z+wDw7`YiZNC{kXHTdT3p#M}2af zvDCRPjAJD-2XQeRKTY2=yto1o^c!UqDrRmCvouFsc+Ign{2Bs ziH<@LSr0J7Bm~mxGr6`iGlGu&jrHq8Hg#hkP?^+ooMmaPa>*fJs}S0f5n9s6y6XKT zW69)MSIC_d;6vBTTjzqNpS^|!e8GmFfnjHnswal?XFHxVX@{^V#6J?7&V4F~r)IC; z%+Pc``C|;q|0vHdCPN$BvF{=D?jsD##TI?Owyo zqVF^Km8_&Ps@Us@l)n@nIAq}2F{==;rXT?2VE@h2qI=)-k=tL=OEc9VxV~mA9?|YhMwH#{c@XgyESzaZ1cw@V!y`-XcaYK z+SB)Jee#@=osu0!nP8*EMZr7;8zwIEr)nPlzze4iTIk_||hVz5aM zyw&S}uPXQ{iHcjH)YL5Jg@78rIT5XXS6>$mxYrA?bl+8a?zZNfBF`aS7tN5yQLgRkVy)%%*f1oxeBfTB3?wI1j+e@{l+_=zTY*U-zALKWVB2# zd}fOAJCVVHH{nQv>MEincPE)0HTvszpJcQ#vp#|JcLt4%73RT|aqq5i5_R;VVBSo( z-6QGcXC@!>tE4rVFrD2Cpn&*%_yw!|2zM2B>PH>=RZ^$WjUYn{@REa7;i59 zuIO~WwKF`XJUhl=px0#Zyks@!KPF%@b&_j}7ypN4Q&~?_EIT|IIk-$ZxQ1^n4Pl*F zxT?uGx$T81bBsSBIsSo6T~NGJ)_{bYM^V=|TR4nrwWn9+vV48*vTko*zI7a6JQ-c- z^ZBYd9^y?g`Z4m5);XqQrcK|vdY^>OOu{KVdM%K2< z6M!b9M(2%*K===Uzba+tup|*_#@&ddLF7Fg^$ET?4}mE(DK#Mldn@Q9&Usybz!;L7 zu1(0MaEp`2F}|9vmTBXR0XN5at~o9bC^^%+h@N%oxmc(+Rh@jiqx;@uS(kg> zMHtf?_Zyk2tq*od4WTxyaN`fL&Tj9hV3r?MF|75+%)pT)tv4J6-5ztL?rM3p4eNf5 z=^K@wr1`-oyr70x36?YUhgfO$?vo(EkEWQjHSyEtRW-7Hz=Gh&(%rrCNIzX|Q@w9` z#ho5=tMFL1d`S7^3-u5R2sp5_x~bjaFzn8d%SJ)3$DTNt7&g@E@2Vdd4BNpk z{_GDbt0qjf?FGdrXLhg)0ZMEDGF7_T4?1%R&5wP9p5i0x7sB21Aa^tp5#^ZJZ9~Hc z^=CKrOj}Hgobbo6WB#?dbd@!?6D0w6_sN~P9S?J7>KOmuT3;U}J4KfU(ndEdt^UrI zYyGSJ&#Kx4+Ja{|Uq5nl=-iklv8a6~!s2@GX>fS=XH=_FssHkJOiCkDG_Wg4)$f6h z)YlrX|SEjfFy#o5$G?Su8@>0+Xv=vIHrnRXdcU4VPX_szbnG?d$In|!tpC&5 zePX;WE}<-1FgkI+@c{o06K;>?x)sdL7>L&jxf1Z~RQYSvwO562jql7xkJ{uq3iMAe z^oKHo_+wl4^=*h9P^5Bgw`YFmR806{>-u~KSV6;x{%;?z7Tu7WvYjGY9CXwHMgs> zYCa5}ztTw18eDN|>wW(nA{Ltu`#3A6)gS-v`Mc>8qw|x9BIB&TRus4@7`mQ$xh*E{bua{36Ge+&3rDP0}FwLcnNIRRroI8<#fGu%yM{4*_bhfdD(98W zUSp9_ksJnkn0&s+M~0|u@@r!y;y74$AjOGPAcD=@gm5&7*Wy=EcKCyxI9ZP4VE+7bKl5A;&p#G zk%UZ7h-BVS7)PQ;0ljMbSa?$@L16}lN$9V+r)f+av8=-aI_?5d}8%!`(`sQ$7fw8}scHo_!Twb5nsyEK;(D^78$ zM?#6x$M;@2Sqy-J^VVL;%8LYSXz^r-WNuu$(ouReJ*l3J_H4IP;4TX zRUl|qyk=q($~GX_p~x7Mri9=kt(Q^xqMZ*5>LWKsogSq17pi{z43tfJ$M*Q#=2#HI{*l?d9ZZ#N3$(gK$p`|hEN1d|=( z*trIsKyaCCT=lLXoP3sdAFc9*UKo|NJPz?pC#Um{V!+33_UWH$zfXyF=ZFfpMw1me z2~B@4-5V&|Be#eg{QR7eBvfl*+mZB1v17RuTn<@JR?OYEq+-rR|3Ws9kg>4X24a2jOGN=A47&)DA>n}7;aJU&Z=AJ zNnyR28|CL|y5J++cqu9?(SMB14n4pM%{MUP7=<0R>bt?<~`B2W=&K|`C7 zY0i0W%I8>9y=uo)tg_s0N!6DFKi8(xJ`>n6yI1%>xlVR|A)ztL{jM%xDMCYFU$4iw zhc$q$je%!+fkO^~RKni8)oNN#B^`K&mtuk0Qe*~=h+DHAC|ax0bMDwM!%>jKcMF6l zIN@!Df?y~(@vPHqw^>mQe>#-$sazN&?G5dOCp1nrpX6Zat3qik!MIU;=gYV%F1=K> z^N|a0tBMHm#6$w{a5w%JT%JxjJzjc?_x$aOPvrAcfbuI;_~^vuxa?SD4E@e-E1|aX0o-1#Kt?7$gV6 z0!5~t5aKGJu~04K?x@b-h}OXX7CoBkvvj%KJ6qIQf-7MBTt7q zh4m;ABMIl~Fa!XA38aAw2t`wr2MVPa0e|BtA~5)1CVDb1=gOq!2YFU)R3?Klfx) zlzN;z4>y>;LWdl2M#uiPhC93KRHT5-Ql?EVa%|zvb|4~@9-0U;_|7uZ0-Jh<*=t&r z2llHs33466@^5187{ksbc}pdpx*}Dh!-|`!`dog?xi8)#+jChf6nl;>kPw4-!!-uo zgs{*Ei5W^{asShdY@mYVZA{SEc4RuQpP>;Ed9SCg<~IfbPmG>E0kBrQGq~NLBu+qV zypp#0kZ=+t#O;rWC5mX`Xp3t%5N%}Od z(MqsM1p=HT-_(SHFe+KespSk)oz>(51yCUF= z*)|$AN4B*{nO?Ln-9kM3tZ|%7tY8^f?2?$f%FA(GH+c=~gu{~;tc+!NL{jX)hW8~1 z_R86|sHdpzoZ1~nwCB{X(Xi?9F?j%gKRq_&IUO;n^{l(3fm=#epKxigjue#fIh@&8 zXJ<2C^T`&lcfuq~8j~D)5Y;*G?h4y$VkxBzM#<6cixw*w!R9YF2`%arbQCUkfKRF-~rU2eTnf>el%vYg)P-p^AB7?k` t^zwXQtiCiJ-OD%Z$#U$a@*1b(AN2UMJXN316&*eTVc4U=ea1k*{{ZhyJ7)j@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload_private/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload_private/why3session.xml index 6683f0e12..5e03e4e29 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload_private/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload_private/why3session.xml @@ -3,1082 +3,315 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - - - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - + - - - - - - - - - - - - - + + - - + + - - - - - - - - - - + - - - - - - - - + + - - - - + - - - - - - - - - - + + - - + + - - - - - - - - - - + - - + + - - + + - - + + - - - - - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - + - - - - - + + - - + + - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload_private/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..353a0e58e2f095999425cfbac870aee4d824648a GIT binary patch literal 6226 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3session.xml index 3acdef02c..6f8bbf40c 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3session.xml @@ -2,99 +2,91 @@ - + - + - + - - - - - - + + - - + + - - - - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cadf34e34f238e1267e5406f90298c6020f5fff2 GIT binary patch literal 1600 zcmV-G2EX|qiwFP!00000|LvMhZ`(!?hVT3py%zy?_InRK=#ZcRg62}_O3Z#GME#*i zN|5~f4oO><8OpI;2^}l(!4SQ};kz^MJ|@N8zQsRqd)=SzUD7wsz$rZ!m4YF5%5xYItJq+O7AJ z=5CYLV^Tp$^S3L!>{8oZeZh5ySKEFB|6YGC_y#XFW&GIxYRctm`>ox4#8qiX%on`q za(hLWSgHg=$h-bz61tSbVJ~@w+mF4J+-n}5 zMaO`zmLkEs?nc+$<@*piaTjvdO`uXFpG03|-A#XPr=34vUVg*hpC)yfXq!H-sT1vN z4L+3Z6K6eU+e{L{Qr$?C&ylw0m=h{Y(0l4-=(N8&|I>B;K7wx;cuU=9;qPAK_Xwp= zfju=Oy}ZsimTn9jW8a)-wk&kEzQgD`>50Y>in}6HruxyEhceu zPeGr${o9K_mX50VYH9l0u*L1+(NMCq`zw8E`))42zw@E1&fWLCLxNp*f$^eHR!pT& zFx(t2j*UC>dU1T*>DND^ow~g*UWS)TJI~GY-z$6}wDTvS9Um~-hhcTnq7f*N2Tby(hDV>~`4s%Zu9vl_%9SOYwg)_sa2;F>oP zbW+@HsYY9>i7n+}TdI3sr*oZ|;SOVSwlKEbV9Xm5CTU*fniDuURZpC%4m(xvhB=qs za_6%>TRuB(eC7=an+&gV%?TWwY9>zAhn;G6!<pax`|WmVW+y?Fz3<-?tBhs%V!YW z0L_~cA$eZqniDu!)laPI4qMglhB=p>tje6wgTnJfGype7^X3FuA@Hi#tir*pVPaN) z*sNhU%)0o%ozjECGsU#zhH2)cfJ94?Rl(*Zj<4y(#INCj_w-^n&bk4TJ*wsTqFQl7 zHFH|X1kBzd&r2L>G2PVz4{hs#y8zZLQ2c?d&KlU78?c!(gWSOErSiPQ(Xij``*~pF z56HU!)-BNdv8~S>+vbGWW)1*qEwdNK^Abn*P51P`1Dkq4-3732f#J_!bLI@TCuA^l z08ne0y$qh0IJ$4TUk4u8umk!ofOQKje+Jt#XRtdVgZTr1*?Zo3iM{(~J!bB}FtsNC ztvLP4;?7@t=KOW+_}gq3zo7B|LW6k&ehzFfZ^9|T(KG;ARhNQwA{(uv@9@ z11(il(n^QmB~7n*l!h)xr)3IKjVu~Wjxk~pD%IefjozXVQR?WDp&;EAXO+g?U5=|9R7KE}jI4x|BstW0(^F((8PT#&Ic`Y#gNdEOd$+ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__message_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1079fac1f2f9b87376a5f552847c7bb19c8d2d85 GIT binary patch literal 289 zcmV++0p9)}iwFP!00000|J9K@Zo@DTM0=egN8nGCSh#Q##DI}1aJv|hOGF4Q$r5eY zw+|gBMp}1CvltBC><62-@cFz!xD43$p8Da0xyO*NHs0nV;~8n;o4l5a_fx*m@{Wls ztniM7x?_wy-y<8WcJiiP3(<{ZB0gYdPlN#asdG$cqJBCVq6z+kGm#&M%;zG$dlD^E z>NCZjQ&@JQ7{f6on#R6>^VgKaectxhIy>?BZTa6Vy#CuSSm(!Ys*G+-ln$}BBG{H; zwK5GX!wV%k_at9T)itfQ(MRJA*G*s(Ycz09DqTVb1rn8FSK_kP%y7E($^ - - + - - - - + + + + - + - - + + - - - - - - - - - - - + + - - + + - + - - - + + - - - + + - - + + - - - + + - + - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__path_condition/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__path_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..02f17ec8b3decf096c4f25277dfa8d92760fc9b9 GIT binary patch literal 977 zcmV;?11|g@iwFP!00000|LvO1ZsRr($M1TIJ_3i|JoJzrf(8hBTKFmqhr>iz#Wrj? z$iDqjD+K7KPMg}2VlQ;CEX$+ee+crY(U9F8rf+L}YN&43&$w%F-C=GMe%T!uZ?WC; zaM~Y^*aA}ba@4rur)~GG-aq1&E5w9#T@S}yZeQxU**@#K-XeYFuC8;#ZK~<8+i!Mt z{fzB_%bz<=D|?R*+~JPt_5Sz0&}QB7OMmji(Z1O2w{6o6?)SY`l6UxfA0gRtvNB}) z-`%F(@%Cel{4BNC$i(~d<4tQYs_tI$%G}=lRYYsjS0q{wq7|tt60HW&au_aGB3cfj zf#3o~f0O}}Cq8XDdFfUxj)jbnjCJ;S6TqY1bJzORb zJpo)QJhUA?9opjVkLF=G!paXPqzSy%)@d!Aav~T57VK%QzfYC7OmHiII~rkNOvK3l zLJV9C?2jpb7cy5M`xs`fK=v`vT(0b@TjusMx0kv7E6(kIO(V{geNK5HOi^B#kYO+` z#N?dym63<1oTtEY`Ko6i*aWJl0N7|n1`y*_8Ae15%)%HsE@Ngbvy43MXR5PYzUmnm zGoI>m5(1DTKM+r>0sfDS0K^Jl%$#6Jik774%9Em#Gl6c?VOzJne&`yE^0-}t_79Jwo6c5y@3SUPdx<5NW2LG-fzxvYPF z-umZRF9BlY1h7ZWDl`NnhL8)FR-VMoKetq^!qNRy_x)WF_q_7+gKdJ%D$|2)0@2fh zZP_(88Q4yKCCDv4)Vpb321W!8{0gL5Qm7?`nx{tCTqF)|E+lK2046uf8`&q~I<#nzhhgSnG}RDG6sa#A4(s4lxPqLiq;ewUR0%uO(TI7M1U# z^A#D?HjwlRL31EuaxfeijSNo7zMn$ngiB6lZ#?8s^Okcym~r)>M^Kvce@hav_O zg9DPvO98?buMuN$guN?(DmvjySlP2f4$6`fBwVJD(1#pUZzZemwU(ed3NruzOheMk literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3session.xml index 5357121a8..8cf914ff8 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3session.xml @@ -2,30 +2,22 @@ - + - + - + - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3dc27e98f87d4c05d30bef4acf8727bd8e840b65 GIT binary patch literal 370 zcmV-&0ge72iwFP!00000|Lv5|N&_(v#_#(SKEmc-H+$%z7f~p9k-dgVGSOhVU6X8S z-`?HY7LhZ^7nH}hBI2S?{iLE;Ht|z zl^&tP0zPuPH+8V8RDd+px`?)+msok;ki$ZA$ZHj```m!HE>nh#ry15K6H`+fa(9WY z<@3q)a=4w?o7_hTY6HRBrkoNOUxdN=c%J%ok7!U>u!uHFJU*ZmJn2l50w(5Yk+c8(yH3&T%PFx{494c@0`q z25eTLsHq!7W#LFYoM$CgXgM-QYpb^&IBh^TE - - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - - + + - + - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__reset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..de0bfacc746ed0f11de7aa8990055960228292d1 GIT binary patch literal 1191 zcmV;Y1X%kYiwFP!00000|Ls~!bK5o$zVlb~)rPmiziXJm}#q#`|kr_o3^r?{M4W^?+TsrOmJF4=uC| z|J>dZUgBy;`^)j;E&kq$7B0tc-m=TfhSr=^D=C!o}?2IHGDgK$J3e^`2R9`M!eRxs%VP^fs(fR`~GyuSVbO7*Y zEdUVM<=ZbG54HdP@BJs=9WdFK)jlz%HSKnIMf=#;S>?&YhCFR`;~!pKZRsli?jog5 zGHo+pa?h4q`2b4rLM*|8VB$}}RPvyJCa7?FB{(fTnUBk<7SxXdnNr7A^jGv(^e?uQ zx5vTMf;kTonPg5I7jCz^o9!+SJnUqHZ(7g+7T9#bRPM@tKRNsH=kzCDnf~}Q{u9sn z?^K#N!hdI)8mrw5hmF*No4`@pJADHRD7Sv)s_z!ym8*VCu3GMZmCL10Sh-jLL7dN6 zCVp~c59M*qwd!NbS;!b4msS_gq`D|oMX4-GMN!I&QYcDUN$N^MTM`xnE5=m}s~A-= zsB%n?LcGI%g?>f3mod=(=5P3BRwd{4Qh?F1^-aVHSP$aSv0(T2rZ~FmJm_gK=lT4E z=kkpFX0H2xP08+uKD+rhjR~JT{7fg!zwST4J?e}F^T^lsZtOFLXAu8L< zVjC#Z&8f3crJHXb$}7^1Xy+2Zlcm-S6BYgy{uTbO4u9Zh6Tqygzs~tz5A+rD74xU; zFwSOxIdgxV^y>*j#s7DK|7j0!a8h`Xzj_i_aawWuz2Nk#p9CH!fs1dqPPmwhnpva8 z`EPYfrzCT1%y;E!LS`A6oH_ai>0-DT&OePf_O5x}{{SxkviWCu*W5Ig19wt66Br5Z z7$zS)m(p0viG%tD{s7$w0o+6~EF{Ka62@h{=%WtNu_Rd5VlPvI+?0hg$21FmSl4>OBNG^aAK|3@lLhv>bMaWi@_gP6dn(>s3 zcG+{KSpuJuaQWeRpckaZY?_7{o}wW}+9kw<7P4y$JSyOtqs&US0nd!llBFQ>9TNlr z10>E-d8yNwO!qP+jmja)NGN=QoDbtsdZ)BOE<~_ng;`@=4xT} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__reset__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2a6a79547299d835b85cd8016247ca2ba2fecbb1 GIT binary patch literal 1825 zcmV++2j2J}iwFP!00000|LvShZ`(!?fbaYjz4Z_T*!Kgd555R35cE{&O3d!grbH!K zp=cxSukVnu71^O;OOz8kT_5z=9nQ|~%zPY@EB^@>(M9$Lq}vrNn^-ri8)zF?b+CX< z2Y1?oA&wQ0_wWO^{>l+=6uc$9Cb05b3W_e#hlG%6)xA^ZN2#$ z)>w5P2J@&Bx~pClv>59e5-GlWZS&%DT{r6+Ro82X|6o_w@oLrKXZjGXbH=vrb&v&W z_7>((a~=knI_W_PjcW(p2HrtxZs7e~M^2%@FTXaIgvLz#(3{b$5`LcRm-h!h$|2%7 zhscv0(tq^3^>c^U&p)+(uK4z~`SwqmZ@9Wz)cEP73DZz@y}Dj3>h)DaJ?${kC(`;i zZ0=;fwycEIPaIMsCz)2raPWA}hyF7y6X&C+xmJj8Sipw|*UNl{unoVps1Bm3VF*mqK+eQKDdbzyazVhvx__Bg@R1|wFN+~KL zKM<}*q3YOFc>z|PXu?@xC4U^O)Q^MJH0PgzRuf&nkE@BQ^mJ7RfndK41TzK%{S*+) zV<70bp9s6*c>z)ZQUTKU0@4@&1pih7P8xC2dI>h?ek}RjsaMh+F4uMc2OmGS_>sQX z33IJD6NEt`(H=nr+tz0fDdLC1>|vXO_jkn}KR~!W!t$?In2$1+KM7g!n6mO9WyJ%^ zj@vN8S^gww#beUSvyt}LJbwYwo@l}=zfK+QI6~}52XtLK9J}dSXjYgW-Kr>%D3B9pYwWcgH=lUjZm!zRoXtL*$d*5v?)38Oa>B*iWp~*X z=D%v@iyy=M?Ow!}%l4A&Z!pps~?;}=rs6#vi+Zi^=`U` z?EDw|H6Ki@4*cw7s10`aBT9i#3WQQ1{0|F+GnEHtP$CP5z8i-MhTb5CUe8UPsnmE_ zvQ5xYm{FKfnDKKnV^?C_|E9epd`b9{@UK4M4_~aDjDq{R;qE_36c7{;6cD^|5bWKu z+}U1kPL`XKCC|&v$*1vfd5%)zi;`2HzHF~ePJbFSdS7IU5;@tHM|XB7X&J2f_Cu&X z5zh3R`Nt2dr#a&#o>rHK)z5rbT~#QQiAgKRnZoRXWjSYN(Rkxj)chCzyHJ(Z*?Jey z(J>$-gy5|pA - - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__reset_dependent_fields/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..dbf63f31ee408d0d54e490950ece8538f984c34f GIT binary patch literal 61237 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

-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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3session.xml index 6674ede3a..4bda59d94 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3session.xml @@ -3,713 +3,511 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - - - - - + - + - + - + - - - - - + - + - + - + - + - - - - - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - - - + + - - - + + - + - + - - - - - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7f79e9ee5740a9bbbc85e0454bc2596be069dd68 GIT binary patch literal 9180 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3session.xml index b5b1c6c93..3d8e62222 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3session.xml @@ -3,413 +3,346 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - - - + + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - - + + - + - - - - - + + - + - - - + + - - - + + - - - - - - - + - - + + - - + + - - + + - - - + + - + - + - - - + + - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3364fc80e1c60f8bbb0633e30484c3f39693fc81 GIT binary patch literal 5908 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ecn/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ecn/why3session.xml index 2a65f76f5..2d8e46d7a 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ecn/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ecn/why3session.xml @@ -3,437 +3,359 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - - - + + - - - + + - + - + - + - - - + + - - - + + - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - + - - + + - - + + - - - - - - - - - - - - - - - - - - - - + - - - - - - + + - - - - - + - - + + - - + + - + - - - + + - - - - - - - - - - - - - - - - - - - + + - - + + - - - + + - + - + - + - - - + + - - - + + - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ecn/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ecn/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..bd462432c4d6f841756f83f4e2834b3454373327 GIT binary patch literal 6195 zcmXxlWmpspvj$*!6x=R{CN;;0d z-*x8xIWx~S|Ar7@>cej~k6&IP9X*t; zLR+%NSDr*gS*`|GL=iK?XEwQDxAPk_*!8%>Q|1ry1*hq1UZH}Vp^w}QIih^~OWkK{ z=f%~>bbP~Wj~k!e9v>gwv)fzxi6-2o5r=EBHF{w|m*@Kg7&x-5q#L)1;L2zD|uj`k^{3*N9a5`fz)0y0TGy zY-MO>sr)qWcRe1zes*3Ke-{3k?I-o}na#ej!7I`$4_->?yO|g5lKV25Vj@Lpk}z1a z-?Go0uV(MAit6X5e%U}uf=cVApp&;U>QhQT%0_{8;i7Hs9w zSJg6U#8y8eD?Ovp@XJD{z0aF|@2jLwJNRb#KGl47?NvJ$=cD@$-!XL1pYE->HF=r8 zuBA!y6=9QWI@y<%^L?-pmMf%G!}qSwp|~ycjUJ5j^G;sN_g$c_Wqmqx9*!dmyY#+l zJ7`O7yUM@HzFPgZ>b>Z#+Wgz@s?uuh!S{5#x53co@$zV`I)~WX?TQ>#4`WhD%LB7$ z`8>5wIHpSMQ~6NI-KEcxRWQvbU9WiipCUz}uB1~d&UiASEJU}k7FhVtY-)Sb;SZg~ zX6!Gm?=79T{1Cay|Wd9A?%R%3)FI)~D?!ZSqqu{D`KhAy(k~%t5Tt19!QYyYDNn8}F&) zUcc|{oUa4Qw-ZUKrF0P8kH`)7tOY(D_3(un7l8KYo2mo63L`XSiNlc!8&9B`k;(VZ z^@%?y=e)^d7C~NRuKZmK)~;feTCtEaIgXivrRLB9B-VZv1 z(l=FFy)(2`TBO?S7Z(efmLD@#8ZCR0g~_zf+8hzLNJ$)82$JyI8380TR)^itS&(ZqNMN3fi zrlq#q^;Ukn#DAyRf_rWT#lpGe=)0dIrOTYC)W51T7{yhI{ll=EiYW(Mh`gvJ-M8SJ z95yOUZIkEpjyJlbZ~G+!TZq1JmM%|82q=~wyrQEmJ+y7QP*3RGJFiy6=-5GDx zs$H1+ARkN99&rJhO6gqA_i={*(@90zIJU+dH5xpviVxX@>D_;P$`~a=^oOPH z50^T>i3#HTae-&$VLm+DYgJ8373?}a@!*n%19Pc044;0#TRXG#jZZ*RR0`bZcN4c! zO67j#e1C9K1@ht>9L!*RH^#g$$Y0vun?#o}%`(qe{;2+7X8L%_Q3X_Z9$wauPa>)So79cdY=3%p0rlMJ1+~DNAVX|sl8=` z=0*;&XirN|Y{7hUY~XLMU15EccuO4G&{wBkHfBEW{2O=qG~CA^FRmaz; z^&<6Xc(thB<~9G}{{DJ-)BbVqxV^9vd(QezLw0BVPlFxPt-GopwONsJE$8**1-qgO z^)us@e{Q1w%aYxoF5~r(i#d!Daq;Lu9*6OIgvK7?iMe>pBadr%JuG{+Di@rnwq`6i@Yw$n z#l>69SWCb4i8=SZ;lG?bCQnRe`G>SC(ftXvsNs^cMEsxY4skM3Z=`e6m85i5n3jr` ziUA4Bn+=YUjl%cc7%~f6~1V2*_ae49$@&lj5 zLbuNgY&gxk&H7`^dgD_S7DtEoGgOJ?iRFQ)ldzmk>&KaUvHTm=SJbL@RW%0QB_TPW zqkP^^m@CdDg+eu3vz4a^P3!9#&8yU9XkH;*?11gf=!*i1~YL^;M zyZbssX2y=Hh)+41*({S?Gk00SY1Tfrg~97h3?qJow85w#+v=T-Zak4PEiu|ZGz4g) zeK$k-y)ur&;Gav+3%IWZY}}ld6%tsfJ*+=ALJsr)d`BX$yB|<50WbX1Rg;bX`K?$p z<1Xf7eDpZJ-dViH-t-T%LRDvlWZP|#x3?-j&0^yz9JFtE4A^)TM&AE&%?XVlHNe%L zR?=j)Nf)!fOJD3rk~IrQ$_g{zH7;Ka@r_E?h)8aqDd?gw1D0+dkwxRSyA_F6fH^#k z))RHOcD5UjCz8gc#rol|HngOn;QoW!8H@5^qp0C*fmpIkv^1KL@mSky%6s53Qc?KY z3Yg-&JS86s;V2NY={l!ADWrno*^P3+#}nOekZPY*&~r4!lHE|=&h0)w`r~<1lg~c& z51#R&nk?=7s;$vPzy=mio$f?R58y=w1Gfa^?hbcyZ+@yW(P@Ips`18T(YF+>9iRT| zOFlUZ2hScqu-t1F%w7cm^>qF^gDRfh)dlGGj*l*K!~L45hrccaRRuB2YW)HF;0mSs zA{$*edz}cMaVtNB%spUNc{jidS_l@ETNkDq{_G^Pk9`4aoft$hKu)wyY@I^_mdGWd z8#7F_?X~`6>-6*J_?8&-Ki-|(>jnq!IByq#FFIqm0dIkX6Hpp2wmW?efb|eFjs>Sr z+0Y~U5r=LA9`s{!&P@5`=etW{j;pf9YUlz*qp!@#RC{e_gWo89oUvZ^{oe;HvLxNa zdEP%L`VAX7TODMVBk7s58`-jbtBxjI(Nhs&oaFtO06~nO3zly`5DK0D{Ux>c!WIMy zS4TGuW~q3q8OhGCMe;&vieAO|ex@!$LsUf+ z4O838O!Z4nQP8=ABr#|T*ncTtnIv2NL>0UoSLgde;#^F$IuU`- z9nQU8E04b{WyTNx1nCAW|Cw0X{ImUaHQ^~NZ8yEoke+wHFn5p{^F6;1wDxk@-`jDx zdOHmX%^7%O;km+ica$G8I=A-rWi;%ewF~jrw&Xfb+Vji?O+yFGf%L`p_`|y9*}He6 zg)2rRuI7drc!OiUm2$JS`w{k}j0*LhO>}nbHY<@@WWzT-U_>npy3B8 zn^w881+MUWUzo4y8fFfC;}`OSKka@?6QK|y4;tk_YCK$BL_|9srQD( zLXLDYGH72+1FUi{r`EUW(tw9<+t%9$B{MM9BwS~&$%T= z!ydj6Ox2wZtqiT4wq?`OUjt@3ugZf|r)oHCIc%#532XxojPGVTi>&5}8;BdU!?A=V z+$J6la;Lz*aF%eE%B2D6xxxdV-Quh$+=K0ckND`jR8%S5t9gEbE1MG<5-urjjEjn2 zeA6cXlmId0*5~&2bxd2A*?XAF{li$<%+tVgIW)l4`F!lIT0qq$T@~FH{g)t5YsE?? zTl<}CoPxrqK+^oHkD=K+Uvd=J71z&3PsUUZMlz}k9R;?Jq zS~@C4s{Iqr^jQ!f(Uw!INZVAJXj1=a(w$tkhEvp${`)nNTl;gn&M>{yyCp2ihDP6u zChoD76;3m_#&OVF2fv{h3At6!`Dz~%>dj+W=lJo5Cd|Ib0{%=vL1Sg}kMMKMsPK|D zAeYK-%`3X*HVKF0^J^V%={UtUgiSVS-fnSHNhZ&#^~PO-v+ z?X$J<-Q?$~@0N#xhk`YmP6~Ksh;d0pmT^LGLU@BDK5!XyI&zS)la1kqz;;e4Li9V; zIvqc8rQwA9%|Vw!?@sSD<{+ywMiS!^<62^LAKK|B|Jzp#Q4DcO41nUS|B_Ugy4yohFx3Yg7ydVxjO%Bcz43s7%V&cO+<@?F@n;T&nAOeku6nij z={q4#lLv-!hpCT=$iQRcRUk<@yBl{Dcwbim-$MK^=wZno@?-}?CHTno4G5NxCstD10qI8vZ-D0=_Xq-ZXYsNTb{Bei zsSXV33c4nu4iWtE&>Fb88LBU#F5$$^djIfnB;xDA8DvDfr^>ZA_Ir3M-(JM+Z#>b> z1d$L3!=^?DyU=%hh+)k%!Nc}nK~-S8lD|EiYCsftej8s>%lKd z(o!-(gwsOf2IN6?tc(;pQv8fg!D%U_yF(P?S`h%zpXpqzjFdpZ(I_06EWrCr+HA{& z%EZ2jI3P}`tkTcQt|R|kf*AyU#4NfsT+v{;rSh?9>q;m8(mEA3`{3Z=jck>22n*pBJlI08)l4v1%%h* z2wXbzomz;N3+hpvxyv+y$gVaOPS*d;AET`}uC!k;T0nYhZ|IuUhINKuGl7nqAz5iU zAEV9+KC9U1TioijD!w)i+eBy#_RBLSt9{*))L2X*e9;W8XXfX?>}3iuN#8^8^#Ql= zD~|>-=*4B@HQ_PQ@QDQVl2_KrbY9v3i4SI=DSitIDp`Lbxct0JhrfmEU=^&I(k56! zN+_bD^%BB3U!kbrO-7;Gp2YJ$g}p0|?inH&U$=ujpH{f*7Bpk`+pb$DUs!I_vn$P9 zExd!IjXPcMH8h@`Av$S7?{Wd4L)S+sh_NZ6tnbp-#({u#=X0|OqEFT1Lg>;-091}V zgo2v-5q!OoCBYlA;8Gd*Eo&sBq#ZMdhHd&OGnps)22P4J8F+w4Amwm`NNcNt9U(21 z#j;FblgA95lSyu}ko2<7KTA*1sC9BA>~C^hEy_hif*Dc07@x@_Axp}9CDXvP+D(Wx zYUu%pK9a4#Pg+w$(Mq29GS~oX>5V-m>}CcvMLlv=8-v$y1*Fm59}5Sl8{;6Jp?pk zN>;iWC>rEorPOAe$y8$rYW! zdBgNJ9SpKRO`P?Vexwja!>@t?!4kt0@t^o9S?P_zi;)Jl$-{lZWMtfWEEv5LSULXb zgMa`hC00&^R*(tz;42w3GT4?hK1uDlI@v}pLPJrY;)0*mn&B0tg@lJEa$GHRB%m$< zCDqxOFf$;77~eXpzEcn(y@JEeiLm_<7i7b2TEVtHsaUwR-q@-CM&|1W2?~Tk0EWOM zJBOO(KbS%nS~mh7{IK=Hif^rk&T^=yULB1B6rM?tgD%wX{)rr%pi#h)MF>){W-z7 zyU-B^-U#zXBuR($=HdcWSmW4x31w+8pfc#-jV1XHE=*Jyn*nSUzx)hG3IFct)L7Vlx1jFk7}+3dy3zhqC*D9fYnT%iAsU*l;! z(&;Byq_)>8j=4nQrU}Bj;d$)l7V5Gm36ow}7%|3ZiheBmA?nZ7fyh&Ns~#nnz8;pS zfb59ykdNeMFSUTT@ur(Zj$vUaSW%mRuwr(uMdcNe-^=2d)hh)ZY zmeVUS_y}L7~!lFHsRsSbd#``sWJ`znfRu`PGnKc zMAaYUUBD-y7peiMb%Iqq;hwH2$er@*l3xLc_1_^k=5ZRH;c%eJZ>rjHLIkT~Ry?9I#nSW4Pz&$pKtdc*Svrr(Y0IJWyMR6QkRQnnr!LuX6X(jMVo-Uc~ zY?4Cb^#N+V@-$r@D!h_tt|RfQXDEL(E1NwD>xdf4YU%p~Kq&zHvXpoSx`Z!i9nzv1 zT(>*{%|(I3hB|IDrN4rLl)-NSACJ|j&IuOM&jJ`${7K@%>K}M$6Qy@#)Xh`|)&yDQ z>rk(NTV#b+ho)gmgWU&Q$>N_wz$iQZxoh$%#v{g%or_bxF|jFI&BG7iUsC;RW<|# zz;KHaAD=~q*qjzS5&O^c>fjhVwikE#;T=dtTQ?O!%sPfbl8@nmUrd30U_4PQh8c^^ zKoMO=bL+5V6z;SB`GjSikraF$sxII&;x@3}P6=0M$NjS*hsueB5L5eHa{^-dXMsV= zO!FwwX?~~tL0{wAOwu0kJC=Au21!4;Vu6@AUv)VAEU<`!qqaJKeT`#{9!C-X+y#X) z;1Lp=A}|0C7l$Z_5b8;D2lxl$MxyRPmft*B0nN8OEjro${mk27`=_I}=?XuXlN}9n1S>37sv7 z+6Zo*iBytQh?KMYz$$m8&BKpCWsHuP=2`xym-PGi_9cnW GQ2r01BjvyV literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value/why3session.xml index cb237a83d..49c84ca54 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value/why3session.xml @@ -3,1260 +3,1201 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - + + - - + + - - - - - - - + - - + + - - - - + - - - - + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d6970c3691dcc6756451d06c368cac05a2e8944b GIT binary patch literal 20883 zcmZ^}RajixwzZ9i;OyGw$*TjB0baJS&@4#C~s-QC^Yf(;Py`N=>N9_(J=HI`dw_9Z4LN0v+Nr3FjLBZ$CF`u1c>$>_b zDlD=Wb}2P?soh4rYgp&ldtBn>$zuBLZSa)0^X0|;QB)(IezW6+qVu&}%aw&fr*n3HgwQI&-So%R zT_q6b8cIVc>yXDnc!1Mj>PVzbGhNtZ9?X3RQ#zX#f+3^gqEskENNyPbBmmJ#^}BJ)#ttM z?o>rH-^24Y#_Rd;6!@tIao#tpn-_0-?~2N%`=0mRGoAOl;=nU%L^*;iNrJ2}U9(5g z$0z5Lql5js{pZF6w9+L+^cT3!ml==8UD4G#$LE{Fd%{-2cLVo!+2hiVV|KWNxr4@b zgvUDfIhWDtx7dy~2qO;Ucm;fsd?j{h$>JlK{B&-H#Y_ep!?)+SfCKtoP<-W%i`;fe zPi^BD{cmB7U@p%$jU>r98E|@(#)$Cz*~rfPc#ZscvXIq0F#4WhL<^L`^S}AaID#uD zD;37@vlQ|WBk6<1$2d zG`4pG|Lye6Zm)-k3_Fs4xN2TBp53;K&MWWjznW_VjT?;K*`LZ!zFyx~!g^@}-ouo! z5DB1L%=fIUt$fZYZKAEmGVqdR-vj^LJQHZJEnhLu8W7Wm9e3X*Z^NTkc1E0n{}j*; zdlIBf)!uUh+no!a-ne+dMa%SsBR8UhfBK_ChXc8~`l|lspGyCHex&U+<$bKQ;WaYE z?x7%~_Nok~NUt+`Vi871bK1~3aQwt~rqq~T?j)l{x=D0^3UV{H;f|xP{oaOaD8XoW zAe>7NKHeISlxA)`#{AM}YJmK`Fe15fg_jvTSvUbXN z?DEj%`G!vzdR?QFqq2%glsm{+j`a%5Wp0yfDDI%YR)o4+@P6lo#5BZ1F(iNp;lao_ z#3z=7A05kcDiu2|EE6|2F2l4KH`dX1n>Kaef!d-IIfywsfkGv8|C#B?eiK}4_tri7 zW)fxOO*r`Q*Vh-_IRD&3=-qfl|Jn6zd@@}6Q$N3PDqMxKod?M~2=##O1iEpuwAL#> zi*(LZM7}1wPA@N4$e7BIknDKw@Slv7S|h&KD+VX&yAa=9i=+p5ge&Jwy%VLLYoFFN zt`}ufRvw)un^F7OpT}g4oKSo0Owdv=q6A^@(CXyC)r&xB=M-o4DIjitXP4Wj@rBEsfALB|P64*($(H9KjA2U9@zOm1C&S%o==yV4ydcRG-37x%8 zs=Q1RI#^qJa#*2WnYCZ13j6}O9hDfis-tdh?C`bO;`GkIl>)lhBX2OhZBT~G4^pN% z{Xe)dW+Hxxzs*4Iby|OUt2q?tdBvu)y?VUvPb>Uj<4#w-tTv&6w6}A0A<6HTKoA9L z@T>o>{b&CKh0ba*T`I-|f;0)|atv+l#>$H*!p(P6@3uGl*FOr2uT%0$btsL`8{P%* zs>hxCP28Wlo)C4zrK1>|2N@kv46nb(ii<2;cpaWc8=Z(S2nu%-j{^0~LCoF$mR#g9 zrSgf9G#I%L+6@mPBOk|*&G5PLJCnYnx90);jd3RXiPT0Lvcz{Aw3`FzjWQJyxb-zy zo|8_+%6&Kfj2apoOLV&Ti%f41tIaUUl-$rYJz-j0YNkQ-VO>|~sD7@f0nq0}dAUwF?hq zNYRMPD63|K?+m(16$I}5T?~r?0}7EJ#I=Aa`V&W|8 z*audrOM}|tHBF~@ihTgHGhwrpem{zEpZC~o2J`hxk1~I<^r|6UbvuN3xU63Z>7s5k zGqO1X#6CS20)I`XP6iJjA%p4bx>4nC0$yK^D~L82dr_Ea9rxiZB1?(TDrNNT8}8bv zptH%ZV+6dBk9IEx1)~wi*AGAR8rsGa?az{m#*QjMzXUbot60bX!g1DZc+To11g?w}~PbMAH2?5sOR1{P9j^ z#bnB{_>>fZRoE!!uhvjsdKf!s4Li>Vf-;J7Ji+ zzw)^-KyZp6ksjp|2Oq$5c6=z4xkFSUeA~@%wQcTo^JyhLlp~nQd#uw4$4C zjq7yD-d>(&EBuO`2+|%g*i$y1HVi_?yGU~n_YWqNFU(2&r#iglpC||nUOTsEjZwln z8sA7f++Ob*+sCSi&jYJT#qGWd^GIwk>q~94wz`&Vls6vr-eCYr9~U*0IyY*L0y6V0 ztquGd3Ykqc2muESdqB16U~O!Y+vdcL7%R;WV(G&%2A&r|ovR_VU2q$k+~PC6eq!kO zg{5QJG}GM^L?*%TABLn6_So0Qa*x2G`_<6!}{ zp7Ro$bZx2J{tP{s9TBT`EdR1u=_!=5M7|f! zAX-Acd!hCiFqSY>&IS4FT-&0k&Om-&p z#!}t+zq}EpR_Z!$Z+AoK$47?u2OjMNb{6?}sc5f}Y~^%~iend&oV`C$s1GL8?ys z*LmZXhuXv;y#=Yn2717%vW&Zb>eE<)FbrFZo*mj&t7CbA?FL=lOkXl5F;fq+0rf{v zGAzi^=x$MSrz>H;GQ8>1cjJc}*3@CNSoptMMMVT$?qir}fH4g%Rgf~6#q21O< zi<2LlKJchc9ALlKQfqW7x9eRpu`|+Ao?tfjm}qUKFI_LUSn7quP&|FaR2_5kH5#V= zKG}gt=1pq(*%?)`=`Pz0K?tZmcc`6;FzeHCj_Hu&YVRPwtKJ8_mo-S&WUhQK}tpiRk118^*6&o*|qUL>61S5_lqW847|yN z_l`fcD&hQ@EqQy2zN7l-#&fnwnLRPm>lh+1#H|!F=_NC;la2|khKX7ZJ_NjVU0@rN zUGq+EIQj4uu zGbNM1d*R*eKMYDG;m+<~ZTDEZrqQaT6|?c4@oJnha0;^cT5M_G ze3#9M40(YYqdC&J`)8~%LVO!;KGU#gJ^lwaJwUNFJ?UfuvgcgiHGRAnfkea3%7ftL zvkfU33~E3K(^vToW<_{Tu-|UB_mhU_^fm^>8%VIR%~c?DMQTl1$*{O!Qnl-h6T3Y1 z3~yN7FM4ktEN^2*g(KbLK)o*Q?C8BJ?Xo6uTq;IT+ZTY(t9g}}8{JkrmUwlpi}M0% z)v}gdvk^YsE_;=5Jrdc~MGAyd8VU zb9NR4bZV?#28Gd7u-(wtG~JPm#;Umg@}wUN!BsmT?me_~&>&3x+aW!`1oKd}?gOiL zgfJuw-hV>f1U>e?G=K8Our4$=x#ficI%Er$79q4&kchR3YmqIM9Z)=_nL9$lU3VIv zvH0MKpr*7y9TMSw+^7`~ygh{@i9nMYfz-+EgCU&x2%DO zpS~SH5+Cht&szLVmXS!f42bXl+aHPl@yFo5{4tbg>;DB3C+8m^gZ~1O|388J`M-dK z14#d6kCDpvANGj+rg8C@AItH`Qsig{pUC|j<4BGdR{0`4xPAKYr95p`&JoH7pVv2I zUM}IY(>|982BfiKcyc`nqX|yQf8`Okq~WfSlsmr@0nx~2vVXN*aM=rgvw=7MjLwB@)M6%MEN1q;F(H62c0IOKrh#z| z{ThrDb;&Tz0vWqvMwA5;Y{T)mQi>&_OhYzy>Ut{iac_CnB3y*oV+=c;Iu)N122osE z_V_2H1jwO1W7DxH_nTaH!P&Hkz_5sS&K};$_+tqF5t!iPv8jUvM5C_NQ!Cl@NpQ66^7R{uueR4_ za;JMZG|qoWFQhn7bRNSZdl#qqSBN`5zAL!ype)e=i=xp_t=5SYVc%6WQtNWDwG`u$ z)jx+Q#!-ZW9-MECv-<-Mt{zPc8XLx=^Ts8Wo7oH|HW9hoPLZcIXMgSq)6V45xrLdky@=wpC58R&`tS(#DP4AL=nP+dfxMhk z>O)Dm1&_EXJrTA!_6r8@M^M1#qW3|K$_wLs*4%_eMFHrO8(21kxHcxPb+%vZfZ{2f zN-k1p^0N78M0y{Z$-O3KK&*K(mDhDLKlecB{iN|BI-Li%56lk6u0PzFI=YQ!R9p!e zgT+qC9n0e>562!DJ7Zv$2W*MJtGGwXjui9CJDbxlmlu)Ms-|reIBvG6*rHAK9R)n;ZX*caVEH7owBalEKy!~Gz1_PLCa_k1jB!(`l=je?Ht?GXC? zn_>Yf5*0NO*{xcd8gEgVSMr=m#O{0Xt)ChV?_V%_jpY-6jciNk~UEFRyKSO@z__k=Z$2B+W ze0+PK?-lxx;PI{P!px5H7%lERFLMXZG0SjaJ=Sqhrd%Zbhxt0T#E=$ElzsTnwxMKg zgo!_oUUHwMUIT;1K<)nbO654xu8Iq%cPZm9_H-D(;j4*KU}3j@rUt-dX?iHd?@VmO^n2@9=^sIux|gbtfxk$^T=w%)94-PGq7KH@M@in zEcY@9I}zn<7}#6Fp|`V)03TFteA{IBVY$8}vzzuDS#B)325*o#TA1 z;an(sw|y*MZqECTGWPWHn6vovmuKNe#XiFBn`GxW@z@cuzL>A!u^-nP0jgz<;kzv< z;>kM4+oUH$d9t!pY5t7)GE}9+*wKg~&?Va#H+a}KCK#Rn<&p~7jPm(EUY(!@5P>|} z%f6)NgYJ1iRW@|;p!x%OR0H8(2!lU|BS&F34;%0mJV7=nxFt@(WMUFc5r@~tW)4qT z)icg1AqvN-c*FBU_ugKp)%d$wcc1>NT3`OFTCeOZWDOHqe{VN7l^Ts|OPNss&8Y!N z*~qeD`@4-aHSk(XA#CSQ+x%^;Y56jV{N`F9MNXuo%qL|!#a8Pjr}oNF%#SZ zQPu0i6}w)NC3!hMKvd=R=z1V5C!An#Va-8g_lWu4fa|{FL69Z3)9U_K{+}$aqx{1n zR}=T%;w@AqGsy3U&wXW3l~PsIi=6fpAe0Lx=KW7y7o!ZjYn54n^(5#pVi;aMyrcwb%KIA*~zcQFOLRBj#z07FFbST*mac1ceb=nV`S8>+v-ZZMnx{mt0SFiSpk?`&Vu0D5LIT zSgSV~bGj=c+*_b-v{WEuH2=5&RKMX8gKq5isDViX*ZOZ@kYq@xN4dzRbb=}fHb7mp z2HlJKUR8-yyroLwVKqM`pkwk(;fho!mz90Hw(M`*uyS4*VznmWjbyazA0#fix_|^e zLxc;$Xe8g2d@$Cfyx%dI3%~%bO?*9VPe2(Ky*7x5)Zd+G4iNKOAdV}mnT>YuO za!QQD6(s>`#~vmkgeu_lo`Jy&i#I&eedmw{e(S*A{_gcIg$P)-hrpm~v@M}cmLmP- zpIH#jFgiRCGK+uwCse;_ z^1>ABgn?)MHwd+EXnhDz7Krivqmip|pgi9n2q+l|7G_wrfyG*Kv8m?dqgc-X%FB41 zZ03Q*+U(ezeUz1(dtuv$XLSZZE~(-flV7@_*0NHcPzT_aRB64+2Ts_uTD^%)xC1J_))zRI2fXZ&?Zjg8f zYJs2#)a-uXaR{!fT<*Y?H=@5;f1SQMZG!Tsll{ED2yDUBzgdj@hsC(RS!DlD7Ksk+ z?IZq&#Tj}wtgDVQ=#}v099!KWx4vXbY0-m#@G*H~1$LDIID-SHh&dK@Zb?JLpOG|gTahP`CHJ= z<+=YG_C)*>_OP@4753==N7#e(zrvo~1M{aJy_m}etu5pehoGUCn{Jb334Ozb{N-^L zRcp&pWvn}@9v>m7j_4=npqJE*@xRBJ~wcTLlq_lJE%is062?nCc) z9O~UgM(bz6t#i9WVP_JgjeDMEG}};Q=Mh)iNHDp-qRsHM($UuDa}V+tx_EMi#D~}T zYN2m>MSW6w1q_M>h9lh870P==f8{*0>Jx3kP_BYZVj{g@Q(4CRe)=rH_uqVqsk2ptks^&ug0FBP#~G%Fn?1Y+d1I zkWwPr+`O`P032fMfkVtnYBtjY2%agL;uXwpP|)o zTS}PIMdymNaDpO>f}&HVoDGdfhVYCFSR9Nd7)-2(Q$k?Cna#mdc?RW$b(&s(E33w- zRY;#7aS<*VCR)yNw=k^`;9ChwvbEM5&ICQnR$}AMf_<^ctW)|~M8i+kXqXm7L?szL zOuLLlbPpwFGhD#Vjr;F>hY~sgfHbRCGfw+gsWux1zF-#*^oVFa>NKFLpjBYHU}O0p zXw)FeAY~xHelh8Axuk_h7uYSnl%1tqxq_h9)w@>|f1&4rKZ*G07WwwR!-#@W0J}vH zE*}0<<2pbFI6tskJgfs4L20$GB^&v!&Y@bJ&{O?IAef77e*{T!Y*QZwO=izBw38;e&{Rx70`(teY07$NDIC=j*#vIBKEKUp!n zIgTfodCoSL-&u0Xs13kRmcgikzr@!E>=kcahpr66YU($^T@&{_BC+V;Fat*+ez;Dm z1NM=sPFvS`XCFJ$MBOLV!Md`HLH+a@r1r{74zIG*8T{awgRyU?u~?D@sRlWL zdbHc|$Xjqxtps?Ee?@3hz8h(QB|M_71T@yXEh*1;Zl2dImaJo?uE=Yb^0<~ig|#Wa zc3C){U0JRJ4+E?Sn{)SaYqR>RyW7dV`j)L1%!*;}`#e}C?PFI;| z)o9)qP9|RR4g!S-ehvr8u>+aoxrdO?QV1`1OUC1*>6#bN+VYA5xOhZOk(Y$T>C8DH~Q+ zZ2mYn3ieNcWjTDA zbcj(8Se8AS8FdH<>7|lp9hz6{?(XhRW4dQ_f(ok|O?HCpjEwfV8i3 z1BY#`?#1U5CaJwQDI)U<bQX>wR`3o&hKG7iih52%$oh8%R0zO91;8%a z=<9+p`X=+;lTN9Tbd8%7m_MH~0|W1|D5Fb*_M@$dOE}xyKNff^F$DU?5`)pMoTT^DsvPrIl-ILw`gB;zR* z`O?w4T6T_Lo!aY{HZZ3!*|}B2^Vq(WpZRHd{aSD0{mj}>Tn5tKEx#=4n|+ZTP;}f% zz+A@5=aZ!qC+)Z#fQRmbqEKe`tSM4VFGiA9rwG!!zIxgG=!$b>aj&i0Y0s>3$I9BRL z49Tk> z2p5%wCQlh!86#)ckmxJKv66L>KrQw{b1Hy>RkO>V<1NH&qLly+bpqV4QH*iKN zSbff`fE4?eCMfs@85L{gH+(J{gGNsH6M;~*uOetJ;sS18A z!_u#A6$`cO2?zD{hW`R0clld8Ev|$7>wUvpWv2I=mth?+$U#0k6Mx*UttitPY(9@N zO&e`T9uLuV*-YI7UQ%i_8MD%aGb!5p;&+~yHHua7Q;P1espTf1s#TT1JANiC3=rV18w<@(FDE0|mO!y& zpK0i`F%t7pE~6>kA|TQpsGI%1N3rs&s)N!i;P9MWIgp?T9G*1}O3n9gt0({3z}x^D z)q0k(3qLk62c=vol_z0iDt8ke^X1Z+87nE3EfIde4UA34zcw&qDwyf-W2}!C=Le;& zy}$y^P-t7va#Pt|ChJG<#CpWf*5;AU?Ayw%7VX(xc20R}KZRHNA=s#SRQBtv3SfB- z{6rcS(?6unQiE~c3EaR)e{5iOlWhspY)zIc|49~Cl8ZE(yu88xP8JEhCKQ0lBKX3R zPUd4bkV~2X!q*W$^b7a!tnp-N+#rmCpsbV`Jwxr8Av|+3M_r=@1`F$f)Q~^lOBr+L zN0>bn%i1jISH`o*YL(J9d>z@!hG`a!f9M)jegC!;cwpgX&~CWD?KEe>Rwok{T_!!F zkDXHkm$Knu#THmZBUr$$W8lArPb^G$okkn^?`s_B*)>%90yp(3!u}(n!Q$hK$sl1w zU3?J1{U7ca1|rhsLBjXpj$I^MekfabpOj}s;W~y0O6I?_@F1H0d|z;fD*X>C4aeaI z|3xK_GH`O%&G7x`6-|J@2U@HBBssu$c@E8(mU=7&p$yn7G8sn^4f+Fn#hd*B4_A*i z1}&M{ee+KXnVat~@{OX2lHT~gMmK)NHo70yymGZ!T}bZG-HSMo>u-5##7Z6)BwH7@ zAsvVGc-P`l`5LtL;cK z=<{*!B4rHz;5)+*?oWOuYz#gii`Zy!dc8j4e+aoa!wBcWKIZ{17Gy<puM!%Bsl5hiWOFkUol7-5e}Huw z=#R_Swg~T57lz^@kT*|xW$ntGsvk-sDEk;%Xwe4W#}SM%n8Q-)Esbect>!}>rDDsD zczuWmqo0?exd$yGNMnGyQrjO8g6zFp#YyHJBRrUVeXvi2h^}2OS6}`g6fIf-j=+!` zr`~kKdj^P-OpQ$p-Yw3zuNzNW7=N-Ya=dZ(q z{&iWR6#%um>t}UTXWYmm`Se5Qgf-Vd-GA?U%-`m?Cu4E*mpL}i0?qLa`Z#0Z)_C^+ znB#<*mGxidC{YMBN2U*RH2)8Cl=}~Jw4T31_M@*Uw6H>qm;_JFDqpu({9k2S^Pe(3 z{kTH>ldMrA!w(1|(LtRC5X8<85Lf5WtZAv&Qk+WvD~PT01+O6!)H*sH-rO}BPp4Z= zf6m9+Hn}VC7a7l=cUQLUy!(Ctr)PG`zo+LJLfb&9zb^)bADR!jS0Lb#?9e3+s`24f z8-`WYBSNU9?EQ|yqJhJJ8b#A}owNb$?|3h|0%OIS08Ut#r$D)AsQ^ehV5|t)uarDw z1(@8Gte1PkIzYTR%)K(98wEt#0(E87_aGK=Rn<}Y1hmD6ijxHU4_oXgwcdZJ?l1A~ zTsPYUv@){S=X$7kUTfW9K2|*WUYx94EH?v>fp5T-%e~ge%H2vdln;| zQf;GyGgPINUZm?}o!_tmuX8>H8#2J*W2l~$A_p@okT$?^MVq-jD%4?UXF2x9FD$gc>DdeKKh2w9~dB*{5^7ZGfa&#^N;9#=Q?8NH~W*{ z&4&B3Wp95vfBlLEmJ&B7!!s53MdH!0-dJK1iA`#3EHpS6sQz6a{TD+1bFGAWj^92> z(v~d1>)g-0$5XTW+*E;KiJvk!%p=Zg7Tdk)^SW1X==YwZC~ZFLmhR_+UpYA+JUH^q zp4P<+9J-X}VZUj=X~wzny8h9CBtVU~1{2=z>pmF#L;;qWwHv82!E)xi_KsmC0A%O* z?AL0iQKg90J&RduVY6v#A-3gx{OS9=-`OwRLnM!zyUkCl->ufp2{tV$I|rR6f0As% zC%k~N8pkiekp?37nu0P&AYJ;Mq+wS*WRJn=LP?GKcuPubm1O)pJx*_hxIu**9$cHP z@rm43?Eu)uNG1CQy~AhA*=K!-*Cb1aGwiam_-B*Ex7$$;;H@GU(tXO9*tfvZJMzzk z+Lh|V(8|*_H`~X()k#{J179!()SqNuIV%U(fAe~|y5aK^!dp9EG_kJjb>s(rfBBVj zkuiPEvUQtCasgK1^3~fIp(Q^GAEAXDrlnCSK)R$yJCEu&AD}2=bes=h2^qDlf{rVj zpr2|#j;h(qLqT{>mrj^~=zPIZ!9m8)$E(Beh5`oy1p>Ym1HwS{Xuoinb(p0y_HB0_ z2`lc6^MV-+3sh2o@9y<^k^YRgg4bhab2yvu7IKlHS90wvybm?pZlD)@i+>{t(GDE? zX;vf?1I9=8K8~z4s^ePdtZ0+K<0aq3*501kpn~yD`46|@obd0$q{XildYg8vXR{Bq zJehy~AbC-}pC#q|Faq{M;pQ3E<%kh5Gq}^j$ih?AkA&Cnrl&A|I!6wL0=u}l8Y)~m zu9W$;+719YQ?dyQL&;LdWk@|gn%vL@{}SW{i?3Yd34EjgrJ7rQoY{H_bAt#|i=fkm zgp#rdvKcM(k`f$RTQl-hIx#IMwN)|}{2?=GX%(h`V{@%f0Lk2|tcq!AtAL|;x#{2* zM^i)CZu zR}=*$5a(<0Oiw0jA;B=jJv|Q!}dJ{`o5kYIc?H8|k!v?3Ok41J!8PFURen8Agi>c;{*Oay|`ivq_ZsvhbN1FQuwjH!Izv!(R> zf|+)H;XvS9_j8BeH}vP~_MLEf=Fs9q5tK;#O&6BTu)`1d(m5(^=<}K4OpKtDBoDA0 z8BtQP%t6;?U1l&9DQ{WHQ|mMxX_l9lQGZLH2~OQAkJGYBaOyELM~BgYZQGH{wP=M> zL1GmtrfZ*r2WyaiMGvE6t11rav`O86H`M>D(u^RxHvj z>01MPE#-nEoKj^!@}ezmDYMn9WTZHC(5W!hB=7#L!{)-9U5y}z`qeax;ma!7)hcFo z8S;h179b~g1gd>UDd<#<@RY7Unv5<5;bIdEIol~X8YLWz2cM+KlJ>4WQdnAkx4oDl zwM9Za+?$+hGZ}$D1ncW>5=-l5y0!h@4`mkw7a3xaaXVaDVYNQc6R5)ukLgAbq!1q#6pRrz)9h3)0Peu(b z>(dA*x_N#~nZz=Q<&RmYW3ZL%viboIWU-?BJb6=T(19fsL_e`xWWKW#jL(SgkOy_s z)4>fGFEc_<5=u>06w$#pSfyNwDh*c8CJ^={1HgWKSxk*Wi4VJlGhfjNY`X6$2W$lQ z3kdclSN0D)62d4slD2#(jv@espHu*=*59uHfAtxb3&~`a; znD62D0Wo1?A}qE??u+wKp9y=iG4KPc(RsdB6a-RCAFH=eNN&YhH)!{?UMB1R{b|RWG`u(yfeu#w0C7k~NX9 zTv1h@3kUhjrwj+}(`dTPMZG|U%y(bSFdp=UtkvwR6@#q4%Ktv!;k0a*vEBmsvtc7gon1IxS%V%L!jE zO`YE#j5FfXiYASxXta=K7A_S8W1f|phzbNO=mAw5R+y4TTu(9MkrooDcupSUb~heN z*Qm`E8NYm<4Ft_Kl|!CYR%S3K4;ud0+a>-O2bAU!eunxCD=8#sjJTSjC}D6pq8xlX zZZuLMdhGLGw=g{7i>lYfx85p`k>0M$w5(vIZ zAwOy&n=9+f_^voVZR!BHuX}2z$X~@c=3u`13pXrYl@RUrz-pHW33h9RVf~KZU;_ANw6(z-Y zjfCun;T$d@BC^=8K;oc*6CjV#gEfbU6X8(zRiPSj$hoHh2Mj4VTNwtzXGVk)ItCS) zN6Z4r(uXINq!Un#?y|`*McjdlDfM~Cb&sXUr3;~%jKXaII)jvG=?co09m^BOh!Ea1 zD6j|y#KYW(kqm?eT3OUNs^WyfVYH@K5;MX)t|X$O>w;f|SZC)eUqe&N9ZCv;ZaoHR zus(%=!Oxr6l3Wy@fCIsc?d%u=xlzzXw0g!Y2uJ_ z^Xueto|H~BW3)ir_GAhArls;5!xTAv@i5fQp=?vQEQ)-Pr%}JJoR0ODBDEdRK%N+$uES~VIN*#pK8nPW23#Ee? ztoA&DUPZLObV@4m{*JN_3N%0|L;BEy5D!A|(-|ms*~%Q;Z&1FR7-U&7^cY$Vp&~N1 z1=c2kO`GhlN)9-}FD`_FRao|Y2y=-=e755q9sL?|Sn}wh4Kt+F&O^mmqDAQjeC3PF zw|PZ=!V+}=hp%&(P@VTE^n8Mi@$sm$aSFu0J^e7xSAv=F0mSB9b7Rp=Q*Kj<#YiGw z!@u}-vD|V7^B7j+^bq)=s`ezS>%b={lL~y&(j+~r`y$V{Ml!D-jq0LvJfAxT>A~0| zpPjHpssM7r9j_&(1iu5@^NqC@^3ohaf`UA)BtQzZ(a1<{o-Yu3@ixDWT8;*bTEf(( zt6knPq{`m~G%Bkp)k`&JreD=ko;xRqk9vxqS_~f4=yUUt8+>pPO&60Q@mI4wR3(ODnK@WD#_m!!tDdv;-l5lts0EJO0=KaKFO-A{jb1M)$&Dej?2vA@GL zrw!nqXeokEW7SjT5cn(vXcklD2`Hun`m2~5hc2;FD|~wF*0!H+QM_08HL253OG$tes~G==2OAZg1ur8EEJX} zIK@0CB0r^H=i#)*Nf)}OX7~h!=Kj>gP;|t+=ghz2#nDDH%jFBK@jdFs3k7inLSPVd z^t(vqV)oO^m1u-KpBkcJt-v6MC_z2>4dkDvxte1j(M~z#=QQ^q1Rv?2$-{Am_sq3Z zcynv99U-d-JS8AYQKw;0v4|HHNpIQ^p(t>Tld6StI#A9_$YD~{%RA5JNvEy~D4avo zNz-O9Lif<=2dhZ?Tq7U()?}LJz+jQKPh)Wv1xF)?^P42dAw|D6$|?KF*;o&|+VdOny>d>0lIkY{xn#Xym(z#JriB5N$iA;3g3?=VCRpD>Qz z1G8`Jc30$wtHh3D^bHL)zY|3+j9|*rpE|9?8;ip3vs!PN@T(3|MS%Q$?!wPd0RmerS1gmF@1!i?3{+D3!P3jv ztjc+ms26gwq`9QWOE}qqRgA~Ta&X|*Q<&Lz9bq6@z8uaCTm4#Y(K5P?yG zMn@DE$~fXUBhnmO49A`!c35y{N02-6F=$7SfCN!KCwLbk_t;#50&xse53Q3>vP`aW zv$pAP{(0Kxyl6JWd}hup00=DQqF5p*u<;1u&s1yt=1>9tjFDgp+g6KWFwl%qU8lX>trBE&n zLu@EQK}S$32PuT~vdnNDyt`DbPg@35rRZS+j4gmq5x@PDB7^z9Lpx$fN&3lV6-bXO z@!OX@0HXB$59G4^h-66RG7sPlL*3^3#o9qD`-2d2LZ8|LXcWcLtAGADn<*95gR=^j zLM-7M=E%bDMKc)R&Ea}NQk)Plf?N9(o&`lCe6Q};Ayj~xe~yG%q_4m{q!bP;-tcqc zxKoJ8&_2;nksu)Jyp$VYSK9h;q}1DVz8XPPles&5pQ%sYHUzdIXBeQ=u=&2u^hY!_ z3AQl`d67OL3I{C6FGtduUx{l4X=apw3>CFlW^WW@j~L`BKuVA@3Ye+L$L3_4qYk6x z>J**}dxpbBoP0*dp-|x(BHhB*hr}niq%czxc1uMHU{dxqp0J%Q5=q0U`<){gu*RQI zU<@26trHy;xAS*8O#h6wh(U6-6eNTsQp6aAr3rqA!T-54zQTtdLH3*VvSDcQezb=r#ILATV^%{Pfm zr#}>~5*#7nc|Y!>DaB&! z8fFP*e{_@}DzkI0VQnR0ocS8R2eEMvWbk2CIQ}9Wr7Ly$`g4nrZ@Cac8s-=`xLtZ9P z$Yvu#+PPRgBhCjzKmlZEh1cZE(R6eNJBJozMKhm%F_q_-?ZN%RJYKX@o~r}wF)d6(sPH~h zwYw=zL}Ny$4eb(9-=ef+D+v^1T+hNNofTv2cP~DCgYyPWP!Oleu|-t6%AR0uFX2B6 zj}}rFuBHH0596w+9gur5?PE6Ve$T3BL@LfphmEak;`KMq8#7lIEhXQw*@RohR{C6$ zqdm}`JwRDB3V08 zdl82SazHg`lk;%~6+dbLMF-2c1BoeG|F2Ra1n#H_{+M-d3V;qgn1F2bo8w*qGx z%bOY$Z~{#TL)b2BiEad3pgoZDEa;Fq;^QP+K03F6FZhbwT}U(dT=S6plFVj*H1b&u zniZvl!lLQVwKa!B7bO=?PvQslNkD;=qsD)1vOFklSfyK^+Rg(5G~iiCCj z42Gh$V&p|2)Nsb2^ulmMd6t@)qD9O>t>MLZ-9ibpz+IqlMD0+i{?$|M zT;m2x3KE0r1X!T)BSPabmcgpjy;M7+_|pQRg>FS<3D|2;(}0>_dQo6brHU?Sx`1Knbk)*)5%MX}8S&pbsc41TxiKgy9fUA45-ra)sQi6! z#)@bVMk!8FJBt9JgYJZqL}I|3r<87eC6GxPo2K*?YG)D+s+G{#cm{*&kml^H@)!{q z$f>x)NGm`gWJ%kgv^PRPqCoXjBzrM1RS;=u9JMnNfws5`ElUU>zBDLOo2t@yPzsvV z%oQlV5iyW27MT?z7gYkPXG^ac^=<5*6nQ}bs!+`xQVSS~f)E|nc#9?gWbCgNibhru z-AtOhRp{k_Vi9=Lw5r;vepe4_=gv@yr5dEf4JwqR2DKJSa8=XnNs25(bE+N9f(Tl! zf}ZN=sz{dsw~xX+Ekq*)k@#txs~doJOP%Iaal1v=p?DGzBeQByK0`DLRDKn@2QgpD{t+Tx zy=-V5(N!Lb1o8`rX;Dnmt}Bot-5Y9Wgd0M|(h?5Ja|w<>nB$dFIEt$2o8c|gG#BMP zkcs>gXlXOxe-M@iBcLC>sGad*0tODGZi~Xfd1yk>mFSR4qu|r&Nl`n~#0UDvG{nrx zREQp$7meO$joja7+mevd~JfJL~RJ5xQ*d?tBtmBkw=Z+Q>@f--4096HfPTK?;XlvRl zmj)7Q=ZLDrN7Nz8(_RIH9#w7~vVfpvuS9ZMPlm?PqNCZQ;47VYi&6`hj)vwQs2OT! zuOaC>RCkb$v=I(z30bf~?(tUkN>w@9#X@Bo{!bVT8`^^c8Ce+$H9S!t&W`3(Q4W>( zq$nW+5$kwpNYPHv#u1s8K9KnF2!fWXEJP^=thT6q5wE_4tTROU)XWsV#b88)jc2Vi7uEhN#V*ta5 zbSr!lYZX!Pq!EJJnY!K6?u@FdC>eDq=pi&{O3Z|QcNWB0VUTyA-Zh3<1m=2n7NLnH!F;06wkYi{kS8ApTEod@9(K@%(h{29F#zFX@R@cbY=}D<} z_7J!TSlUKNyfH>mErQrX^@0BkXmkj}h8O0pfzHFs?vfT*1jO;nskRHuzoY4H^5 z1sFtkind8Q1hq3>J2awh@y=-FvZk$EZS=B1fIFGy929Ej4mnQ{ga}0#=|4^ASI{OFrXSmEa(KCTn1>O^y*PNBiv{=C$vxsH zQbnmyJ9kKa4ix~#VoN-w3EK|uUkZzOmHmgJYD3v6p&lXi8e>Tl;MO48sQ^Tb^-oG~ zp@V8SsHIaR6AESZnma9pR|<(m2E>q z4_Q;w?!PpUP&=a&8dcGft&KwC+IU0*X^!AEq)bvXQSCOc20`a%oY+g3tl_;t!OP5no?TrXa-dx z&88VzNTZ^vfB`_GbpT8WWm5rxB}Q^ZbILYtgcP*)54b~p8$4+ZQqg3eq6*95&aLn7 zEfln<>m~SzaRB9x@rw7+H5!tLHixB6j;NhUt0SogDmbix8U?dyCyb&A__j+sCMB)4 z)p$#a9uos8(rh|LA4*<~I@-XKn#qE8>i~dw=MqI7>R`liqZMeZ!Ox_75hsO3v5XXh zO1W!++FJM)ucQU`kTFG?>PHVkm_hPcO_O-g7#4yI8K}ijmM(;THV*|?0lkH>Y&*oS zt}Lnx=QU03mKHf*W(M||WOCJH^p60kAHlXj2MH-(LTp$t)K~n~eYEolK`wvmDYFgJq zzEMdzXi0nSXfp>s6hjwJhTN)Zk}A+@7|u4`8*1mS#Mc(343+9AB0cS!LrmitI@R@u z7--!Yk^<~0QLqTw-DxWXo{=GFaJnh`oxaEmNZhDiX_pDjg<{arwhdJ9HbO0w=}A#L zqbV(r#TGY-7bXKEs0>YN zKv5vS(835!SS#8SjNz8{hu{~A+9JqlQlg@5LXoCuBI@1}y+c8r#v5v9UzK35uZf|^ zS0$xAM_XkB?XvQHGgNJr2(`yM3dqb9I}xQPXbgHelSKOhny?GRM-& z0MfKZ;-Zy@bT!n@v^|=pT%puGLJ%Vz0y9L6)~0Krn^H5xLPKvDB@ks>;}G4bs7XvU znwCiVt3jz^Oi)pZ4AUY4C;`*D0O}J#%jN0Sqjqj7DRzeT=0)%<(mvSQH;U#~Z5R7} z*`|OThbXHtIH0;vghd-5aG?cg&03`e7l;FzB`9gz4ed#6LKQv&3NFAL( z*-vaSUeJUuZNiYPh$0mNI;}fbNFW$ z3IPkG^pQoneg;FMcBTSCSdUUTQn-hvfetD??T65=PLribYUegX4sIkK30j4Ij%wZt zhu4Ho#MoLl(*+9tw1u}7knlkw4^gZ^XrSk4D|~8Z3Xu+;pmQNgYD4=tV}KYE&`FVY z#HD7mNx%oZK&$E8fo@Q-(X=+uZ=hf5K4eg0M?AEHrfE^{(RLJ#>ZAeeHEoH9ZcNQk zR)EM*oL~VW3jr3ZRy#ruVnkH3zgj3H0!bsVD|no!ek*0v>WU4mM{PiT{K+Nljt r({}g%-tZP2ItkUBi!|m0Fw;O48rqUq;-gc)p~U|GPV$_7qu2!i-Ms%L literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_first/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_first/why3session.xml index aaa71f4b8..845d3ff2a 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_first/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3session.xml index 43b79a7ea..934f93dd0 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3session.xml index 341ba0241..ae50b2b33 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..331e5f84326b3ff955c9b1bbf12f5885b1f128cd GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYa1~Tz3W%>UJ4q0j3h`7+k>g0eHhi4! zhxzyeyq;ETp6ZUuIBhB|s11iHwCI7RiFUoDx*8^4Q>IG8a76yHbO_rI&yK3)0pdVg zS`5R3+-HJs*L62+ZfMQoiY}8+a!!{IRO{93w-@`GJNj=k6Zdc@2R$^ zL!-$gNS+qFyskG-Dt$VNJ%M|#k8FDV`6oiX>f!l2@v591dagqkmrWit^Rrd|yj6FL zeWH)!^$|8E*&vG{ZquQBlQ0>&XwOjZSHpUB&(p9Ozw&&)c=q@$cwFaKXS3dlS+A|v z+35e;=x(epKEl5r3f;@D>+Y{_vF^3LmAl$K{?lgvK*P+s6WXD|IL{UnCX2QhAeT@} z$}vQpZB+OUK7kZYgF_Bp2bT<6YixAVk&}Tl8j1}iMPPu8=(S}-wq^CkXCh^!QZbQg zASJYfU`vtc(IVO)!Np_~NE>4-zXxfd6o4+V*g`!v0~$oo4P*sc>7fK^Adp7yF$bTVHm%Q`4L}2-Xgw4*j@XBiqYEiJg_vA6 z4#2t4Ku*LMvJb%(w%(V>60>KYR7(_+DYk*U$PkzlX6L=80FE2?h%Jk8HfPBV6vQ`y K+*Jfb5dZ+6@Dl6* literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3session.xml index ceccf2421..4e8fe63d1 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3session.xml index b04d0f64a..adea140be 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__12/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__12/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5042681041dc03aa49d32738bfc5c73d924cf696 GIT binary patch literal 573 zcmV-D0>b?tiwFP!00000|Ls>zYa1~Tz3;E+y%a`YBMF?t_F!r#IhDOGBaM_SIJQ|U z4(_k7)~2PUZb;ftn%b8^Xy0g_-kX(n%Yt~nqPrpX!)iz4K&wLQoaxhepJ-0YZ8{F8 zuo%99H{*Jf#s^KscHM^&AqzJhzr`$ zvhPoFpEv1lQ}+G#mNu!mrmN^8Ea>V)wNB1|dN9@O#Qc2JDi>`Y(`H6I?C2f6rBbsF z8;wdv5gjel>ZaU2srLCu_5|*oIN`)1uQ zr-j}RH%HhIp+c5@*u_Kns$tcSW>e_P!@A$BAJW)whtFwon7#P?Dts=B>x*5l$F3I_ z>|*tQZgo49KRC<3o(=79Uf%6rZ?yKsKAzjsKK>hLe!)Y}+cWCZMj&#?(O~c?=Zqwf zTtGpFg9a_%hz|l9=e6)ghG4*I%U%WPw2j85=mH>B6f|sfMhHnc4oXq*-Y}vgA%)e^ zPaxUohz?M&X2~+t6j0JL1nq=T=yL_BMy1GXtaXX4A?I16s*A^jStTW11?h&hlIT1L z1*$SO2pUB+K3A%e-2^gCPGDJB$w`=C0l>(_D3bwcv_w@w*r2alKtnMnon4+lIXR8C zR+J%6E7_(pM6h0IpPc}-(j_kwaJCMB4OEb8qPKMxlXFs$lk5Z4*DePTfrZPH1itwK LfjkLfRuKRIQ1ls@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3session.xml index b5b4ffc23..2c7421e65 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..21759dc25692640890a33e436d38f354447c75b8 GIT binary patch literal 571 zcmV-B0>u3viwFP!00000|Ls>zi`y^|z3W%>UJCmDfaKsFLIWkI;;WgFM!N=Y5*%%o z^w(ETN@;1j>@G{`HaU0@@*B^a_hiW~OGt+`-1V{R*LxUySQpsj3}423f&~maIt{0= z?07p1?*wy zy0hFDjPADO(CuzvOKb)6=p$dk{7ki0E`GZ))ojJ$a?~nUZ64ER2C3h}2Y3&qW*r-i zI*RCFp!H3;eNySmQS1raTXka7s?R?WYGo^)zYd`Rxhts{qt7c57UD_ z_BSV3A9;lg9q!|?e3dY2nANK*51Vegd7!b|^T1?oG3&MUx*Gjo z8{PEf#asCIO`&<&aozm&CDy#ww{laO$A8+)A86=Bb3rSV>1={hDwEPFr0lqpB)m7y zIb$KmcjA-aOxh3=3NXScB(T;a4@v+!h%qZuQJg7}NG4ATg3W+J2b4T`;zrs;Syzx` zHmHEv#ALY99Gy!(dz9!*)C59RkYZLVq0n>hKw$vX(g)B9jPeNf2+}NAMNuLlW@ohv zG6uXU#hUt`?uxPmp2_z-s&~d4aFiA!ysDdn0wTeJzJ=h#0fgxjML>>j_ zkT6$}V<`nrMA8fHHM*pd$QWv$rgmfa#K|+yiB~y-jiezdg;HY*mbl`aqMdXK>>J7g JN;pIj008sX4 - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__3/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4969fb72b5b98b11eb729968054af81206de32a8 GIT binary patch literal 570 zcmV-A0>%9wiwFP!00000|Ls>zi`y^|z3W%>UJ4q03zCC-2o02+imzrQjdl&*BskhE z>94Pxl+x04*ZE~Hrj9($sFKeR2i)V( zb!WLR7~O5lq1)Z!me>mC(M7(*`I&63So}6I8 ze{+KMkypsjg?&7xuM$Rsv-))9Vbg6l4>WeW{wpn~!K=q_!Q--AUCnwcX1%svSEK)H zqnp0G_z3@gC^Rp-uA9HU#hTapR&Gl3_)nYu0}ZukE@+1`9t>Am@u+38LFVKk@+_27 z9<%oR9ee`LwD-d6h*Bjlgbx{gG@86~!bBBPMRCS;_Eu*hGO1AKK?MS+{8EKTl`BZF ztdvm%33N!wI%Ay38JzV>NmMdakYomebAbrFjVT3)$p~YGm4dttQCE;++(;dq);W5w zo#a+qsQjHJ0T|>2(kyD5G$y5{m2$1jISRa{w;>@osvyI1vZzpS)I4SZE)ofY!c{`` zttU>F1xz_fQB|Rsx$!6+Q1Hnr%_oi( - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__4/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..13e61fe3cb353964d8cecb1e1753f23650556f19 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3W%>UJ5g#Z%7W?gQ=n9RQ9@zzLEvUHfzPf z{q>dYQd*jZB!tq`K1c}d8_k>d2JLR0bJ{KWc8tTg-10Q?vhu1F{xaQVp7COnkIVfu zAAf+?(`ucky5llVo5~Ar(_x7%df;i|T@PGW!<5&YxbiR@k-uym!uHd%qiT78IP#Vk z!|)*YnaH>6x*Ik(yw2i^FQbbv=gSAO^)&nK!9Hh?v(r(lp0#;Qn+s0kmOt=&t}W_N zXrzeI@ggs;>&=r=pN?Wr;NHt4n_hnYiBL~HKED&M%GsgkI&^W_Ta<= z=;L^OgpCmzWHE$oJfv?DM&gS$hI+pm)~owG4V&?6p6@r$9=`>T>-_3$)>|>_we>n1 z{a+j1jrGM>`1ebpd)e!{`|B;%z1FvKSG&i5+Vmf2s9ASH9V(>K(qf9Bvhy+r9b8hf zbyZNo8Pf0Y6M{&|F=5iK^^o;!4XRAKctzT9a@bHHtkKf30U!biTFW3^aFzp>h>%SK zks!&zp^>PRQNS)ENNFWVO~!ME29iR>P&DX7x!4qZlEexNC(UfyQPe<6pvgKb)XEyN z%4=ZnOe_Rcd^E%jqy?1%(&j)>JEVfiYN;J~38k1)LIWAWku5>eswC7DFtYQ=V3=bo zK<=xvf+072E*T4Qu_!$fXsJ@blmn;+a)N>{rL^ESoCIGSMzjc#Adpn9fxP$zWYOhJ HL=gZ0Y~LXC literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3session.xml index 8c64f9347..218a4d355 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__6/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__6/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__7/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__7/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c8be87764955053b00bb293f313c9be5fd9bdd73 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zi`y^|z57@6UJ4q0j3me&+(T%f?5X%_Mk8t0kWGT4 z&6585%1J3LO_$weDcvR*i$Q*)dGnr-?XsY_U(wyb{jl26IMAxlI%oPa-Y1&Va+{9f zG%SW6;LW(+q_ONN597AblIm~>p=S3qj> zXxaBCxzC$)w<-I6drOVGU;W?#siv->e_f*l&lgX)#S+Jbnuvm&NtPthZv;YwL9} z`oA{19mX)}MIq37)x?a;=9*JRmbluj}R^hs;& znS~5Nuz3fcKs4C|Ak0-x&<4PH6_XbsW))C*D=SJgoJg_I)_Oz(L}Zf{p{`X|3j%Tl z$;Juv&P2`5A(OBaos=wD1j^P3RY9t$MY7dkl~)S9RX{b(3du=`tjJf8ZYV2MDmn*2 z2k#>rV=+t3Ayp=M;$)gYI$8o@G}b<|WXKp1wdJfm$XG$xSZ$PHnQ~0lfYZ_?VG*Tb zhhBKBAlq0WWY!s+Ba>6DEqpLBku+$$wo`Ym0Yx@DV40&t3Z8Y4sL-<|gy5&{eDe+X K4_Tu`5dZ-7Egc#F literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3session.xml index f80a0145c..9101436a1 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..63915781524bd062bc71499e724c4053d3fc8674 GIT binary patch literal 571 zcmV-B0>u3viwFP!00000|Ls>zYui8&z3W%>UJ5(AvtQsG)Pt#^+)vwIpx+INELx*zj~5>@K^Bl3r(L)sLcomI;T;y^oE z_Weoj^CsVI>b~FJ(k3_8bQN6`3%WYdt&{Vg9!xzun4gbY^`gyV+RP{oJ9Oz0XIoCvfl7kxi#Qen+U29Xx*&ugk@vXInJ8n)ETaxR~|tn{~gO z3cVk0j<6vLhAjKAi--2CA?ru8DfIPW-EYwD!e5p4-|!{u`%%!2{>*8O>>9LV~1hO37MnwD!hg zEJ6n`PE%HI-~)&z*dTn-h7fegq;!(W69qI{lGns2(GU+9modguklFxh?Gy!Dvh|9b zV~}h@P&pSaqh(0S2(XL>R9-uoNeTw3Mi$H=3Qmf}n-V;@p!w2?3%Z;bgiS=geU+55Ra2WN0vdR5mGWmj3)5jG!!tDttbuw zNGCOMvW-vL6ctLujMi&W$Rm(aP+|~>6Ua4+m2{{v*^mfqAfJ+P2Bos(xF3Uj^9Av_ J - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__9/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__9/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3session.xml index 16303d85f..48c323106 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3session.xml @@ -2,29 +2,21 @@ - + - + - - - + + - - + + - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3session.xml index 27e100695..6543c7d33 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3session.xml @@ -3,530 +3,409 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - + - + - - - - - + - + - + - + - - - - - + - - - + + - - - + + - - - + + - - - - - - - + + - - - + + - - - + + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - + - - - - - - - - - - + + - - - + + - - + + - - + + - + - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3835f588d24953c49c9b6fbcfd4f3f1288523026 GIT binary patch literal 7185 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 N2+yqIY90~c{{Xnz(=z}7 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3session.xml index 4026273f2..c5029ce3c 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3session.xml @@ -3,560 +3,425 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - + - - - - - + - + - + - + - + - + - - - - - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - + + - - - + + - - + + - - + + - - - - - - - - + - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..76560f34afd90ebf0a244ff1bf748cac493962bd GIT binary patch literal 7436 zcmV+n9rNNJiwFP!00000|LvXGZsSOnhVS_lb2mU28i;)XItOqAlb8Y$T{i>W8o^jH zg?8FbTP}3Z)6XB&Vo9cCS)?;1`4p309`pQT{on85(?n1B=lWMo*yqnp{(e9E_x0nqaG#sm z@Bav&LVI_2bDe*Lha9i3LqeyE|38$Qe_dZs@BdWS*Y_d*GtaKCH7X5ryTR+yK3zUp7Ya$3IpoS;;)_y~Fxa_iDpqp14E2h0DF}vf51kvfp3$Q4aIBPZ4&P zU!Hy9)ZInxcNazO@~-Yu1Cm?v7xI_G@==e<#j}S{f+7z(%!8_~CU&9f7ap@5>|Lqu z5cx{VdAHN$}+c&bPj^&F_BmtLwh~efo9j z_aQxf|Nigi->UB}MP(bi+D*Ysc>0>>`|-ukV%`}K-=A(ajv^29vNFv#={n{6e4Fy^ z>>Ad2%4qcMX8sZTJ>K6;XY+=SZ|O8XJs_a2d;8(xYo5I^4(9zmBCJGI8+y^3YT7dA zmNmDHx%rhnN7PmKX(7uJADd3U{K8k_rRigQczEt&D-+*k{n$@w2O|D%_N?EaXA zk97a9i0wYu`5!m`;}?6d#b3Vsd$s9}|9!QNTmcN%U+`xOx}5b>cY*cY*yU`&-AeKm zT6ZPxO$Kc9a)}K$-To)C=|YNyZhi}Y39~x#Ra_16_}SeIBHZNLuNd~}y1oWZ7Gggm z;F2T#uTq3h(F5u$FMbo+mSbDX@uQ9qBQv`k^J7>D2Kp;x{_9c+M-1yGJkFZg{=6=> z^19f{>tZXfi>92{OG(cw)1+OP0jN<+sf;HM_TW%*`L$8f6nS|XI6j1WXkQDOf6KKkSYmHNE!~u2~cf*YPENzy5<~{Ni3FgXt zi@~=vyQ^Nh+Bi@Aa$0uvlP)Iw-UZeW0JuI!H9P!tx&M6kO~p8JrBiXGqs|k|=BIFm z_>%4OC3}P~S@LW0>oNV>4e}+^=S%JgUosS96l0efV}96KmbYAe*yl@{;+^81;{E;O z9a0Q&CiSKn@;+};L?5CL(dQ@AX90m>ryu2;u72$^sw5;4k_bsZ8%YZah+!8YdgD$U zp+`YXA|?@&eg%_OH<{G?PWmo9b-^G9$;NwwK^`F-Cu|Y62wP)fYYhN8_T9$2xDPqR z*;BYV;?|WHw^o#!@bx;C6TZD-ZrC3X9K9^Z3qTSc36B?t$29<$Xnq<19!@y^?aTOo z03HdB1jh@6;~D^5+~MRCZpZcWY5g)S(-`Vmj}vzH-pY^fDz|D#Y>Eb|?m@=#F4keU zbuUuaARthk>^iU?7Xs(`{_SCF+RUSrT=P93sjcIGi|R=JFAtJ5C^+ zHFU*z(3NWtP;tldI};(tg+O|Y_b06L-szdxHFd2juL6Oh`|&vr2F?$ld^kbJ3Hmc8 zs2Gu;a-8QZdk9)rTYC`!dgSvDr~Q0qFFN!-T7SC%diOJT9CDl?b@>R`9fuv~hg~ro zyW^1JC3d^Jn6@9Z6=v^)wyVuQHdokL{Z8m1^bmT^1U>8Pvc4%aS0k9;6%7#{9%s4A4`kigRDj}$M$p~+v<-XV)JtOe(Qi2{SB^b-|xM+VY8ESR;rUP#p_#m zMd~f{AOD!jM5?zvld?9@wFNDu-dfO7s)>{xm!#ZUg++>98epGYiFCORixe-i!CRTR zFC84&S6@Cj5W)NN!GX+qH6NTwIuHltgXWcIDZgxZ=yX;+&`$V(bziW%Tw8PV`F~g2 z3-jS1b$=jgYwx%?5qq_^^y%?xto;qU8J(MvhogrLM~^%lHEcL)`*!899d4%u9l~7J`<1# zNGAlO#Y?iu{mK15qWhm%K0dX%!fYO)iXl$k9HJ8?dc(4>B|os`+S<`|P`-b+V_(9$ zvO+CG9#DaFWyrCXT<>E!uA^?w>~4NhY{1UauDwR;sQY(Thd*xj^#KgI7il$&A)Smc zm@TCY>IK6=l$}x`?k7st=>1ghNQy2p!T@1_Fz^vE(5!;5-l$j~b<7jBes{ED;l&NR z*zYJ!)QCHFtZR4d;^=<~Y5HgQ4eW^)0CS&-U_>w?*t-&JzA(G$xq<&z@Zj_BL@pv1 zk?SPM)mv5g=hzG{9}H6NWwahsBfZPhA4*3QOLn5nj)#a8CQ%y?5!J>U59nZDMC<2W z2<4~3P`&|C-b>M6GT04Wo)t&=IfL}5Cwo<0xw(e)5dn-5%<>i>CYt?Tz6=cD-hzRk zL{K6qy#ti$g+~fm3Rw!-vkBR8>xjNNfab5v&)<09?}$%?VnbtE&e!az$+7 z262P9LEKp5#>*x42^<6t0tbO(FF1OF%fI7AKYiSt*Bv4T@MWSMpwWf0+g@5Ba#t5o zsO#VJZux`mldek#be~jxYQOs=>jU%MCsChO?>_OmG;a5a;oljETfewztgjcZDEa&J z>o_Y!o%EZLL2COfY<(?6xGVL&5{owr*f`g)sfsb->1&?1{y;C+g^G0e{&ch969eCa zJN7Hh=Jz$2OA7k_8ykpm#5iJHzls(R7@{fz&*-}|)a-h(+_Hyx2OE=s+80sjyu~Fd zeHbb&=rLp^C`7#NrH43*9+q%MI3t|>M4T-cFl2E$go)`5xm|A~+#hm=phQq2D4he8 z7VsFd&?ekj_lAZ#Dl|0FjA-_&!~5gVYyp5F3;&w_H`~`vkMSl&L?R*)k$yFi7GM~% zKsgK{dyQ(2GO8p}5vhn&CrYXXFYGYYieA;)qf{#hU<5D%*slWE>ORSd@p1VA$jzO* zUEMHQc&{w(C|Nimj1Wc$8yR8GAh76Y7YOQ^%@Ai#;bydRoT;4bh2#p(P7^;MIl5U6 z7_1~x5-Bf|lxrN|(fmXXobLT3W(mX%3_Jjogh|5WC1P?70y65IMzmsFN1xU&(^5~H zPVa6{+24ChKf9~asxh%C8{oPZ8{^!HcEMa7Q9(r3SINrPfS{w=4FokV5YFN$mR$vx z-BoZ^L#|5($i7C`aoqj9`O3!xtQh5KqYDP?hzeQ)b`2sn%H0q#<3c3IlXmsq*`wW6 zr&TLLAYk}4{+`=2HsceRkBZ=N0^+<8ECwQYjQ~E1-2`ys5+FUs`%_kR?^Mn1n#@*B zSBXH;*YG(G1I`ejd<=q)6Y=LvP%$b&<#NT?X4co#v60UvjQuG1xccrrVdU68yned@ zH(vwhI5B^Y$mF9ibDXF@LuQIGn7NAa_jraf+y{JzJZah$7>+NNbGqtX?P<07$7=H} z6!H8!QHUr+6gm?M^%f1sy~20vZP^oNJ`e3{@gmHL)9dS{y|J(70jc#R_utsdYACW> zsm+P$F-%^X{axNV0NeY;!}zQhK)Ys{o1@vdXy$)if_T%ifd^-Zqh4Cm8||ZK2tH*~ohL+`DxPTL8+Q*u0F-V5f~z7>}J$UQKkUq|jx&pSaTm=k1z z+0O*CWWs5Un&?V&9i6TxNDO^~ey;cXxjs!|5PONeqq6q|X`xQgGHSnN)M@%SahJF| zeAFk12zi3$ko(OcPt&mpwglUYM1(j&bBO)s5U1(b1Y3gbMIwTqpgH({bMVu2Y=SMp zb_7JM9>j8f_XXI~(hWO7d$IlYVyEf(MB@)nM$e^F_PA4WM9mHFX;i10(ylAxfz?nT$K0x~|R}uQ|WBd-=$IJX`QfcsA}KxnbB7 ze*2QciQIvFWO6tW<8CI0;|En|3g5!x;=YG1saID?FJW!`5BOf8i+W4i36_|r_9oh~ zRJ1yMuw9aPBEkiTOGF?d97hD~wVaZy6-`t%5F>~Y#E65au!#|3#2JfAj37oF!H8E+ z9TODJSX_bvL19EFaDu`Gh)Yl)D2xaNK~T5=aR~|pg%P132?`e=ER<5ek-|Z~@{H6bK4OKw(9P~0#yqaATDu%xNrm)#&~7a2%Tuc&v}dci}5oo#4emaW4|eUC^r`G z${5}UQRB?TC29~gUKMCqnL+i%MTkqJAX2<4(4fMCDvC=GmpJjUII-`2p#2;5MA21{ za~GG+cAjjMpYqwxzN;V|57w7?*m0eN7LmFHaS0qB799I8gYHMb1|$doXDluO;6nqT zuJknhcC!`zFMmeBQ>34_xD@FhHqwX85h@DOW4!M}#OCkBh_e@$7(t9Uk`X!H_90^9 zXClPei%WzcLL5nm^&|A5qJKLvj-=M+EcV5tovIrUk4T8olXl%am;uWkAG|pIDf(Aij2sBdZWkP=gsx>Y}T*3xn zV=Qd!C^mMGg|KnP;u1Cp8%JQHy}P@)&OgFZ=y`)Jf<(S^d%bCsUc_?=;u1hUDnJhB zfY{3cdiTyHh)WzG4!p(zxt9a|PGgt8*?vT;c$6;581oy&Q1FfeR3qI6xd2 zg9BHiRu_l&cF3IN@ZJtN6LNTOhn!zMythNH+8o~7A=iQr@9mH~Os-zLhwaDf_rY!S z(R0)Nj~&}z_Auxv!eu8%Kfb)|;J_6Umdy`dbY&&w>+3i*jY^ia+Nrj1mPOH}6;di~ zqiRJ;#r_BXA1*{AlNSQm&(<)`HD_qWbPh%FWQuZV#tv(wr3$)r%DBW7Gs2tPx~w8T zqM?&$BpRo(POJ#UJu8SyQ(}}pxnj9+F4j@WhD&Qh=3FRec|n4Tg&QY*NV>#g>fuz= znwHt%bBMyXTrk<@kW2PTXxrMN&`39o6&AQxs>GHho47(u8G-FiXTuE|nI^SHiCCCP zJbII)Go?+c^~u|uTISKnHaZ#2qsql$uqo*jR6)nBE6VfK)<&)ofd!M4$ZaZZF~TUH zqIFyeW_6pY3Vfqr7HCp<>F{fcJhwJ7n|bl7Dxw;OH39n>3_XOF`=Vv`mUHWsNs&3z z4T|%oSm!*1%dTzPBrGdDc;i!mkxUY8XXM6+sFR4nMQEzzB64IZXQN>SXH%%Hpmkxr zu&r((j$@A1A|Qp5VpcjS-}R*$S)3HDF2WeNmXBUq(Xy5+8w8R@s;zXxTLq)B)V5m4 zpty~a5+zF>TJGh4!U| zn&Dy!pKB|JBf_du!6B_=A{BVL(JXp2;8pb6$~Pi<-Wn#2Cvt&v6M zwiHp?Y~ap88zx#`l)&(7E7_nChFrbSq^z^l3V{=JDbf{>!mGAYP0`gUkp85A_aq$B z;Vq97Z4b^fSvxSWlvmUN(Ve0}nsjXb2GBYR(9fH(ictwcn8cLgp=E~;U$~Q zKtB~EQZ+uZq*Y=$`J|c9p{fi4lcn*9(&~j$H;AT!2w|4Dx#(6EWu!>C4awxpY&S0W zeTo{wFz>Xs(&L~Zi4+~rNlMwpkhBeAkrxHz7U6_d5{)AwLE)e&WYuZHHK^lQX3E1| zU`20W)8dVi8o?4>$0Z5oIO(vX^|=Mb;XO{o774)vR3V7!UkZMo3wY%V44{)0j3HuG zti3x8gqPZiHwuFW<%&$gKn;oW1a@VZOR*w5|5DJs3Q3j{z%{Mm#0;oTTu7_X6Km_} z6?7kgE(Qw73{T}zvlf8O62L0au zu|*`Siq)zB9i6^hlR1FP5EY@oWf0hHLc%kUm?Ok_r!U`V#R10Zlq$i_JB=$tq0m9 zf=lAy4uz>jP7=2Iz1B?uqa&E-s@yzVKnFR#CLN?{aG9`x<14PAL} zv7NixRSE%U6B3mGC=T!OZS_^dnpW1F4nX=S9U@VPiUP-yLJp9f9Sv`gTr|3IU|0zr z1qu{}J{YoTmRVO#81NomYix^ZApx53MIaQ37$yO!;kmVy#JCco53r9hhU8n9bekco zL~W*A>W-)yl-P(_iCp9jvM)Wer>d^+gM@*Os=2WB7w#djxu@V&nY^y`% zmoZJ5S1O9bLlG&69fSm`!VF~xR2j7ubdSPI27s@%4yBJMmZ4H*yVWz9Kw9qW}n)1*57%0gf6PWHN0my4un42IYl_IUuM|fX5)< zR|!VP-S#r4y*!zDP$O=gv`B%k=qC#K@G1uJ34t_t11v26f6WjpgQ5H+vj!uKCm=r`*jf`ckP{VVuF_;2G)e@%b z%QVP8@F*C_qH1-h@laW6l*g#FUG==$3YDmVQVckU4VYGGSR6wXf|-cgiFHSGO$N$E{wAip#9h#q7@0C-1K@dDmcQuR_>FgJqNa(u3>9P*IHbQkk4)EzPBXl=&7ETRboo;r*7z!}pLD|GmVjwiU@;;(e({MD9yL3|>hMWw^;36EU2abv< zg@zACR6BKkl{(^MNDa~uW_a3Q>YOXqQCDH=5s(YvP#|*G4EpzhD`aeh2Ff&mlgo^W zq~sn}2W+}#3dtLlfM=}@%ApuWtpxOeJ+Y?q+@(Lxbgkb}b{Y`RVrP*Uha8bff$0*U z-pwLe1r#%=TQO6IykM>LvBku^1*bso7`tY+!Gz9Zb`KP0%oMEx)h(tzsGn+7E%fFZ z%zY*5JO_MR(2Un}5E||RledV)`PjfHh7i!E&e=fNR=_1urr_WaHA?8RF2_VzplvGw zXb>V|P`Ma1Yn2ei_^_A=BL-?#fLUFV7^JfJj(Q&nTVpbByO}=6R9I=ISa!Tl-LtOA zL}ea;3y)eGIkamg8_8N%s|$yM)!RDNfymy}vP4AFcBaQ) zNanBwn_B_1VT - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - + - + - - - - - + - + - - - - - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - - - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - - - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - + - - - - - - - - - - + + - + - - + + - - + + - + - - - + + - - - + + - - + + - - + + - + - - - - - - - - - - - - - - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_r/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_r/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7b34a8c4ffe3f7135464cce7dcc169d34b2256fd GIT binary patch literal 7136 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 - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - + - + - + - - - - - + - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + - + - - - + + - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - + + - - - + + - + - - - - - + + - - + + - - + + - - + + - - - - - - - - - - - + - + - - - - - - - - + - - - - - - - + - - - - - + - - - - - - - + - - - - - - - - - - - - - - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_fragment_offset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_fragment_offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6c3b248d6803ee514d381b180d8f4606972921a4 GIT binary patch literal 7767 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 WFh*LGtH7H_=_X~uoh~2%<$nQ_ki(k* literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3session.xml index cbf6824a0..a50381d4d 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3session.xml @@ -3,665 +3,485 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - - - - - + - + - + - + - - - - - + - + - + - - - - - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - - - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - - - + + - - - + + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..42cfb2861715b083ab15010d60fcb44ec66ce090 GIT binary patch literal 8599 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 V)6v$yU}Ag?By3oRe}9Vr_#ad+dXWGC literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3session.xml index 3ddba1998..e3c478bf8 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3session.xml @@ -3,485 +3,385 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - + - - - - - + - - - + + - - - + + - - - + + - - - + + - + - + - - - - - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - + - - + + - - - + + - + - - + + - - + + - - - + + - - - + + - + - - - - - - - + - - - - - - - - - - - - - - + - + - + - - - + + - - - - - - - + + - - - + + - - - + + - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1a2a0d124f7309bc1c894f31883a62c12eb723d5 GIT binary patch literal 6730 zcmYkYzQ-xG3%F&(0#86~S~FXuDG zg`txwd#ZZQ$W+kZmybO|x|X9YDG4Wan$a#q!-MYM Cdn;(XUgEu z*Iou*w$7Yg)?OtfSnh|{#7p;9uFA{#JzHB754R+HU)|+xEN8SNXLg}MY_;a{Jpp!e z_ff;WF8M+3xRnOaSGf0$*OEc2Yh@d278t_bvZY^p6Cck^T3fH9B!^B+R4UN-QPn18%F!r0H#7T}TGsNqb-=q(|N9i{eKL!p=K=wzpl|y(m-{!Z`H0nF z!GZM|mE>Q99aW1c<|Ck$!a@rRSyck@_=kQ(L&hiNkv;Y%GFRIs#(!Pbdz^4H(}R8M ztrW3jpFHmyj{?$iXNs;fy(JpI+x&i1^^#m!ODuc2xqobJcIte1etGIO>EXCL3bOS0 z!2rvZx&3B3As(zUxpQ#j&{7TUIG^zrv)LLo(9J9F^r4)W=}0^ba>bOBU?KW@>ikGD zDlWb{O*$E-QLasqN4q84+I_2e|L&c7(~DK02AGLtNWFJ#&H1RJv3U9$pSNT(DR+n6 zMvbKbz~Yz3FWLk7F5zH|M2*w)Y5=h36T3qxuqOb2lC&LUNxwHIVf>;qN!lI2J4xCp znow=x;-$9VYa)U96Z>15i(%KDS?b->PUKe)YduprChNiP@Sg;p+N!)wZwX8>3~j7+ z2ET?}Av`T~c0-1V8U|TsihC_trn>MMQBK#16o_Pyqh_iF^ z-6yg0f0&j%Rp5oT{8f|HBK`A`fvAl2?NJ1r;PkWJ(2)6NDfCg}n3wIiUng$Cds8n| z7{)>)SL4-je1kK5TCtrMy>6jOBh#f@8*E9k^wdA}!2>@i~bL{OQXyP{iLySS?Qh%sBh zSvhm@lcv*%w)cHNE3K8l_;@y>_%!qKvS20Za>+rXQedQ7>=EsPWZ40&HB9YFBAef4 ziLtiFFtGXWk(o*J;D|ywv(RqG&X;pf9R z^RUJp{qrh92#!CAKq|RhF#??gBnmy-#l=hgzO-=IFYW`~ftg1_c*tZp3$^;p?RL1? zye(Ho-U;HN0ZBto)eKZ6B1Qw{5P6^ntC1DyYHGr*T85E23YByWB#NLqN{w+W|l*~eBysy$(^mC^5IUxCL*gReiQ)Ukx7P;5RevmKZ;(-!>_j81EmebR^pW6?=F%BtBTw1A5oXuJ#EsF}*+jITbl= zoa$7D`sml5LkmehtQn z`=jt{eJpYmC)Hv+>6Y%)I`DB{1sQ}q7ZK9r2htLFwf~nt`^-X;ST3lmU;RF1P($5o zmOQ=Nd07ucW#H!E-ZjU%7`)W3k)eNYo*ns~0nu(A<}T3wd9>rR&Ge)r%K%tnce4hY zbtZeFUF0P*%0<9*tgA!~h@!*S#ha^6u8Y|ony$u*|HpAe=W;!N5?W%4P)Szt<^f7( zEBIZH`Q7($qZ0CsJTmMplj((FSDRbe%Qp9w4gn)lo7cFwYspm&Q;i>R8IK@z-8XmN zkc^y@$Ncxtf{}20oRwZmo#Jx*y8?yO|Y#{95-@Pq^XYkZMD>XC8yDh+{@0 zVO!e3Yq51T>Z6Vh81^+`6r&)TGWB(!`Q* zf>7~*{lViVsG?w#0nI|~H#anz>_RkOCw0?nxcqs!#GGkn#Zd5EpfeipFTEdFR$Ws) zGJsCwZRMdf(`oWR`+;kkixRP$la;JO+WCL(9^pN!?W{wmEw=wt?DCEPxEI^G^a|P+&Y_> z^aM}Z7TR~Q3ePpX_WrJ#iRE%)C);!d7dKQLPXhFD_-->yXxH+6l|Lz@YcOhXqZaG! zetxjW?orhL+}h#nxt0iCn`;q#tb+*R8?7e)c)`If>t+lDKn%_X0L^D9i5LAGuC9uz*6p9h{%?>I0WnZRK>| zEGhtwAyly__32cxDLKQC;l@r%fPZ^5rPfom&Z+;tka{zK-1gbVEJHnE(8G;689u29aXLwGfbMF=hMMx>9VSFnkkW9TbnhtSA z1BsUlfBU0PMg#AC*O?IP^oQ1zu`ApV>ij%!EWr#dMLLjQuBJ zs6?T|r{){ubj_#anId8|q^_Rf1=k~FXtq`Q>{eJL-!^L%;dS5#8Je|2ciy;Yq* z)zM&Cyqzn^jdxeCwpt^yTDjGon3^%W^5@#)?$G`_Ac;R$82vu2rmuqqJ~Z~HUD zkU?CvU-t|3x0M7khJ>#4E9>Y3HGF>DzahwuL1+4X`%e=&|1oL$-7WSD$u;om?p{!Q zEi3O#NW7cd?7gYqUk%7wrM8G-Cy?WKc&)PFXml+p#gEeaBVW66r(Tm$8QPz(RW9gH zeUvJq7bfMun00S-s*x#Eb?dQe&x{P&{NnwLNcIdvE90=gG|~r6oFbn-r7g%FcR~yEc_?| zK$+c6YG-Qappm$g>;-yNIIS*fewmrxlJ1f*6T=eHLO;&eaJBh54o42hS^|8Ju%m*g z1*vkoCE^z17QGlWJ}FPw;1S(C{|Uwl#)^Y%L~fqoiImlnouMa_6Vs`{RllkR<$eL* z6k|9^8E{-~BEQg#7*;SuAF|xxpO!yxbx>@hX zY<^t z;u?~)4#TI=wp6rKG#k7v&!BlVQq7yYmbtBl;Tn$$58-eem(QJ*s%@sO9E9wIBNkzA z8R36(&Hv8>ld9zy5KNL*=|X8US=JvI5DvWmm+Ssd{`si#i_RG$4H<~m#3RPg``--v zKe^&dZmrZR1_T3wU#R&9XdK=~j6sZH^I_}9HTbv9i4Na6%v-qspNod2 zhX=^@h2>nSJG(zi2D(QmTMo}y#fc$5V_i2M@69L~wNdrw7q04yyLkIhr&5q|IhV?p zj$}7rsQ~SRT#2`JLE4}$w#kB_B5R_zBKL;=Y!8L{Q&+tzh!EZ~kCnb%B~)u1BDg= zIOF$ys|iONr)wBK2!`nCKJI|m>Q>;k`3@&KoT}nU>8+=!h^dG!t{-T2Kdeb#Q4G~k zRZx+IBMKE;laBuKn#$OF_?^&B;1=LC`pKl5+%M|SepB|CQ2BS2b`htlmFetx<6uei ztCQ)+V^?Ph@c71Ld*aPnAjg*(v4G=e1uoc8M2ar7OiR?h29bVfjIm31$lY0HQ&e_1 z^9lE_WJ*S)y?PPcdPd!x81C3;380*Jmk9EK*XB_*u4>dzPH)UmFtG+>+a_(IK)s#x@m?PNjUCHG#+Jpxsk_?#NPzIu#RRFV(5XdU3;g_R`#~ioZ z{^*r?RT0A}a42v4r&`6(jZ#fHDF!bL?Yl!ir>mT(`zQLdk{M}sH6X&*iT*7f;sE~S zp#wIIWoFsDMsz481%v3%6-H@>NPi2@iTVW^!#wDXv_V2%k+EVQ=!!Kn=?CPll*p+F zD@H|L)s2KYE^h|Ey9nKeLB+61!Js%mJJ!IXSra6B_6h6f!+W}jrrf5oRBp-1!lL6i#p}VprZL%djWqx&%oGd$~N6UUcnG>XrSIk!2 zO^y&sB2Hk%R+`mUE!R*;-inhuT#WP-z?d{HO{X+-f|sk4H!e)P$D7c^B3(voBboT9)`o$UTxZML3^Te&T96 zQAZ&hp^MU7bpM&xXM}RUdB}yCf<2yrpC_|Wt|AUO$-_>ZPz~!KHv5-e+&&Lg?W`yT{E0aL?v@-_eI5sl{NvjBU@9c z2cQ|mx5T<>O{9)SiiPjT!>)o%$yNH}J_&q?RZVz@w>8XTK~U+`8$z54YN1E4AI#*0 z2(f2tmBB`Nl`0h*eDGKE!#)`*1;BX%0*F%m?aa8Or>`SM>)K*9VXi159C@U9ty4H=UVe0KRf7 z`8GN(EUA%W18HulAimWx+5rSxRaX+eN zd6RL$xl>C_$q=5u+eMu&t?J^1elqyV{A-v%GysgOnCB!f$!d)SjBudZ@76B84HJqX zciz%5VB-SF0|edL_(RuN!_VHmwOTlC951<_%&O@-6H+!2qrz%j!;+Jz5q6scy4P;dQqlo;3}?U#*#nrfFy%q1{>X04nrpO@)_@&u=5{1}@JG8TY3`)DB~R(0L8nU= zI7jCURB-1EqW2_8=mX>mLg6f=Ti?pVK#8sbWaZMm6D}&cV`N5v%bxQa|G|~UM1*ra zzG~wP?`9ifU&N}~U4uErW=2s-5o3zPz@V?MOutJ6YsQxkyBAI=ql2bu+vM|jK$#-( zGGVSw@J3b~%8J5VUxa`-XUCj3u=*?xeqe|d2PW~Jb_ zWBD)DUoOWaD;f@PcKI&`l8x%%b{vnTH^i_)tw52Kp>&Q^P-X_&!Z8!=tB#b0_yu11 zCTRfC1yWU?a-qhb6#Sf6X;p|mhtfWI3QkCor-A>F*JjTCwr@w1O5r*1T_tW2zZMfz zF=0$PEb7T`+Yp-#<(qOA{#i;PQyu-)6Dz(B)BAS^f*l+sQanQYAvjACP$_tiF<<_u zM8-DT*Lgs8n#Ne>vz23HI7o=fQ}c+9Zp9yrBH^FAI_^}sqe&4 zLh;b-iemZUU_Tl;QU#Xt8!C&q|2e=YRHV)b(uL-skfUUam4j`Tz^V>|5z&Im>NgR` z^hK%6Fv!tmvimwP)|rFhM+?Jko58tWE)jAF+zyixY|j5aQ|#Fr+RP}XH3Jh zg~()NeOW`+(%CUALLO8ec<6UJF*cGKxo~h)v`f;?hYBtq}O9+paawRjs5%4ukav*}BE*r+6SmM5pd1}B>?7XQ; zL1Qc10?&oC)Q`y5hslIjGFeJggfK^9f``7w@EGD-#_GSa8UF_NxHc1tQ5mPZ4{IH#j5r@(BLNvI7*Tp*_7;X zeIRhjuvMWagtUz-WOunMBEeQ;@l@1FJ!P*x{$0O72}ce4Nh`JP%AWv`@v=Gy)kk!& zFAnQxm6G#8;Kv#RytlJ-%dsPu%GKA`RaSZcn2S+KGSD%cd)GM~WM?Huf2e5TTG-4+ zdI5a*$GA$MDbUnaku_sNv_vCR74EW|iyPFgf?0)8JMetIl3{snx#CanxXuqE7)P^L=l@q=CX{u z*ue^DD^_Ie$^aRx)jP-s+&G+Nm04>xwd@6b^)AFRJFXiib4J1HkYxIW|D=hmg7K}D%d&ZRmpS;F8+fA61c=2?Mw - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - - - + + - - + + - - - - - - - - - - - - - - - - - - - - + - - + + - - - + + - + - - + + - - - - + - - - - - - - + + - - + + - - - - + - - + + - - + + - - + + - - - + + - + - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ihl/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ihl/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..45543bb8c3b80c3da27903973cd5b35cf42b9aae GIT binary patch literal 5660 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 qrv<3eZXz{u|OLandR-NNV&5BEPIw!(7& literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options/why3session.xml index 6f7a6f31e..6ed286d35 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options/why3session.xml @@ -3,592 +3,438 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - - - - - + - - - + + - - - + + - + - - - - - - - + + - + - - - - - - - + + - - - + + - + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - - - - - - + + - + - - + + - - + + - + - - - - - - - - + + - - - - - - - - + - - - - - - - + - - + + - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - - + + - + - - + + - + - - - + + - - + + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - + - + - + - + - + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d492cf9a790ce2097a85b114540248e6686b823f GIT binary patch literal 8656 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 F{{zYQl5YS2 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3session.xml index 4e064047f..61d07eb32 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3session.xml index 552f2eeaa..dd31adccc 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3session.xml index 4023ef6bc..ba4005ff8 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3session.xml @@ -3,496 +3,345 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - + - - - - - - - - + + - - + + - + - - + + - - - - - + - - + + - - + + - + - - - + + - - - + + - - + + - - + + - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - + - + - + - + - + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..eaeebb88557e5876de23bdc13ae05e8cf26b7e04 GIT binary patch literal 6789 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 - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + - - - + + - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - + - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - + + - + - - - - + - - - + + - - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - - + + - - - - - - - - - - - - - + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - + - + - - + + - - + + - - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a21b47b33c940cd558eceb7f9939a8fbced46217 GIT binary patch literal 7663 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 h9}+% - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3session.xml index e4f46110c..53990b34a 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3session.xml index 725ece955..cf25e876d 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3session.xml @@ -3,495 +3,343 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + - - - + + - - - + + - - - + + - - - + + - - - - - + - - - + + - + - - - - - + + - - + + - - - - + - - - + + - + - - + + - - + + - + - - - + + - - - + + - - + + - - + + - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..686339423f35aa6b8cacdd7fd8e10ae86e1ce1d2 GIT binary patch literal 6849 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_protocol/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_protocol/why3session.xml index 5e9ecf911..0a12426f9 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_protocol/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_protocol/why3session.xml @@ -3,633 +3,464 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - + - + - + - - - - - + - + - - - - - + - + - + - + - + - - - - - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - + + - + - - - - - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - - - - - - - + - + - - - - - - - - + - - - - - - - + - - - - - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_protocol/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_protocol/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1b2e411e05a8455f778d8ef23664fae9e32c8d4b GIT binary patch literal 8285 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 bnIkO0*GRQ|1i*CHOjiE~Mq|ycYa#*wCv5Rh literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_source/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_source/why3session.xml index c8b574fce..3211c09ee 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_source/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_source/why3session.xml @@ -3,689 +3,498 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - - - - - + - + - + - + - - - - - + - + - + - - - - - + - + - + - - - + + - - - + + - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - - - + + - - - + + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - + - - - - - - - + - - - - - + - - - - - - - + - - - - - - - - - - - - - - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_source/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_source/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9b5ff42e4955a9f65e99b7075641b2b5fc9fbccb GIT binary patch literal 8922 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3session.xml index 32a75d9bf..0bb487342 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3session.xml @@ -4,482 +4,393 @@ - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - - - - - + - + - - - + + - - - + + - - - + + - + - + - + - - - + + - - - + + - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - + + - - - - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - - - - - - - + + - - - + + - - - + + - + - + - - - + + - - + + + - + - - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..33cf25606c1ca631063980e035c06b4eb8432e61 GIT binary patch literal 6811 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 - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - - - - - + - + - + - + - + - + - + - - - - - + - + - - - + + - - - + + - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + - - - + + - - - + + - + - - - - - - - + + - - - + + - + - - - + + - + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - - + + - - - - - - + + - - + + - + - - - - - + - - - - - - - + - - - - - - - - - - - - - - + - + - + - + - + - + - + - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ttl/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_ttl/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..614e71ead12ec50a5d2fdb44c2a5e12ea6685c1f GIT binary patch literal 8031 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 bIvEfxw+%xNR~I2 - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_version/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__set_version/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..931414fd0c53e2bd1b0a3bbc28e3576b355310af GIT binary patch literal 5413 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 - - + - - - - + + + + - + - - - - - - - - + - + - + - + - + - + - - + + - - - + + - - + + - + - - + + - - - + + - - + + - - - + + - + - + - + - - + + - - - - - - - + + - + - + - + - + - + - + - + - + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__structural_valid_message/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__structural_valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0b9adacf6b9dc0da80d1b1207fb4171826ed9ddd GIT binary patch literal 2338 zcmV+-3ElP|iwFP!00000|LvSjZ{xZZhWGjv-QNulzX@~}bAfx&071JcvNiabG3rTD zTN%v#_dS$tB~c*M7CW`C+$fd(&Fq{^Hkxx%-sjw*TZwS8XrWEnens8+Y-h zy&@jE_rKzMyLNl;+xxBEtbW+dI`oD1%hj>g-)(!l+QvJ(jefPV!LE)!w`ucpwOZf( z;H%Z0_5X?OYL(V;6IT9yySv@y|7~|IR^8og*6qG*XRl-Xwrly@n>PN;FS^U^1{Z=( z?QaKpaE`u>omrlT+|7H1^c;n#uZ{hc!+Phpr6rR8_M?4i`!JX*{FtZX;dd-VLA3tx z%W5kQKa^K{_+^P*_|Zf7VHExApAX@WjI4JNH3;_P#lL)EMW*m-9sp9 zCqtIlkwFZ|z{kiS`ogDSrKSu=Ey{3I-G-w|8BSwQ`w))heZ<0T#1XwL)}sAQ>IKGz zd?Bv1m*a7DEbKp9KCU3Q^NmsPN<%xjr30(5zS)3PP+|uxIRKUz1D5Oyp9Yqh@Ye+VA%pl=S=hdjAu9Xa6FvL^S78aZVId#0UWr zZc7jW@sIS-gDU4hqmoywDH8OUVs@ zPH<_wlonVUUf#75V1k1MO{#!?1}r z*X_5*fGD>pCy9F%$&V#ri^<{k0$;5kpM$u+j{83` zV5C0$`62&VhJP&+XU{P+?6Xq)jfFQG1$N0F51nvQjJ$ca)!KM^Wq#qd>pyU!s68ak z+}cqC#GEyOOYbuepHZY|KHX)`>hTw;RnFp%HbWnwmd~@OJG=GywC`oiC=b6yp)JYBa2W1+fe;G6470mDl%siYT9>l@~Wz+*@h9{8ge4bK0;!Kr~Q>v$+so@!e z7d4)i_(DI}(BQD)0W{AyB+b-@q*>4{UshZ3Eg#COeJ3GHJZ(eLylq4B=qvj0Tb0^{ zoG_MZ_aD`j?wmypoJGFuEb0|!kx!gOyfFFAgtI(P$p&N`2z}`?_7*$26(b?*tDOm* z#?w~2Kt`6ke9CP2qRfWZZ8p4=**s6o1{2Bk`qE`&%IV}*J&I6$*3eGlX^T|s^s)48 zQ|2R;E^AW|&=Xr`Ym`t+=eV)Aqh);)~Xr*`c$o|dN#=xCz0DFc$rG9X#G z0m)(p^gLM`OeWleKI7gZ(zQY5DfgiIB(I&u(=xUJ8%^0ZWk70K2Ba!CAXUtOhK#@~ zPp003KKI_7xr@qmQ{~C`p!#&LoyOD7^a3AAFQ6w4NH5EPbma!5iy6?65qRZ^ED?R_ z3(tqwIgC~3ea-r6XGEv5V}u$oLXI**jHb?;G9a@o12UBxkSS(BP5bqe5}%Zqj}pW1 z`sBniInikAVpP$%;DZ*HDJ#6U!4c=V=QRBd{y|M6iE`4VXqA>KcrAot$|WNr@m5ie zwaD8l8K05^ExnLRTOSlyZFmqdac-kD`TH8e91+3=ZY%>SZK9M5u4q)$dglNuv4*Fp z8F7kGVxl(Av#1yVOC%7TME*M7K%guLo}6Xg8Yxf>kOZ9RloGKLD~X2j07)jUb)=LD z9kmVMq9)NB%c;UjvXPPm%QSILMiQ7%K|0}0@{C)`sK!dF5!N~g0M=9Kd~j9;;|a++ zC682KCEb8$NrN)ZC`p6!-cTa&11xF)Ai0uhl8?;sEQ=&A@O@*FW?-=?i3O510ciky zFbqd5dh8vU7-z|9)Wa=f&aqqz8oY*30=#21T4H@PTuZG@FcKhHpKH;^60MjsH2VA{ zjshn-IEHV4ay)e3$Qs5Z;hs_(6jpJ9dZ8dBlN`g3YnN+r9Kb~ITZ49rNz3qZIw=WM z2|`1PA=eU(*4T-bgLXj~qlhs~Q3V3~%}L^NM}TZ}R90H81vU>T$19OwVu(61?TPQc zQ8i9rgxF*mr%?p#YC|5gj}6Us$#@&qy{^UW;09k*H IyCZS{03n%lQUCw| literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__successor/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__successor/why3session.xml index 013afa97f..939543f6d 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__successor/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__successor/why3session.xml @@ -3,80 +3,62 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - - - - - - - - - - + + - - + + - + - - - + + - - - + + - - + + - - - + + - + - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__successor/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__successor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..41e5896c33e70a0dbbd9a48164ec0b5e86f65108 GIT binary patch literal 1025 zcmV+c1pfOUiwFP!00000|Ls^!Z{s!)z3W%>Cvf=9Ll5a8XaJ+V6ut_>;V==ZIIbiI z*?(Wk*%;Z4x6Q_M8h7o3FqWT4&YL$M^0Yvj9u}DUbcN~D3U51VyVX4o9j>PNHvTbe z7%#CO`O%y&d$2Gsv=`j)?RxsujyJgGW_q?^_u_*;<8;>!yvBj4Z82f{bRBa4(6-(B zUbpQU=}(^8Hh0{omNvt9HL_+ND}bg5N**0mWZ?@@@WQD~#7wSg5NPsORCgOKi;{r1_?J4@{>xwGKvsg8Z& z<2?I34NH5Q;n#p09NW0bnTOrnbi4uVm4qi=^D6ObdZN6$>Azqf7H`qQc7?CyRxyz9 zBSmu4Pk6iOOK$$sT|Zu-)cvhNn!syqoz}uBCxS6x!M?5Cep?JL%agpUCJd;l4EX~o zUz3)o`}^-XvKtvcgbj3H>1x@^xQ<>_M*AKyIhbH zi6?*E&Lg|C{?{BFFi6PCZNwG+me3K9cuc<%nWZ3c@zS9s?Db|bKNWH0IU`OtwD3K# zmGwJT?(w=Ej?$|tY6i}tIfiJukEoi9k5Q(MAi0ZwZbBb+=nRL1B%I#F>X!cUwJ!hb zA4sm==w}a!!y#`DO_NhLMrva~dnp20?P4(6c@w=LCx3!p!8F2Z5>mSCeM~|GCpkh+ zmU7k-1r(HMG&&uE(rB^=ZJbw$7##yB7^Qz{_WfF!LUN6To?MyUY6JCNwD zEsp2{@(mYMOw7s^oKY%yNf<>kGOMyhE}+l^B$kr$gOUbkX6+mo(YRc; z5t(8X%32YDqjABBLU{2~Y*EmZc(7v)LXkB=*}{V&M - - + + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__sufficient_buffer_length/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ad592d186ed8d26fde041412cd59826d5bfc51ae GIT binary patch literal 695 zcmV;o0!aNIiwFP!00000|Ls@FZrd;rz3VG_ZV`ZsNJ@tuatRtB$3jnj0FxYzOJ@s1`Z^bpQcB1M z^E>zkUm+%kalOo;C$ttE*v+%|&8@YeyUDHX0Dn=m)(2{wb<|PosEsyJS(3GJ5uvdS zwb!Ze(^>);x+cWcKZfU^j_qtKg0lm`Wdz0+kYUw#nG@+%_=8 ztxp#Q?1w6cRfss4_Y~$I<{0J^*V7eZdxglf6h?@eM2!p)xl_J2 zB`1y!ofq;8|6#IH=B!N3uF#YP0MB#n>zpyeg^(n9GGdu<3^4VBWLilqbm>?j3^}Gb z6KG5_5>GSIiH|GGn$=Vk$UG)Pme)*|N)Q(+8Oh9>oGHvDBW|=WofICuBk!6IuXLg7V;l#EoSysw#5+AH*?P+EJ#YDq8%!y dGb06qT<55iL5;?n#DY(G`U7$?^6_pH005_MQOp1U literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3session.xml index 8b6c3426b..bb6b54c67 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3session.xml @@ -3,1206 +3,494 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - - - + + - + - - - + + - - - + + - - - + + - + - - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - + - - + + - - - + + - - + + - + - + - + - + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0920db1d044ed10c1530f0e3d45dba80308f2a21 GIT binary patch literal 8172 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 z041de$|F - - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__take_buffer/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e20991835fd24ec1eae988e227e9381da12cc036 GIT binary patch literal 1411 zcmV-}1$_D+iwFP!00000|Lt5&bK*DxUB3$>|A?OwKgb?I}58WLFJ zq$dA<+XgaZlgtFnWPs7drf}=IyVdW}mX&nZ?y5%jcYB}yqEBM@bnW8fox7cdW_I`B z+L^oST+_5^`TOnXTGUu`H+Az>+8p~KZ;gYeflx!u*0wK(UDc|FX@8bAn@+2AyX+pD z)hD-1RYzaDPj1!t`waN zWpixv{7ci!mJir8OBX(;u4%&Ju1jC&!);ov+&`(AyH!W-Y<=5BS&tu%{(d&^W_L~Z zxJ;|2@sAyymR(EmtLE;0K5v$b86med@O3=<;%vq@4{m;+dX)Xb3HR-4(XJ?IH+zm; z*F(+v`sfyY8V&-WiD)U4RG!29je;8Hgpk+{66^`Jb;s^t?3>h$A7&^>edvr#UUGrJ zUaS8bw;jD1{G9b~Fc|iwFdV8v{2&$T3S$dn3uDiSvE=muq`F-^r1+IpdK=bwg6d7K z526W(L4VW{LgGV?KpsJI)<`&7bf!gIi@1KExK>@EVWDB6;ji4|R8K>fZHlwtIw}ow zv-5m^TpkR(+AZe;V+K*Q>*KWxig;a`cx@i(?WxjydR-K%C{$6X4^pUVT-?n-(j9I} zDr72~W2q;{W2q+>M^I1B$M=4Gy;{TBp*mwqFmO;{to;zXec!41WBN!TR-M zVe=`o`4Y%nxO_g1-HEmhTT;r=I#VR8G$5q`86#Tb+lIpC^I`KPkhyUAtR5!R(YRa$ zrU*? z?-GW^!?z7pEqCoM;N@gtdtv+Kuzl1r;}4aI$N6SlpqRPah1vi`r#GRcw&;AkWH}>jGzPlN4(oJ^u5s&k=-$*5sZ+E3z^_I_=Afoc|hreW-l%f{#um zB^?Usl}Aj1MdXOWXUTgbUKww>rt8v1Eo}7B@|bPXoO~5185xmJ)+Eb4dC!azF$b%y z7RDMQ!JA;o2&*ijOv0<+Md0KFk48r8nUNTbhCV!5`Gicmn7P+3iYP)%+Q+~GW84Iu z$w=+UPR1E_wfOLCl<{%!(06xAt^&SH<@vomP~g=6N7dl`Q8ev0GKk>krDvjrwn~n1eT;W*~&Ed zB`ao(SCM&!LF-8KK`C~bSsDb2seXDuRUsJ0WZ(fngQ3WjU_m(x0tvtje(Am*5KtJc zGm{`Gc4vZM^qosa4MhW{5{yIw6t`AdN)}a*&R(*ZX&#x;{RDxnlFD2qFEmD~UqKg< zORE(3U^(IS%wZLcGh93AWuz<+^OVui#vs61%(^cLPPsSC8meVxk=%{s4^mNs;EwKZ RLH1U>`VU2Bm5FCs008M|wt@fv literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__update_options/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__update_options/why3session.xml index caeddab42..d67a8b0b2 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__update_options/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__update_options/why3session.xml @@ -3,451 +3,337 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - - - + + - + - + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - + + - - - - - - - - - - - - - - - + + - + - - + + - + - - + + - - + + - + - + - - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - + + - - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__update_options/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__update_options/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d1ba6a603836fad3286457c49e1d8f12f5d1dc0b GIT binary patch literal 5375 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3session.xml index 87aea5e9b..c3f26093a 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3session.xml @@ -2,42 +2,38 @@ - + - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..560da1f3ac66d31289dff691746b5244e919dcd0 GIT binary patch literal 603 zcmV-h0;K&PiwFP!00000|LvGfYuqpphVT9rz4xM#M_8bcC#v`dUbvDM< zhUDK@-h6G-gl5U6U8ph0!hSU~nt71T5C!ty-;87Gue|SuOZ0vq{t>hHsf&H^ycws9 z(fgjJ@@yDmXy7w_iouKs?7Q_PjUBD?{D!`cn@FeBPw{3t4^L=e zYw9U+70-u!?WgZF#ESOYeCo!#0=-3bUQw2roJWSCfkvMG1&rYTI;CeK;mcO|v7K00=3#CU&X+Hb1 z0J#8pJV18&nS*onr|?!GleFbU5!EjfnM67oEU_~S zj&-ZRgaAmk1(PHe5mqc^i%OApNz@TZxjF(#>nsEvMJys!*`$?9s@9QgaUH1^DM2j| pQ>zTSBGMJ25(q({RFAP?+z*!006uuDp~*l literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_context/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_context/why3session.xml index cada7d331..48ec4c796 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_context/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_context/why3session.xml @@ -2,702 +2,694 @@ - + - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_context/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9521bcb11e1f65d7c110defcaf3194a2aa2e99f0 GIT binary patch literal 13613 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 - - + - - - - + + + + - + - - - - - - - - + - + - + - + - + - + - - + + - - - + + - - + + - + - - + + - - - + + - - + + - - - + + - + - + - + - - + + - - - - - - - + + - + - + - + - + - + - + - + - + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_message/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5eb516603861975c90f4e6de265cb400abcc058d GIT binary patch literal 2343 zcmV+?3E1`@iwFP!00000|Lt8(Z{s);z3W%(eJ(716WBiV05jMC!R}>|tHIB-vF;>m zD~+CizeU+r5+zb%hssjuTx`dr>Bp+#dsJDhv==t~bz{G;{c3&l!*191rnSEPY5%>w zkM>Wy*~R_K{LsYjckN%R-8Xv|oAxsIyRcvEH@jQ8`;_9g|Kv%dwioLbhq>FvUA$?p zh==a|ulU}s-QN55erq?YA9k}2eWU$yb?o(b+up9W@y>3eU#)DgtK;J~ZGNs+>$@L( zwYszZKe1h{(mHO!%HMByx7+;JcGqIp-Q8y0?%Q_uI<{{c%irF#@n?R~4YwN%1RdJn z4)EX{d>cD6JP+B-dxZ2Hgov+={m5ax^V`x8$$xuqU)nwl<_bUN>3H}Z8xat#Km0P< zio*}#)gFEsVi$h&5Pld%|N7@cIIa)T)I~>bM2jCAKUr@M>p<46$PdHed!i#tf`)d>U3_N^r!Y1V_{@IHHu`44FZAKIKAwbRl1Y3whlx zwx=<{^g`#d3irSeW zL+qGA448qBF@xwEpN5s15*)QC!BKS!jw&TMjXmu{=*#L ze3kRe9%C7z0W!rjee29y?lbMu*!xXuzu#{V((mi*{Ucgu|03^1H0M%rP83tb2muo0 zMeo{EW-!hx&qUzL{8@}+pd`uAX_7%_Pq0ki`U1_IwTx$$9lA&S+k2MrygQmb!pB_0 z>f@RN$Ur=mT^B1}{)eE?7{e^8QL;6vzzmZg^u%%A|Bq!;=D^inbb z&;c$@FQoz2MlbK$39!OKC}!UYK=wk(y};*g=;L-ne3GvC(so0 zi2)<^;pd0^vkd=QCeEJI%+O|~@{NU)jRH;b$Ab}0ijg<3wpu4ougotzcl`%06tyRb zGgCWiKrv@6;L>^K;XR7ftMSZ zH~ISfi1^`d`QZWa%ls*4ckzn7PJ(iZ1m*lBSn@tsIRgt8##i}`jUB`?G^nO%P|Z(+ z@4DbPH#wO$_IkCQB`sNyXW&;PnvyxLIf$k(zRHOPmdrG-BqzTdE*s_HSrkf1J|>r8 z@Kl|PZN-;-2(R``LWX!+Lejh~A$imleRx)- zvXB$PQf>ZGUFl9))IeF}%gUl&Q5N|`S;PyA-%KdW^O9^p#tETsT}E!PgIh5rWPG)A zLWl9R-7b)k?Jl1Z8@?#9;dP4*FC{k53$wvQalO8E8I^K6xK(=*s;?T_VLWYM=B!;*&P=K+JJSn%q`ZKh6d=7U0n(KVkS-=bLyo|aC#ppB ztuNdkUZ)$YuKSwt)y@$e#*QP@fFtB6M~KnVc~b&pmL))@ase{M1gL4hezL?TOU%a- z!|?j#iDmLcBaL&+ThA1CifJJOlg1hX!8+k3{Tuv)nub!RsboAj5u8-fQl>y_Ndh+s z-^X6$ZJjh|Wr^|HIRZd5bJB80RPfv|Vr>4tMu%NgSA*%dus;CBhHpwb*d1otR63!am_2LbBEl98g-4cjO zCTgWb0L_%~2@&L80>6=PMXV;mMH(alXMNHx2%oJ^vPnTUUMuNhVv!(X3>@$YXp$NP zMwo|gj;f*7<5f61Is_F7QPdmf8Q^OhWZ)ex-4F_1V$flb3T1I}Q5q94K&jHqI+J^u zMw4h9HUUK_;HY3Rm=vuEDH2I@WKq&!XgWYZ_^6bmF(yTs3_uJ-&Qp#W3XNyfGRFzF zyJ%?A5}fil5^$|p=;EC=+OUMHB?ZB#5Q2CSgA)0497pe(9Hx{tQu;)2hBPJgG9;$C zmR#VFxZb?U_M*H2g}BkIJ}Axr9qE9l5Q8wFBLL)H0>{!AVrU2Szm|ajl}<%;mknA9 zlI=xhV`#)Lp&}wWU{N^7abY_&na6P3&rvm8TW?KFDKeYCCEyB^=y7BNjWLnqi|RM_ N`X44;Du5$$001yNV}bwx literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_next/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_next/why3session.xml index b8e31562c..f172cb6b7 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_next/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_next/why3session.xml @@ -2,27 +2,19 @@ - + - + - + - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_next/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..411840cf61fe199f13f2de950f913b58501276c8 GIT binary patch literal 322 zcmV-I0loeoiwFP!00000|J9SbZo@DPMR$KiKf$ss*%~rrDH%~y+~M94xbBF-VV9hc5AHYG%{;%}DITE+hO9zW2dH{XGx$!DGgMCs^eA@*8f;LVjYQ{vC@fBdlAg8 - + - + - - - - - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_value/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..69ef28f5458a1df183443146f7d3a706a7919575 GIT binary patch literal 1423 zcmV;A1#tQwiwFP!00000|Lt5&a~n4dz4KS}ClKKGp@&{F&84SKt~($I#+t~IMp}EC ze_yPX9NMwcshoAKls?ES8zO;+_Z}fxGEt*xn$EY!zWrmGHit()O$XvnGEYqo2N(GKFBmZ%JH<>@4ntW9Ho(7Pt$w)`GaN9Z#3_xqa5fc{B?tWy-nXPk2oE+ zn|W%R6CY3KT|U@%@2P#>(fx*}&F+zo8`{n1-_h^K2cdVgJ<0iUxiNBom_JXaJ35G& z-)fR{Wd@tO?em=g#MoPJDQtQpj%YD)Efx|GRVZ0Q>FBMEJrH z=-97aq&veoDDsMW9Buv4+Ip?>=l!gUZe{mzzI)yRJcqTb^=DiMD}OXr&VxXMK>x`z z$>q+bZj=*BQ@<4vh_s zy?u?%Lli?4Llocf;A#E&lP7UryU=uobjW$gdC2*1XWWqAkl&Es&7G$A7f#d6W$i-q z8PZ`K!#IX{e>>rP=@T59-|F)Z*fSQx#)gdz8~YCPz)C22X>}=TCu(R(p8VunM;SS;6l5kg?L$00O&KJotlQR4PzU|c8v+lL##urL##I;*4LXtuAU7}`-daTg^|E9tUf8h zmr-e0+OV`?Y2WqLgCXA`-yz@Ilkb{OAFlo(hVs-MX)69k;zty(E_j7!Nd%kb9DPbDC~9ICFu|H6EX|f; zBlhHcQjA(k-C`2&b%P}eOiZoz7Lvl41hsP>B0=PsApuicqR@aP5V8$itU)_j6J~V2 zCnVpX*CooCz@;NPmrBa9l;9Lih*6R eTS@&+Y4=gBGzTrp8mm_$3T&44cPDX(C9 z1Yd1-6!Z!S9pM6LEw)q6xZn=abm5*Lde$FjC5qEzSb78Pm7=qd0g@@&Hdnhoo)l~? z%_Xo}9Y$Lkd03*daT<^~+8%mt>L#&C2-?paSr z#D$~Q_!u%_mK?R)E-wwuEobT3VZ^v(k6;S<8ngl0n@+BPZ_c@>0${IX$xmycQBI=> zJ6(;P2x=#=1Y5OP7He6sM`t=a2T3b()?y6GA9ENcG6DZO+{TY@&jcLH9h ziphv8rAzWw8Ri=Y)XN1 - - + + + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - - - + + - + - + - - + + - - + + - - + + - - - + + - + - - - - - - + + - - + + - - + + - - + + - - - - + - - - + + - - - + + - - + + - - + + - - - - - - - - - - + - - - + + - - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - - + + - - - + + - - + + - - + + - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - + + - - - + + - - + + - - + + - - - - - - - + - - - - - - - - - - - - - + + - - + + - - + + - - + + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - + + - - - + + + - - - + + - - - + + - - - + + - + - - - + + + - + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__verify/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8eeab9a529ead278dce742ec4dfecd1ff57698f0 GIT binary patch literal 15601 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3session.xml index 1a6cec0b5..a8c3c2851 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3session.xml @@ -2,134 +2,110 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6aed11fe704b5b12277ec4fd47c139951dcc3cc0 GIT binary patch literal 1943 zcmaKpdpr{g8^`C)OfD^#aIg%ygh?)ov{|_yS(I_)Fn4lSE_1&o$L3x}5ppM)Ba~}Q z-mzSkOVn7L6(U-(cf8*BJ@5IP^T&Cgzn|yx`+lFFLbf2_KXbT2gon#s292=UVCLi| zH(S%8_E}cxRhbS0HqjSi4MfEfgB9dXHTinmb!3^$J!zrae=!Y709+8mHx8C=SsT8! zWrr!Sptfl8&oMEJZ%Rd{B5;Rpwo^EZgrdQ-)!hroJ+t8DZp>JG{Tp`1pxx#=*@USg zCkj&)7}Y+{9F@j}@yF3+a=q1zA%{5GCAY`SeHL!^M#ch9P|fj#c($sR82uZkTVgn5 z$Nm5Z@1;J6za8B>kY67%JoaIOL;uXA=Z4%!A1r-GZoYl%mR@1+8HcRqvYLfk1_o1{ zMSafL!R=2sB0eh6>7kT_rnkhNwtUgxX3^cWcb2fz^1m&I7_R3^naZ)~`yGstGHutj zTbp~otQ9v{Lob+C`K%XSvr&yM&u%%x`s~-fcg$zYcJI0vP3f|yo7Fd{+R$<#8cpq*!?D`}Y$R&m-QE&F*m2hg*M)!)UJh{f>z55bbgFqcKNz2)@W-2zubU?RGwUlTHjp)AQNP zUP&(JQ1C^ph7(mYnzgN@8Jot4<>XE7VmDWJOn5zI%(<7GCK!SE&RynhSNkVqdfr&7vI#;HZD7HS>WV>D0HWBwi?<%s)ch+HA8fakdR z&tJRgW6cF8Op1$_`O#rs<=)W-P!3kr1Mub0k za~f}uG-P+&VqG_B-Tl8GCeV%kVsdffe?_u_zIhdnRj1kYbm zcz)SV8~)&HmKzHpYt&6xq^K_yu%-b{)UAp4rC~LKxxLwpKv!4DT6k^F1N66y>g=d3 zY1)IX)frf7q2eL?pYP*zI;D?W%M9$h_K{X+!Wjabz@F6f{OLpR`EzFjeP^j#xJtUq zUgNGme$S!Wbi5@yDqJG_-jxN_-Oob0QkN7w4Wz_5%icUg{Fx$R??e@EyY2Uz>c@!$ z{Yt|Q4t(;gK%#po8m1{i3q8x1GX?@CG+wAkyoj2Qvv%GIf>J!j*WC^xht}>sGj^3X z=GcDSQApY$l7=Vx4h1f7_wtG$n-Hi>-ILBX1;fhnK|mO`0zvqox~Ea1BvtoF1Jlj@ z+OIeT&|=b+xs+JkZUwqxUVXQb3vv>(nxy)DMQey3qFM%YMk4Blx7Zkz}z>9^c zutapbpn%xuJz^^5VhpIi77GN6;ZfU_lMsEuU@W5WDNsf}T|H2(e=_gRoYzBCOzS+b z-O<^l6)0bo>5JRN@bJp6qP#7{nW6p>&Msa=aSU}(Ho|yXQEL(c2V4)hsy_^EvQ&?# z8Da=a^X*8rlSOpFE|pZ0lV7AbRJIJAXQ}F!^0l2TYVX0P4y)>PlvKXoXo2*zhx<5I zq8#x2YKRe;Ri~0B^nS2r%A#JbAkJrV3 rU+;U8d7$ZM)S*^j - - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__available_space/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f89614741247c42723d63922ec26cfd88e7ebe0d GIT binary patch literal 409 zcmV;K0cQRmiwFP!00000|J9N^kJ~U1gnRvp^g#f=tVfX|DGoW{%0Ml#+Fd#XBuXGD z!~XY?WS@Z;E&^X%L^qnVE*=2xIofWf2n;Q-M?$l!W{pK)e*fj;s1aUJexC15_@ z6&E~A`DD{Cn7DwiaDd*E4SdY4Y{e#dTR(nV<6i#|Y@Y8B&jSP>Y=p39_zYiK-71tT zM;>kD2_mDlKw#g;==!6zemWRCPT7yaUhg=Dyl`9FL&}RbO})>Se8QO4{8qm#&aLw6 zbqSC_^Dvy2><0p!=bkLiF^%yibz4fX=ls|f&Zgu*~x-~Im5j`@e};Bp$%|4~j+ zhz2U7mDDAHsgSASny8XoR;q4{`6PenLa|UR;?G}+L9F^KAqf}Y%j8L6!s6p0JXhN(dY)roam^^iVxCH - - + - + - + - - - + + - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__byte_size/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b3d5bcaa33ce72503aee952671076222a64606c1 GIT binary patch literal 420 zcmV;V0bBkbiwFP!00000|Lv7eYuqpp#qa(Uy_bOgOFrbVm!%6Kr{Jp?X-28Q>ovBz zY`%TvhHL{(2yL=~f-jOl56zo-KTz4hHI##&XoQKP_kiG^)+zNT@AG(6{xFt&82ovU zhoR7^c%Sk#mnxpeJ{OO9j?)aWoI0`H-NJRp;i_Yi|1QJ-t!InlLQ^YYD`8KB?apVu;(i(mLR-9+Na3KgUi7)4-!6oPE6lrE{rsESwLEOA#wqOlGICT5%gZd-1wQaUOg5VUiN+A5L_E|xIZpfNIMw6SdqE(M{Owk}{5 Ospco`O6gH-3jhG9veMK5 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__context/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__context/why3session.xml index 2afd196cf..3c99badfe 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__context/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__context/why3session.xml @@ -3,40 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__context/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b3c7e3ca327b2103ad3fb53dd75fb574d3e3bcab GIT binary patch literal 704 zcmV;x0zds9iwFP!00000|LvIDYTPgohVT6pz3W9OXr$2zn!?_M<^_B!MyIXmp0J&g zynVHs6G=>H7b~>XzOd1H`1Nb#`Ir^O+Z}DY;0}F?U7#_w@~Wc?+U_Hbd)KD}^(i<< zk=(<*&zl?Py2DR&`@`7nckb~S_Pa6NjLvOn7)$JM*mR?d-4ObrmB9qIdL|C%spqbr zmWLI6so)zlXls-Ot;z%!HO$ke8onRgcDtBv=AYnRk)J2&uX9fQwDO9+zA`>vf;jW$a?g4#AYzvXYP6A1|C7f7$2b zyTD)QJ-vda=#IB;_)dq^j7#w^#lIB)e^dNHQM}%6Z}09v4Rt%$({7#Ua|;2k=uelh zO~XLzblO;VYAag2s>Bqm%M`4|6nqD!UN5lBma}S&dJFX;$}-V4BzX6q)9n;a(Eo2Tk*4d=Bexpy}8rETy`X>QbtI zeW_N+cB!7G{8dUry$>abHCbiL zgs~JD*fJ0Tb22(clrq}rOAv2_HaaAMoM$Dtw`F>t49b)Zv&!odB$}84c`ubO5h(

Dc?rTshRlUl%7YgYm;{c}fHFvoY0qN`l8wg_WdxYal1L_5z@U=Nj9Br& mR0&c|hj4uY(o9RL9TR$@v3 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__copy/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__copy/why3session.xml index 0b91dfae4..9fd78af16 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__copy/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__copy/why3session.xml @@ -3,161 +3,147 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__copy/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2d2c61850ef35be96ae8c871bccc7049c681f043 GIT binary patch literal 2462 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 cf+!}1vq+q9R5l!P=e+{ - - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__equal/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..64f58d6cfdc8df58748604e6fcfa1ea91d9f537a GIT binary patch literal 1197 zcmV;e1XBASiwFP!00000|Ls}ZZrnByeb-m?y$HZNMW6|=eJC2h=u@FrVmKVe0%YxW zr8Vq+eMft%V{ef4Er=6&fz?VJ4rk6B9#Zsp0XW`VK z{$6hg{(x?v-OuUkgt45QoNKJ6VNV)YbhR39<8TQps>YA-9#$}3MqKu}9ouE!$VO}p z7u<9WU7O=-O_`8}VYxoG{&Q^Y>1I4W{{GVCI4@y{X;TVu_z$AIo5t45Vc5lIJ&yx? zM|ph(|2Lc2nlMHlI>xvz-Oc_xZQ5>Z`#9dNXoxZ0j(k~->ljzdwjXI7Io%D#EnV;W zxa+B1U7NUEO+=5!D|3HjjN$>17>8BYjl zm8U4UY4iyNpP4i>=?o^FV8z6zJEh>;nOQTlp0b=Z7T(>f#zS(UTs(BlJx_VP*!S&V z=V~VAn7Uq z;hsO))cZiyGXlMHKK1(XHXbD$W|@9M)R|Vqy26~?pI7Xg`^{B49AexX_Br63^7jg` zpvHQ!#pU<*(;gl3g6JT#ad@-fsQ+w>*S0UQQq9saOUEo7vvfRu+u>&En5AQuj#)a+-gUTn(=jW@tQ@m)JY6{! zpKn1HpTEp3UhiCF@iUywF240Yr)I^P73&Pes;VGK1|J+ifdtlNrJ!I@m^B)a@E7@~ z^c4!e(ZT~-71-Dsq@Z&RSQ5IF*h*ANN~?pC0fm&xin?~8WbI7Wbrv|eQs)^-ErazA z0}yEdE=E#GEkY&bfJrx8rqy-qKlgvk_Xq+!v1u&CQsH6y# zlIB1RW$!>(NR)~+wM3JJnz$k=tCZr$y0Du%SZfHK##{@|H`{ITq^!sVk#jIAqpY0~ z(q_j!Z35I<2RB)%%1Gos#VBuNFjUAQSJz2fJI_3v5|p~~!exn2GmubH25*GThLd%* zK_RvrHdPQHYZI{6RsuN? - - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - + - - + + - - - + + - - + + - - - + + - + - - - + + - - - + + - - + + - - + + - - - + + - + - - - + + - - - + + - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - + - - - + + - - - + + - - + + - - - + + - + - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_condition/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4929d49b5ab2805bc9d4ecf769b3e79cad1e30f2 GIT binary patch literal 2155 zcmV-x2$c69iwFP!00000|LvX2Zrr#MhWC1k^9Zcs9T+dXF-`#E%x0ji!0V&|r)_k% zgUs8XVkhxmDQj zJ9yMC>;FN5s!?C9a9H7R&Tudfa4_!-4nJ5Ce3t`{Z~gYVwty)U4p=hQYyu_A;qv*! zM{}~mIl9-oeG05MZD3B+!OFUob$wV@NkoJjx8FYo$s4*8CvX1sxdh7u6V3@HT)}iM zV5(3{$Tqb^iMUY&(W##$j&ZlPFxM7l_ZFslP#UU#3$tl^v2t}#pER(dW<|{zq2@%# zbGG(kT{u7kI^YX*Xj|r;!oyl~|3o$S+|7U|g~k3Xv2OIYbD!xlC4#La0FIe z1*|>7Cq2T&s;reZ?};{*7;uxezaKvS6$03@k^KldPeU2l2+%-k)JG83Mo^W&IRh<+ z-5Jz&#J4f1f))VLu2`)PkH@rn7KMN#@aLOwHB;+lctIn2;R4iJl@vJxxyIi`N8ktc z1VC0VR~zsK<^c}Q3mj|&oFxdhPQY1?Vw+)C0OSa&K`q$;5cm`jH8b=TLc9csn&G?3 zsrfoO?^jLL5C*1U-3j{TWd{A;))^YX4tuDtPON)Te)WOfIm@p`NziVS!PZw5^Oaw?4F5l6Gsi&ww!3K7$>RwU93LDTMVY)N89@$pWz^2L6RWT$Dbn zpf!;HG@B4e|8T}lh$d*mWvIb!`w$D3gN^c_-5vyr>Qzz$+|0HIF)MGd5pNcv=elh} zEJ)DRs0P%MDER7)0>y~3!HuFr!PKp9_yWPY^$pLtVtU`L!&B9Ou3rt*$4$#>;ME&N z8{Tv&n7VcTX64QKR7^Drfkt~Ta})x4MAM=WSZk%VR$5xE)UG_>_20kL07CPX2Tdrn zR#0mN)sR9nJln|G$Xh%)*MKF@wyrw4s0~V>1xsdgQ4^Fv3zp3GgluP&yj_##BzR&HCG)4dB$0)~{`?wV~5O>Z(qex9GyEmyhOX zS?ZCu=*Km{L(^u{E6=;P!2`7511?o}t*!ItE~=m)1Z!Cz+hc^eivWS03^V&TVFoj_ z9-HtEduX*@?*%z)v9>U+wv_+zsR4*!(Imn~B0;n!` zF1t&<@8tPG@6O$Ast^o69~vvI;j>&GhU8<;)@lRXTTEU$4B!%HUMOXm`49Y;iy?vz zEahyt2`MTS5xfE?y^9$vvt-4FEVBuQX%>?5Oh=c&2Lag!z@V`h;XgC7$%&*h)54mF zLWLkgOgvhK+NuO)QbQCbN-K0sE?VFYJs74yGZPfY=*dV7Dhi*SFbpy<#*B78sKkB7 z9I|79jO5^~^onal>9i7#@$4eYiV4n~upr1t4Z$g^45#UW^Z>>PXR`Nn-o$`;M@D)G zCY$6egbY5g`SfsO(kr|X?Nm?5;kAenv3X@Xgf#j0#3^^Iu!3M{Y2Faz2 zCOS?l1CBeJW#o>gNJhX0$)w0$Ap>-r(+|<8D21^)GHpT`4`2X6PUixF+pLp!NP~$i z7+E`OP!%g2LI@U8<_?t9SqLjE7ugD?jCDB`R{bjy3SlV54M+=C2`kI&k$mrSq@Y75lLt)~pcqKHJn4Yq zE$3ndL(GO*Iw)xN6pNk~9zd%s1C(En=fXiT%{Bd*QkiZvmS!I%#fS-^K9rO;N{YTB4s6* - + - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursor/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a7d9b015932226a175808c6b83df2a22890c15cf GIT binary patch literal 419 zcmV;U0bKqciwFP!00000|Lv7MZ=^5~hI{{t>#p@TxJZ#^mF**1Yiy4d>tI2~yUPCi zGvPM6BwOuDNrRAPgy+N00Iz{?KERN?oic{xp$IobG{sAx^1#8D#=jp59B!$M#IjaC>W zm%LHvY7!@r)jFygDq3FOKBcu9obn-PBuL|8(3~m{UN^$G23nzHKm|xq=%te+ Ne*w;5{o&0E008j&(eMBO literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursorPredicate/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursorPredicate/why3session.xml index e86d3f7a9..e42b7bb36 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursorPredicate/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursorPredicate/why3session.xml @@ -2,25 +2,17 @@ - + - + - - - - - - - - - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursorPredicate/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..48b08bfb5d43cfd0061b0448a5f5571240f7454d GIT binary patch literal 272 zcmV+r0q_1FiwFP!00000|Lsz{Zo@DP-1Qax1j*LJ9x`+Z(!Iz^&?1EjaBM-6jppy` zI%o@YDLS-M7Lp*3INpJXgaB}hIgGCWF|8WrRO39sXAY4^0>9)kXMh#Qg#l7#!stwS z!UN8Eh1){)f>*cb3tU4VF5V z7 - + - + - + - - + + - - + + - + - + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursors/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..67ab1f35fbaa43ec3cb6b6d56717f0b6d4f1705b GIT binary patch literal 338 zcmV-Y0j>TYiwFP!00000|ILt1Y9lcaM)x{Jj-Y?3772J`(iiYnlvJfe(6*bF9OB!L zW?-@o**FMFoA-V7sIlO4(KxPY=M8r*DIsC{Kli$Rrqs3%o37hv*Gu~PYvYwtx$XVB zr_=`yo{7G#Z6s>F?ENH<3%=mWm$&hbwe1sHv5z8`x>UjEZQN6T$BjjOoCebUg6CG! zwllRd^Cz_+amCv@QoFR#a820z?fh@$N#POK&d0|okKgVm#^LY#@o5kBFdnBbfLMA! zP>=zvvL$G3y_P7+TN~n&di8>8;OsmD6r?Coxfp;*+i08$EGHy|%v!6N4Z%W14wXsc zZ1j-5=#>fpSprB7c{ZtN3r)y= k&&ep~opoAf)Ra+Cn2Kn?$cnjGJs~Il0I_p*7Z?Np040B@CjbBd literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_first/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_first/why3session.xml index 025a30460..53352b61b 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_first/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_first/why3session.xml @@ -3,200 +3,149 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - - + + - - + + - - + + - - - + + - - - - - + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - - - + + - - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a5acb7a552f77e7319802c6f1cf435b56d63076d GIT binary patch literal 2684 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 q5CSba6b{A_9}!(=D - - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4ac22157461db892b476016a84a3cb7926b03812 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|Ls;yYui8&z3W%>+)&t0eH>hH52b}1i>}LPcGeNdvMQ}Z z(qG?^?5K`$3u)|tOO282-RC#+-mcy{-U7ylTL_K+3jVQ$b&alW@1d`ujpHzU>$e1- zp&4lRalD+s%8}?KIH7eHAKh>V9VM`UduVF!T6&13DfI+7>|#->eT@Zl5bqprT3^R{ z)0VOn)6{Zi>3Z^nGz^=5p8Y;k+#c5A>9-L3OyC52;vJ>gdVHa%A#Pkx9r*2f{Rr>j z14O2e`(X(^p>yEDJze|IJUCZ(_r`6y(G54>Lrsl$o;qqhwb60?EzQ#nwJUaU8f2oO zYwEcB$?z9daND!j?j)Ur6~z~E^3q1O$?a)}BSKXgG^j9V=QLWjc4v=zMdJrM<_+5C zw$1ak-itBUDMlZOv6C2monq9H7&VDe=N6O1e<8}|o(?O2TmVDr2C9bGU_hD^Z)e9) z|CooCe~QMp(eRt|=6@)^=-H8TD2rm7 zJ+v$0r~Ib0r9%1Z58Cq}xOqhYJe6)>h{q55nf;Tcx#)slpkF?2<-D@`jQQGb*A?|A z1MxNHoXqR<+kzVN<>bq!dbM}QoY5WR-8fvWIqH`$6%2%8Id36*p(8p;sw_xMWfgK+ zWHw7J3-9EYEU`R~n0YBunR#!60k47zzL06k-xwqk@Oi}?MNwd3Qy!Ov z)|nzHDjWFCAeDrm3tfT96_WCNGEu5Qi!`@b1=5N^I>}XK1!O5|gQ-<$QlmwlDPc_- zFd&0W;)5g*nNd1e)TGD?t|Bt-3o~wyL6#fWnxGO^Qbp1l<5Q*+%1ZRwXwRUOd#YH6 fk_BLv - - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - - + + - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_size/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..74a1d5bc163afb8020069f74061aa43cad462768 GIT binary patch literal 730 zcmV<00ww()iwFP!00000|Ls{#PuwsNz57@6R;f}YkK@k+hhA1iLOoS`wZ`@sA}!e{ z8xZ{aIvZ#y+O|;0LSS>qhw?n~dmcYeocccR{$o)rQ8~ z;j{w_82hW8U`FR{f9*GC*b>Xf-|%RN8{rs_mOS!u!G7&KYO$l}Jtp+G=Ps|Vysz6! z>DO&vuN(jKnrm7mA1}Jiy7Rv6C{d(Mc_{5R?W*oa#0F2Pe^lVOZhE@v{Y~u6y?7(f zLSV@kL)R~HRVUw+7Pl|{q|h^|`Ab1DCF3eLwF($zw zkKcD5%OQ`eZ930W!D>u`!&E#>#aT{8{4aq@H!o<^X{k=0Ta=-gc>YDj?WX0 zEKI>-JF;?2&gorlItqJpx#=kE&E=+}FrCXi(gqT>)Ff*9TO+u6y`tu{Kl{xc^vM%? zxD9kqjS2h)Uc_*wTT1q3IES+8O_o&*>&AE3oDzP*&)9#gn|^7ci1tZL9^xAJC%ayn z#dA9dOkg46Uls!MSZl;zO=NZ?cG<}6NbE9_*Gl5fr~P3WeR&FpW%M;rc!#?atR9a1 zx(bOe^ZCjtHOeDyz$l{t4dqu)TibLSV)TnZn?6a_0S8jCt(lrlh66t#hh zrziw|fUm$A5GFE0K}k - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_copied/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_copied/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2d83e9a83a65cc192227723d6e5627cdd1770c52 GIT binary patch literal 383 zcmV-_0f7D=iwFP!00000|J9VsN&_(zhWGOnK0@wE7cROH1((uoI7!aYz&I0T(o)~v zXscimbwmX>xxjxe|CdX>g7h%JeU3g4JD4&I6=L1P&9p_hfPTiq@@eSszSIXl-$B6+ zAc6P(FizC(z0YN*{8(xp2md-##ymM8%*C-}OmD36>qR!-VRqv5 z7vS-qqIZnnh-2(I)X`5^zJcIFwx>w=MqK`KLa* z0qeT1i*7-e3=#?`Gv<3slDq}3?Iub)oQ8$t3P?8nF1OhD?6AB!YoRK120ZT|tBs&&YXoU - - + - - - - + + + + - + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - - - + - - - + + - - + + - + - - - - - + + - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7032b85a924ce9e05bea8b1c9238d323caa42d21 GIT binary patch literal 3322 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 E08BPWr2qf` literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_first/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_first/why3session.xml index 93933520d..61acba5a5 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_first/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..21e6a45aea73b5e57d448776de83c8f6818fdf9f GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(a5bsga4Xfv2(mW)EW{W4|pPKBnGAX5Pj= Zex_!g8v_i!7%2D&GPoD|y^aK$002vV7Ha?i literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_last/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_last/why3session.xml index e9a4cea21..5c577235f 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_last/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8bf5c3bac3b79f35fe950f0ddd0cc4a4e42d3456 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(Y_NkExNViHC`~ucygY6Qhk=JWRd(yp8-l ZJ^egQy@L(D7%2D&G6+gMych{I0RU5#7Lfn| literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract/why3session.xml index 75fffbed8..14660c97d 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a5cffba162d3a386582c8cd0f71b167bb08d9d35 GIT binary patch literal 694 zcmV;n0!jTJiwFP!00000|Ls;wYuqppzUx=?)Tpd5^ohog!yQ)vxsc|(I2+G5_4X+0 zLCDclN{WT<)pgRa=vTBjW4c(@-!$NxS3d5y_8}dJl}#x9uTV;`-BvFBA9LwnrK5*O z6W_@OaxzstK5hTJpWxn+p=|*(y+uEJSFL;8s;GNMCbyM~$4U45@pm<68ke7kGit+X zJXszuogr^$+m<%{K)YB53bpBd1yGs=-EGD}_*_Yw-ho1*c;4 zNY0n6v0@G_ar6yR^vofZ$b!=%UncXmW5yNF90sB~_SHkg#-&p*hZ`#wf-@)d4tf z!UU}vR+Aw}p4D+o5sL{Z<=h?Pjez!kKzsh0Q)pjDgXcg literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__2/why3session.xml index 2679d8616..f034561d0 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__2/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__2/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ae1cca036af449efeb1ceca6d53b7fda1ed77353 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvAfYaBTc#qatQd)q?@l>U|k_MvkKYcM{Axi+Oz$!QqR zn3=Y-*-xM9G1pp?;{|`>DF63p(Y@a7OL(hOQ`dM|gw{jJP8%a)Z>31j5kl@UtEiadt+;}|Ien7Q zv!-RC)LX^IIW5S+fRmchd2+dxfC@+?#@-OcCv~`}tfA7Bp0|vNDMnIMzzuEgoQm$+ kqH;#JRGZ62XJZVhA^0RJ3rwiM;z8xj7yO5k2;vR^0D0?UCjbBd literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__3/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__3/why3session.xml index e38f2dce4..5916340b9 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__3/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__3/why3session.xml @@ -2,68 +2,53 @@ - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__3/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..37df04662c67127cc7f647c79c7749b5da786633 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|Ls;wYaBTczUx=)Z4V)!Dyj4U`_MUrH5i}5T$@sr@ zQ12N+yH9 zt~_twO_$uJ-F{x-*);dbKA6OI@Omt_0-bJ=C&VZH9OqBl@p}8I?#BJ}PhIBvCp;W8 zukeWVFg)j*;K%y+yknVHur$t#CkjuA6#paAZu~CPHSg!&iT>Ux5mP}452Q1YgCKo%(8f30PM18d+-3q$wNibuGIr+AL&{Rjw zvsksxl~5RL2>~s4{*cvb2RY+ygP5pwDu=x{YOH0sCH9htatC=+nq?wOiZ+x!&C&YY zIQtB_bCeDu(`scQ+pG%FLe>up4Y_d5;Fn6lSZ+yU1E{&7rWkz$Ew%dC)iR|HipFv7 zK`CemAtS`BzT{A}DAfdc0VU%q3S+JwDfuotr50PMg#!UbavhY7Pnn7@wO2!NkwgoM zEf8XVSYfFI)(C-ut0ktO967U-LWnI}QCs3t3c!SJD - - + + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__4/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__extract__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - + - + - - - + + - - + + - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__offset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..68c4ae9bbd4c4e93c622436c3f6c2aa8b6bb83a6 GIT binary patch literal 235 zcmVNw4x zggwTEZrgSF1r}SUJ7Kwv{@>1wrgOda%RA1*kV`+KyivPZF?}RFN4Mqr=BCO$w5q@L zyc};o>L(vs7gI)9Z> - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_class/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_class/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d4126abef7ae1edcafb8da0dd0763bdf07067769 GIT binary patch literal 387 zcmV-}0et=+iwFP!00000|J9VsPQx$|Mfdp%KEdNSj=f;fO$8E5)U7r4j3H8*M2TCK zzsHaki3$NhfYgm2^7YKz<43whdg^f71lM$X92@KshIGLDamTpEcH(*X(iFTM(vzDW zao_@x&^b4^V{8x3HN#%Hen?H#5saq36s_So*&xnX45h&z1Xgd>Mjm@k8c zzDs;a?ig>%@@Z(BG-sJ!Di87&uQBIoXr8{7zR2b>Ys3S0#9ca>J1&P7r|F$xxLaiQ z19E46{{SKU7Q^HI&1vs7rrwP_`~bl>2%m$2ja>gWZTJJ+@(edzFz?mHyqkQI3yb}q z|Le2cuu7}6=tdM2tq{s%Wvrx9dWbBeE!jh0C$Xd + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_data/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c052247e77ab988f4d96286b268b6dc0fb166792 GIT binary patch literal 1706 zcmV;b237eViwFP!00000|LvPgZyPrd$M5?odTtSb!#9EY;7d>gMsg{1T?}8z0*a)r zRzciP-`R&`Tecd>Hn`~eVf?$@ zBz%wabsAsx4^{fI>aObbXI!PKyZC@-=$FfRo&Lc#g}TOw_4cvN^KW(CtiH;6x$2tb zqTW4+<)Ta9y1Mq8oKs8I>(#vJ>fEGxT+bK{EH?9by;?S8*bbNe2hV0Oyt>5CxSqZ` zV?Q24cR_A<%eqagAM$$et`3`ay==+j4!gATJT~jluJKdq9+!x5*7bfScu)a8o|L#sO(V!tLq?G|!cO&a|8VK;c9qQXb5N^aUUdAw><>@WJv>oKOg zSNo9tdO^0+67)Ww(+3AuX#4SXPIi(1gi;%_bZ0$h@c!8|20uS#j}y`ycRCVB)6v~1 z#+A7*4ocySkDre(|G?OM#dk9Z5Nv?+yR(teeKTG50%{g9eVf72Us-ve>N9mb%8ZqJT0P`9_N24tiX4;0tGAw zz;ZtiZjgl+wEPfSr~xgNS1PYmUfI<9&e}YCAr`t6x)i#+{J#DyIIuqf2l`$djOFz- z8klkVg19Fj?r@=wh~ouuuLE(_PH{6gDeYo61jAZgK2drvNC&x3`>`ySP07Csh8ht?papKaF0O|EX2~jj+^# zuqGayRQZ>mL9gV#$*mq>ByZ^eUKs;Q2T%ZTqz+(*fFZm=Ph)lY-*I+4A_JRV3)YeHMT8Y^*J40Y!49l_Jrrp?Or=E<@{Q;Q=`Gp_qVcr ztL>4;Z8LrnJc7|>F}N)DfHaMsB#`a~rVa#F&Mr@zN!6{J2{Yi+y@cscsm^8q_ke&n zG5(yGfI-jiFaCF1gF9dNVZhuZ$05Az+59?id9!ROXgNAshCeo%foS@Ffi>G%C1&Gg(`(AuPB=DQ>8-csajloO1Ld!C`c$sC`kB4kkFq8>?;4dbaC`^ z-Ta$&{|T`i4V0sSay0P9j|LuygY)kEp3dR?S$|HPmt%_3J(TX@=R{Lg(PbZ*VakLQ zFoP5fxzm8rDxb3b4gTV)(!w#Hz}O(XaLGo5fXp)iK{}B*S+R=As5Iw3$tb-Oo_h}< zy>)>J3w6lOtdn>eJA{l9;lMICBj*P^^j0DOQyrx`h;k8AcR2JSCMqNNm zsL4o@rXQrvy(~dcm_tGBQ;Pn#+`wV~iZ}A=A$=Nmm8QlJ_!`k*#b5oefxt*&2qz z$C$JVNnoZf%StkGRd7-veT{sUK^Q~t1URE46Eb=&$Ou^Fm5eTE8PN$2j3ySyC?!lp zVLj`e0;r_JD7lr^3*&*QghFSLnNT7zDF-WFS&{%ZIawYIUC?=qf+UmMkYA zxrvNXJ0Yc@T*=T|>5BBFMX)L}Wv#*Nm_*PCm~oB-GR$SjDrf~@MT!(GWlo1=g5t7Q zG9P2Kl&=sN7^j0l>JntiK_g@;0B6Kd6*DmCt;7T8G77Teq;chSrVI;1Igr9A1yl*Hmlv1Se^l@WDQ{E&0DcBf AQUCw| literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_data__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_data__2/why3session.xml new file mode 100644 index 000000000..4d6a15b6b --- /dev/null +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_data__2/why3session.xml @@ -0,0 +1,160 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_data__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_data__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6cdbbc09f8d5bae5b4175a44e836423470a90151 GIT binary patch literal 3121 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 - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_length/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0a145c59dc5c5abcc8c0b73aca64daf9fa0b74de GIT binary patch literal 388 zcmV-~0ek)*iwFP!00000|J9VsZo)7SMfdrNeuCe27A)AHBC)L4T4Q?*kwOwB2EpGq zG@(*a)shM-vGGH`o|$|6NJ|K(3U-CJMRkC-fGUAcM|f-Z2n#4X9ERs6!(Ee3w%bC3 z89)GQ?a;QdJX%{c2Vv_b6?J7l`&eKZtlzg?-CBEqa*x(FErvB&!3Gnw=r3V@4d&}A z;W61UUf0XJrYzEsr8`&d#S&)F=PAN4{V08s&1u#GHdqC$(#71kTw=9J+b@pkYLeS; z&|MjR07H5&h~xe>8~4s2)wadv4+w5Sd`*U~+2Y=~=>vGPE8g^(fzO}k>GWqgvD*Ln z!+yFC^E6MB?nLG^5yTi33=u{HX9i=y9HftkTFV#uDl@@M0EiNqk{q;f5=7L3dPj)? zgkD5$6Y;2&2LVcR5=9Z@>vgSTACk2pB}*=w0-Y^$}$-#!JSTqK3+IO*}Kk iIjUnWwIrD5QF-D$&jo1bHFtS064^V@ - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_number/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__get_option_number/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e6c2d948c9d9a3f77bf5832d387f17948daf2189 GIT binary patch literal 387 zcmV-}0et=+iwFP!00000|J9UDZo?oDh4(&1kHBCPV39>OQ6ptpWs3$FT1$>?VG<>` zuTwjf8dYsvC6%&)K|F?eA3te@{#fI-bf&EL7)z`Zx^%#oxFcL*)zJ{1nvAw>I-2ec zTgnhU8e@hwhU#EU+3pL|w5e=r^Vx@zDsS8_c1<*9kJXNhX(Ra!TjMJwjO5N~eof|@ zI?*ASF<;lqyS6IRuuFHU+~q5rW4}-7hv7%*lWb12=BcIHQ=QJ{#_4*uwG_WNhV>-3 z-=MoNd$S! z0o04wbt3L*79=Rq-1SPEdB6M;~3O%SvejB;svQJ#^~ hQmL8XS^|Oso?{;%lJzs4vs2+k_736BZzH}2002Cqu*?7e literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize/why3session.xml index b342f47d5..770f5cb72 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize/why3session.xml @@ -2,184 +2,169 @@ - - + + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8ae5f412c6186ca7e0150503846c8fd10aa78de1 GIT binary patch literal 1945 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 fS6+fL0Ynuzs| - - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e5bbb654ac77d786f5d4042b614af9a6af24daa8 GIT binary patch literal 2534 zcmVg%d#cEI|wX_ELK-nopZXI4|S(*Hft|uXXigtq|Ifz`1{#^r!Zxw zF8*G)vo_4y#ZR|v-J)}IciFlBEPo_-;^voW*eriWjKSr0xxYEC8;2>MiYe}UBHxO7 zb;7OFzD(7WpOjBI#gmgJon3UlXP4jIMQYqKh1txN?$4Ha{%iHu|7ho3yO?#qFVf{~ z=6`qeanUVjvy1a~(WT|=r&R&#(Ob z%YAX7qvl;#S_$Wi%Wmn~1$p1-$w;~2MeFt0a=}CD)zyq1IipX5`l%k8Yx~V12-<2l z@`bc=6ks=r?8{mwGO{dI=N6&kL`o3~u(2aE}C|4P*D zjQJlq(@DE9UnW1BW~UW|ALi;rS20sD^XM_kd|j=Ko(n~=8%D4jM=%B?STFA04v^l< zI%iaUmdf7=7r=73Ac87I4Q>vin?q@P@l(vsFS_=8FOiyJS7xd{#aeE zhdcCVL;vu0?_pE{;a&;kH#Jb)se!nqf#WfZs36=cgZ!oriua;}uV7X9N@VbG6>P{U zK5}5$R@2k_7C2RUs`OOpdCk((i@`B2cvUT^T2Qs%?Q6kdU92ilRiLWC+gAa0NRq1v zR1v5m@U}&uJH7YrWo2hl;ny7!#F3Ta)vy%r%Ievac=2k2 zXZ++SO4|Dx#J#Bayp2;1VIcKnd#4!N$;Wo$*iKmQbU$4?cYdCzj4q_%;3opcF?w^H z{PsVYwt8fqFt*xX0v#Tn|Kj?7%@%alcIOW2!&$n#bl=jdFKV5VgM0H=UyHVDDeC{F zQjb314?l`FZsaXZw3LM6dgMjT50{}Qn`hK%#w(g;eC+jFQGxI7a+T2=npkOHmlyAr z_jP%3V|mdWcNwvIBU4uWsMCgbC?9WY+5r3L$B_i!YBkz_R{B@^SNgv+{m0l3x2F$> z3c&WzUzuN-UzvX>^I-?|;co6fZsBmK0BjEZmHw6fmHsb8e;nig2>owfHfXkQmelKk z^?Kk(A$GkUIC4Gk9xa$0alUZv>%d#SL$43MAw6<61E%s=ZnuM7Io^FEW-@Za7IxmT zoph6pheM7N@b=RoN6GCIJ|6O}o(_5GheMji0OMXN6EG!*5v}D>GR!tg!|DIu;Gf(! zK1nI0VL5noF$Jwv@GKa^g38_{vSN*-gGpQDMp)x>$U-NPxdbb12oA^y8>N(#Ql+HO z8O{Y4Nm^^H^#%epU)tNxQ}kBYAUSd^CGbSvg61w_P$_s`ViHXXfs8nvZIVtYai*;l z(JPSLQ!Hd8kLU>*x?rp_CdI5g$854!&avW1Mo&hnfvkBzDIL=;$*ff1+BqjOIBTI# zfj*)qYtRYJQCg=de3yOlR_SC!LXe>((=;wJ>zIJ#WXehK7%36pz()?uLNT%p7;STs ziV%<@2yY!2X$(M;KA;d}1guF)M0D1GrZEo%cn9biQoYGzP$ejU#%jV`5>`-yWGFFm zAGH@I8eiUDN&QoQ#e$5lwPJ#@D6fMUr}&~N^oUCqT*<|P5~rw7JU#Q z7c12SG?-OpE?TleZE}iM#B5lk4#d7iLMj26R0x0wNqvd{q%n-sxel}tx>%WpF={|y zu&87R(FqX@CTpdk7Og7G0NX^JRn$?41UhQsH32mm#fd>Ifh^G@YqXETMWZ>O=9y@1}`Y}A@V|fBt1gO1rt^ya;da77KI@e#!@Yf zy%ld9hG-3UK{Csv0-sZoln=^-&CHbOQBWTxu@ra?R3IBYXssPB(J0$dOTmhjY)GjE z<&~kf0<;k-IZi1hUMnVzmBmUm5}5XxM^r>s5?)G^jDdT>e0Fy5r3r8za&28g%7leJF4+W2)FyQ%v~o*XqEU}dv*@!>%*x(MHOdPbNvJq95@U7= wK*`7mx``!%u_;!%0i@nX!7{m_A}gdJn_4Eu$?U04#mY4Q2M)%nv+RWc0B9@cnE(I) literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data/why3session.xml index 4d279a568..bbac7acf6 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data/why3session.xml @@ -3,263 +3,191 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - - - + + - - - + + - - - + + - + - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - + + - - + + - - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..feba3842669bd383790bdb7bf1161adfe40f24a8 GIT binary patch literal 3356 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 aOi`OV)~a#&EknrCLp?mPY%P0+it2y$+j6u3 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data_private/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data_private/why3session.xml index 5dce83aca..607336fe3 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data_private/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data_private/why3session.xml @@ -3,553 +3,219 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - - + + - - - + + - - - + + - + - - - - - + - - - + + - - - + + - - - + + - - - - - - - - - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data_private/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialize_option_data_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3d9da80cae325016e8006ede298b69d660ff3c30 GIT binary patch literal 4004 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialized/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialized/why3session.xml index 28ea532d7..15609107e 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialized/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialized/why3session.xml @@ -2,51 +2,43 @@ - + - + - + - - - - - - + + - - + + - - - - - - + + - + - + - + - + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialized/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c73190feefcfa53a8f834bc88c092a686667cca8 GIT binary patch literal 959 zcmV;w13>&AiwFP!00000|LvGfZ`(K!hVS|ndtVgbx5z^eTA)P>1np&^t3Z*%RDdn3 zk{l%eeut8+$gb059UG{S_#lhoaQJFCd^~jj)qb@7rf8wDEx4kv-WL078&>y4Q8jm> z*ff2$sf+2`ZR#HG`=VGw*V$VrR<`SLOxLWcz6cepd}m#MpVQBeGtl#<2vs}t?W@kU zqi=$~{X=cnl`E?H&bF1U``BauZMR@Q+f@hSZM-C~Zu*C!`(YbMP}7}VRlcZkikv$- znB2s{s5fUrGb(Rv|07EARaBLWonis#n7(9OehHYv;vc3{+)gz=L$!wnY7cc^U?Oi}>aMrz658?M(X_7#&MAM_2n%;Q8{+a$ zb-Rm>xL|Y~W@ES5;IPNIl(qv$vMGh+1%tGL`WB%(JUj&Tj+A>gzXp;ASeOA!ToI0Z z@V(x6I|g7h9Nq~jNVEA5Pp;-Xq(?yf(|ITt#zXne!_#3|E)SFbYlYj0>}n3YtLEj$ z$2`T|^dXnAXv_A^OCu#$^R1q%m}c3p1rknvsyw=}$i8Z2%N3wk>mWK9D$49i^pl^m ztIcM z#AIym!5n#rrQUQN9=o5xxEU~>Ml@#o=IaP{0*-N0&q1!A0=ao1$n`HEzo6Iwx9JS! z|8KMX7UiRJ^(@Qf#BxgKFlX02+S5110X&i|i33qCJN@6-lN?}E_i~m+EDO)#ns}yk z;IqkhTo~I|05l~Bgr?*vL{s`QMlTBld`TG><;ILVm05h^!%;S}#Zh2Ua29U_&hoNw zPWtSf6MrBlmb5BwiWEy)m`k%F@lr^_tkS7fQai~~0!r~9z4nX*`4|0S5|C1+f*Rl^ zV5rlwbcBI4Sacarz@ZUIq!Fpp+z`c-_kpIIFsV3aT3fEPM3Ov?N@F;5iAF2Qb8!8XV_Th!8!A#2FWWIUhXE>70?e6da5%fu+H_ zC|o95c@9|TN#F_(f<_8$l(v#d0vaTskxHDv0pMK8QV0Y%^~7*yt#qENvW%Y6grf@( hE(lJQ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__message_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..30f62b490d47c78aea22bf1878aa371ee45b505b GIT binary patch literal 289 zcmV++0p9)}iwFP!00000|J9MPj>0euhW9+hJwno?2^knzPKShUI|;xWi_>)Vu;aOy+Be#)i7xaS_YOLkrk66xs0=| nR?;s}BZz~S)}y7Cy>hFVOtji1OFn4LH%N - - + - - - - + + + + - + - - + + - - - - - - - - - - + + - - - + + - - - + + - + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__path_condition/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__path_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..bc56505f626554ee2668c7392f11efd99cee622b GIT binary patch literal 1989 zcmV;$2Ris4iwFP!00000|LvX2Zd^GIhWF}1fs#ED~3RmZN4<8rBvM2h^*Pw_b3e@ON3^Ym#~w!8B$>1vnG_otY38h3`9FhCnvVQpZ0j+&cPT_@7b zZFHRE%}L%ItGp3Y1RM8pv?v(Q8#oAX^E>>s6W5768BL>tBQKoL_5wHonf<^7$Jv{u_gh!7_K6ZcS zbWJbRR=>eM5P=^ape~aMR-9Uxt<8pcjmaebwpaj(LDq}pIV4ZkE5j-8D zijzr;xnm`^*cfQriB$A=?(ok!fKEW zgEYh$o&UN2>n>UJ@SB_ftl%KDLLpkML1s;&)$7q&GPF8|BMXp3|L}DFC*vNf54`~+ zaC4lX&qgNXNuWK3yx+;-*Co*88lo`1BPxI;I1HCih)YwH*c>jsWhpj^OI?Z`pa%+W z0}@?O0X*P+JdBL}C-@+Q2aw0Jtgzx|Ye882Qh>xfoBt;)Q;XOFK`yM8n z2CKO`RloD+cn^s+;&0!O621o{cHJwgW z8AAdbJijYo~70(i2Zm0`^kkuqiT@rz z1`i;?2V862bvhG&=%NvSg;MAdvzrJra1&waj{-$K7G?&15@s*^J0HKNkwtiiGitS2 zza;Udi?x;2YEtKnqg9#!h+x$uLLm}Osmo^lLd2Uc%%oJsZZ*hwca#EXEO*{bFZsTc z=b7F;^l8(8V0e9K9JGfIa(P+2)>bo>a0gsbWWhWb_JpPz%9X3a4A}gHd&}DVK&9`^*|S!W51GLT=vvzt<4(n z;7#B)J6?h^Nx70L4+=~3V7$r=HKD6H$HX7cx$)$!<&t<%TpSSquZ1eO9N0$)lo}aZ zHG;L>nV=S>JX)g0t0I+)F{(Snw^BUDT)LwG7BtyqoxOn?WA>hB)Pe0H-U;7w=%a8k z)<)he-S}PPa7Y+a(?~HTtFT}nrI*CUnTlwE%`s#G1jV+b7@Hz&-9j)6uSSK&eho!C zrKn&I5lStYlm&2olwEQ#sM*UZsFsYclz36PmcsU8qrQW{j;Dyc#UYyND5+|?$*Sq> z!1?UEyTC7&tkaY!Bx7^2DcGp2%Y^`WgYwOcVd2-5Jn*NGv=6$l!73GOF>A8<#>Tir z4Au}i_Gkstyo+pbE*x6CbJU>6sOp*1qn+1XiCxMuK{^D_(cnwupzWhz0iHzjDhR4= zH55b+JloiWkhG4mkHSUgV4dMo-Dya}jUM$W=elEK(Lfp+29C|i@*BS!ZHVg$0)fQGP?nmT(EWLbFu`UwmAa~C$D0(-uqy&+o;vTv$LZkCLmt|e>m}$ Xwy1OEpHS$&*RcE#mw@0OMT7tVP2=a& literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__present/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__present/why3session.xml index 174fb2aee..89bf1ac82 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__present/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__present/why3session.xml @@ -2,30 +2,22 @@ - + - + - + - - - - - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__present/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5ba8f0f99fde62a72f3e8afa04115edbd06d2de4 GIT binary patch literal 373 zcmV-*0gC<~iwFP!00000|Lv8_YQr!PMfd)Seu7?>twk2ulokTr6mP|3G-?Ho?Mg~W z{=QC{1X{A_0~b=dk%YKh-5DLBynrXl5DBdX2lg~Z-)^l9!$#SD$f57-dB(oWw9VsU z9aA6EC{IHhvh{&lmjLq?eCzJP?K)Tmw4vKT4AABMHax~P!7a3j-j@5}f|ehAE{O|T z4S8qNGYnL~Cqo~y9TQvILK^cAkz6AtY{0DH$MR;7dmCx^(mC%lrwp0SN4bzNriLMZ zn9!WPoNHK&EsJZ+>jjKflI3*B|_OBN}=8tB~_aDWAao zAM-zg`TWYhgTMAt=J^WWO2IU8<;t3BLur>Oo^t{ zzN(g@suih9sj~K?h!t9D - - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - - + + - + - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c9bfd99e098f745bee8a594250b94ddfb2e722ee GIT binary patch literal 1162 zcmV;51at7dt)lf71 zv%5(+!}%udJ`R^F{Jj=6%!WI!*=$y&#k#+1HeYd_s-A|iUkysIOQC5nlFIvQm*?M_ zrd{94X0`6y)v|fGht;xA-}n_DMV4rGWUmi5khs}E4_DyUzq1z0)-NRUJ(>!j+EXJF~ z;%;|^-Hrbji`oUgALZHxeR`;#!NqABM}Q%w1BQGXV8E-80VhI3JPQrrBiI0V0UW>| zp#vbW+11nKp+K`h^M}xsU-tO#DG-ixZILz`yiPk8*(qB`vwJFw&G3iU*Il}%?@dg( z;Y?V{ECTm9=J#?AUYT?-Vb<}3tQ)gnB<-N&-TCuw>Rw^!wa=$e4d$c_AigI zpWYdMH*1&ELt`~>W6fDm+n($4a8Qm7im^dHHV6-cc#G{E{XEeQVo19mf5VF@oS7uJ z0R}S{tB6}D-wzLF2D|%h>s7O)Nr$eTD{aKM>4VDAugF9zj6 zuq0Z(c_oJ?q?mtIR}nUqG^?1J@-G339%AD}DdV)kBhYmygEDdh#& zpn_38D5Wz=vDXO+2vRboz^G`nOU@#kd>VdT=FbJ|%0h%rRP zF}PtlQEA475lTezP_Y;x>PVWLBOhfFf`nuhj1$@_mO*El9IVhxXX8kr2bVMnsR|Rb zKE!A(cV>!9(2JdWznLG`Q_9W6OOlqmUPlAkMTAAcX$h}U8%mj*{;gXY^BBYqLhHSO5 zkQ0l;4ztP#2gX@zWrhUWNf|^IDQE2=W--J7pb}QfBu)0lGH(*M!J|(GG=fbg4?zH4 zNh@QLnkj*Tg%F*Im<&Zt2^!UQkP?+M;1M8)lv8v%dPW74fMN{V#CCSc%1RF8OGX4O ctr5l(9xQb@JR(OG1}Rnj3)p3fh8H;i0Kc6#y#N3J literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset__2/why3session.xml new file mode 100644 index 000000000..382df4a0c --- /dev/null +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset__2/why3session.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3debf90069e32ec467904d1d852ce45573442338 GIT binary patch literal 1781 zcmV9V)RcW@0<=K@XzYX!PSF2txh~-bWYNpO9|WaM{JSTVF%p!Fqrd z><0Kxe}!-Xs~zq?mX`@(4!P?eFD{^Md))r(^1n;IWGBvgzm!XUQQpOpU0gJHxgBoW z-QTdqX816gM~yISiYn+awk;%5eEZtx)#tYDw%4lNY=>^MZV&HqvmWsC(6-?!XYAXe ziVRT~ufYv8^s$qf#y;wz?(Nuxf!`r@*YIwsBd5gRi?6LFp(#s06l=P5!p}?nk41++ zDLmq7;gQb@Px?pEe&18biBGI=&}RqBNdC(q}6Y@gR#oKIdJdm+AI2pijHPAtx*1J?_7+7v%F zf3bu=&y-td_$dnn^xU7ez>UpcED+DL;LZzfIvm`cw!n_f^QMJ8VTL_zh8de@P6~4| zvqC+W!Xw(ehs#YG0aGU3i`(yGk9#!!d*8?{x851gtyw^G@b9+A)I}I@$<>DgO6bFG zyXuBEb-UQ_M!3ks!QA00?GFk_SC^MJ`&Yhy6JG{NXGL)|Xeu-j&55Fa3VoiL=sy5I z=UFlJOk%)(8v|wv1NwUyFb^@H<8j6xy5|)` z6+;z6F9}0akP!S^MLI_+&f!17mfTO_!ku|*J>ccGEr0OwV~-!{dz&z~f>}ZQB!nHI zN3i{5>^^?{I4Qe-%)z_cc^f~0#v?TIuiefk;mp5FXYmlv@+6+cJv>j_Fac=(T|$e8 zh?a99`k5^F0f;`&l9zI)I<7`S97q_3p&wg!Ll4~=(}OjN%8Sa2%8Or}7iH0roi!n= zz^TBgz4_)^V-lTF0-rj{m{?2a?*gmz!%$hfFBN zCdcgz6VZQOUzfPs!AIOjfF0%Bk+!{_@ikm^tD#%B!_5|VU?6hPz(Jf7y7A*V%eU4xbO?T6lw&5e&O-mZ?{xGCCnFfZd951cIHOS zy!*(BA(G9y6|+#uUz~lvb1+Z1^EZAS3>!DiL%DTZb!jO~)MG9z?jKZB2j$d3F?En1 z4#G8bD+nv3RDy{6#^31@GRJ7<@o(7{d$&)Pz<77u-2Iy1J&faO*L2qX!JRdRdl;oF z!@Idg^J$DlH*{q6|FFd4_Qwuy>9X0J`0>g(w8P57>m6U67Sw4$ofbT4S}^aVU_M>4 zlITT{sDkK?foNh)XC?^TpI@G@sv@8wpd#RPAmA_oxckX^E!zU*J=I88ZT$9Tw zGw70YS@vMHcMfHvZQp)0RnmRlf7bBuA@(fs`hice-_%3wGqy7~nxPF$SfiZu!B{Xn zfYvf_tArHdH~xoEP2_@w%w!5EEJziVQ`Q@sSO^TICMotfAx9lV;dnwVbxaO@$P%3k zz>HxwmHwJ!B%>28lOaP^pkwq2t?_8B6q=KeY_hjD#AG65pQ4D|d2OA}P6h{>IT9kn zse8_B#vEkkh%Q>Ky%AdG;4mr@(vK73;A70-g;E%i3uGERx}12DQu*R2(*yt&BAsN> zN9U4r(J7TR55g;@GYQ!SgjObJXUM^xV(+{_Wwi+=fC#*d&NYyYAm2zGfXq^&oS+2) zr!iU%MaVZMMj9=h6VW@#qqojTgA_?f$|OlboIO%1sI06NK`@n)4Vp)rSz<}V$e6Rf zNb$x6$+J}S8W{OZaY#<)2nvG$rl3fP#_~vxjFD?_LLy5tI-e-bax{t@R-|NO4B6u{ zqnyhsxx@q-V{}NGGZDquqiPTX^Oih;L6H)XtN}w2@{A0NG8QQcp|<2DuU#=HfU!sl zb+!P&GB;SHOvAj;NCD2$M&lW9Oxg!ES|IIS%05ymCgwb)waXxrV#uPG8NK()=fL!6 zy=yR+2n%$i5{*MliYFlNamiHntVsDLhvaw$9)mX_kuX9@F7lR*%EqEgP<@e?lmrKq z-4?9?sxnG2j3FE5a!Gi>8{>7P=t}gqRB?`|Nmojs6Q|lJ(H5ei954Cg!BW~KWsw0T XB9$t)P8e^Blx+SFohF4@JXrt$s^oY| literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset_dependent_fields/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset_dependent_fields/why3session.xml index 9d6ed224b..e81cb938b 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset_dependent_fields/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset_dependent_fields/why3session.xml @@ -3,678 +3,583 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset_dependent_fields/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..45af8c3f96ec6f139bea7c8c547c4dcb5911f0f3 GIT binary patch literal 8782 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_copied/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_copied/why3session.xml index 0970a8f30..4ebf94f49 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_copied/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_copied/why3session.xml @@ -3,275 +3,240 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_copied/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_copied/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2556f2d1a48805326d8006a713da695e34742ecd GIT binary patch literal 4205 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value/why3session.xml index f75f40438..7cc1788c7 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value/why3session.xml @@ -3,468 +3,431 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + + - - + + - - - - - - - - - - + - - + + - - - - + - - - - + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - + + + + - - + + - - + + - + - - + + - + - - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - + - - + + - + - - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2e57ebadbe68dc74ef43e3d463403139d92b4b81 GIT binary patch literal 8144 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 OWN1&^*In>X5dRCF{$#5F literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_first/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_first/why3session.xml index a55662898..e8586a9d9 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_first/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_last/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_last/why3session.xml index 3edb3863c..9401e411d 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_last/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert/why3session.xml index a0d1913c7..cdd8b18ec 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..03c6682250871312992b2d65893eb89194b1331f GIT binary patch literal 568 zcmV-80>}LyiwFP!00000|Ls>zYui8&z3W%>UJ5(=z2F?wgQ=n9RCE=yv$Ki7v5mZO zaDRPQb}21&LlQ!1Y9q7^qc=M$*Y@k`=r$8!`KsQ@6@rHPJRBVpiXx1{7Jmd7lody(Cn&`WA)-9)ju!Q{c_sq z<8X6?4J0aL*~c9n(pL(rF{^i99@hP4{lH_t9lr8na$Yok3mTWj^+l|=BGzm3brJf% z7P=kEi;wW{heG?Z*LC~XN34CVZ{@bMkN>opKa`>8?HNsI173)nY{o1Fk|Bl|o$(x# zj!sH?2cJMRo0nOSC+APQxruOQjP z%tn&a(n8(NYXj28$Y>C4bk0?fYMeJlU;x8aKc}Se(nT^NTY>~?0_i3bv++>~OTn`O z9VIHyAqVtetf(N<5LSfelrxYDNHPbPkibbx&WBV%w$VBy0pKEL^o~hU&?aLvPUoNw zAlF0zNM2;HwMo`SI!;m5q0kB?iYc9M0K6wo9zn!pF*@`<`^>d#EjZZ<3e7jA-8Icb G5dZ)pm=n+d literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__2/why3session.xml index b19a3b498..4872319c7 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__2/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__2/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..13e61fe3cb353964d8cecb1e1753f23650556f19 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3W%>UJ5g#Z%7W?gQ=n9RQ9@zzLEvUHfzPf z{q>dYQd*jZB!tq`K1c}d8_k>d2JLR0bJ{KWc8tTg-10Q?vhu1F{xaQVp7COnkIVfu zAAf+?(`ucky5llVo5~Ar(_x7%df;i|T@PGW!<5&YxbiR@k-uym!uHd%qiT78IP#Vk z!|)*YnaH>6x*Ik(yw2i^FQbbv=gSAO^)&nK!9Hh?v(r(lp0#;Qn+s0kmOt=&t}W_N zXrzeI@ggs;>&=r=pN?Wr;NHt4n_hnYiBL~HKED&M%GsgkI&^W_Ta<= z=;L^OgpCmzWHE$oJfv?DM&gS$hI+pm)~owG4V&?6p6@r$9=`>T>-_3$)>|>_we>n1 z{a+j1jrGM>`1ebpd)e!{`|B;%z1FvKSG&i5+Vmf2s9ASH9V(>K(qf9Bvhy+r9b8hf zbyZNo8Pf0Y6M{&|F=5iK^^o;!4XRAKctzT9a@bHHtkKf30U!biTFW3^aFzp>h>%SK zks!&zp^>PRQNS)ENNFWVO~!ME29iR>P&DX7x!4qZlEexNC(UfyQPe<6pvgKb)XEyN z%4=ZnOe_Rcd^E%jqy?1%(&j)>JEVfiYN;J~38k1)LIWAWku5>eswC7DFtYQ=V3=bo zK<=xvf+072E*T4Qu_!$fXsJ@blmn;+a)N>{rL^ESoCIGSMzjc#Adpn9fxP$zWYOhJ HL=gZ0Y~LXC literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__3/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__3/why3session.xml index 49d7013f5..49f4d3bc9 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__3/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__3/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__3/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3b347b4529bb068abaffc8d0d9129e4330f66f23 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zi`y^|z3W%>UJ8=+HG=HHJ%k3zo{Fz#G#c$1vPp2X zS<+u$IVq*3>9V^lrQ77-v5?=>jNTh$yDTv6S9mv2Kdg2*4!A0~&KbXq_l$E~ZuvNz z!eaOV-i+%Fk7bW}7`FwNSi@ncD!a#V#C<2RtoxBSn6O~qACbRI9cWW{Hml?lg)7|Q zvhPpUJ{NqqDf@nViyIc#ctt>RfmbK8b~6aLKEia{Hvz=cCvYYVY*1nofWIsi3au)bl&>I$s=mu0yk{DvvXZi&g);Rrkwj zp^wAO5jK#lkYyitbVy$%B#X0p_2psRZ`Kby_S@krFQ&{yZXm>1 z@7hP{=$-ncq=49vq)1un#yO1Wweit-L!fL>2&9pnl!B5+Cs0l0}A ztOa(_WXp{*DuPwMf~=q%8US*tvQ%ctQu;uNK`F&fPBl4U(6UL%MQzzDoi!+MTC)kE z3gf4hyf8X)jy^03veMJ;g7^k; K#zam;5dZ*ai6fx^ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__4/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__4/why3session.xml index 227ea93de..51bb4d795 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__4/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__4/why3session.xml @@ -2,51 +2,43 @@ - - + + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__4/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__insert__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__offset/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__offset/why3session.xml index 83d2728e9..a89e380c0 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__offset/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__offset/why3session.xml @@ -2,29 +2,21 @@ - + - + - - - + + - - + + - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__offset/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_class/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_class/why3session.xml index 04aab4570..67cbb2a0a 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_class/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_class/why3session.xml @@ -3,300 +3,253 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - - + + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_class/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_class/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ea3fee92987abf1558a82297d34b5de336b90bcd GIT binary patch literal 4461 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 bm}kBwpoc4b1HI#$`pa01_8S0GV?6pF!!v-& literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data/why3session.xml index 9f8064cfd..c2a3d2c66 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data/why3session.xml @@ -3,387 +3,305 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - - - - + + - - - + + - - + + - - - + + - - + + - + - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - + + - - + + - - - - - - - - - - - - - + - - - - - + + - + - - + + - + - + - - - + + + + + - - + + - + - + - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - + + - - + + - - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e3edd2434ccae506b06236332c27e09c2b69a718 GIT binary patch literal 5503 zcmW;OWmppo7Y5+b-8H&FCJLjZdvpr|5)vZ@Lq268s=7aCt zf6o8sy3TnRqp$)0pT~pj!H??$siBuXkxPPOA*dD%{zG^>uSv6|neAQjDu^vp#x&-+ zxbWT_OPKZa9%*IxWTVwc53mpu`Ay8 zgWzq#f{i=B=3@UzNeQo8(jfQZ<7LAm?If7`>URm4adLFiPlzK&>do%_{n|G4A+1I8 z=i0FT<=}NoOQ!P8p*5Ep2d~-5v3siHgTxoLqesf5mfPO5!%sCgQVWZ(CpxH-A|4Z5 zGFEqz1`pygGY9V%$-S))x;oZ#^Y72F2+1gsBd;iHFQ!j>N7NnP!rdPwP3G>?GI{J5 z?B=FR{2rJ;2P^xvWWur*eh^twK&KNcN>yOj$KLKolztTR>vdO%@-!*x3cKc{yxlfz2#ghT?~)hx_mPUxlFodP{fh4 z4sTa>bep>WLU{{O*FT_ZCk?=;_2(DUtU`k?#19)8fP!WY`^*+fYR<)@x5fH~|9E_6 z=&Pk)H?$WQ^IZQR47yuSlB?d0Iemje*%<#RVB(8-&V!BnsI7|a=LxU>>}AAW=&y+j{J?4PiqW%qd<(9Fkw$o%U3f3DGfoB~2hmVr3XY#==Bfd?!2 zu6s4o$6f9g!Po}lWGErpEp50WiEz4I&(y3%iD0Cn?nj^zSx?=p=1fYZEfFi8DM-8i z9POiqA7CAAam9~=WjDIoW`V#rqOE84;v0zAJ?@lKq}8dv#R@p&8V-%G8{PN zj>`5GS0?6HCgfK5MuSw30?UjEy_YX$RVq~~-I=G?Ps7i-y(FR@R{N&$q8ZKZ7;t1p zl`e#tg;UD&PAX0gcPCOP5*K^KH6A~8 zm=RVCL)SM?9R(W8?8;x7gUmGsu2j;uV|e((&Ykx*e+TrRh90I{S!n-}bgZ$gc;rmF zKF#tx>vEoYUA1op3pEp|<8USzc9ymA%(f&@6_puV%fH^;`K@QY?Teq%UmRy#V0+O*;WB*|zpERnVpDiJp6MeI( zr@qKo{Yc?6=MDq{Iwvy1XlEKO{%apgfjNm1)rtr;wHSYrMa;iTGchS|@JnN`T=esC zbG!=)+WOKmq-a#)Q182RD7ERm2{t(H>SxL2F~1^mukGM_9pdQQ9YzO~M6@1Q$3jy6 z7OAAPtCa0CRb+Hx)|D>nlxcF0i9sq(rn$c_kJ(L+e4V}Ez=5?{|LK=~Z+<1oYuxRh zD2-)nww#FBt-7ZPHkh^F@};ewtFOrl^$V`E1kT5^$6)c0v@ z$tm^_YR@N%6ShaI;D1={IZBH6!DH4}YcGoYk1pu|bz-rELg!{<9aq1l!;wepgTsGn z-=2sNT^=q#WzXNze6DbI|H?M^Q&WpkFDFjd@=~b{uJNLbM!zp2rrDH=QcQD> z_U+PFpS&_FzuSd_E7MD8;>BN#-L|ctm_79llUsGCa-k^&3s?6&jn0wo2@K+u119J* zD1K7yjbqu4K+#Jjb^Y91W5>M82CeBZDdQQre_lD}zfqyScD47WhB}7MYbW2hugy~T ztDE!m_KEp{uuC4PL&?12IGy`Zq`BNn$!UFS&^l=Sm&~8-;l=}_x%%XHyIM~W=dK=J zUGFyKo^+p|tor}XrJ#Q{9Tl5aUR55A{6CMe1xxueyGoY)Cu=vvV8pN@ME*(7Ig3R> z;9<$Zheu1V+Vmw2N~xnsAHIK5R98ps#w;f7@%LRlq#we{i|P1pteRhNn_J%8L{+~O zSlN!Q4C#2_e_yF%#Ng+dx$x`g>x;2A)2n|q7o4RtuZ|ld>lJg5<~ENC7>gDy6($l< z|8DM1?g;vpu~h2Z;N=DTCIQ!4wjQ2aH_i_zc*fLXt%S|>8@X;RFO3L|?px}uM^id7 z_Y!A6M-AWpwWHMg@~os}WZkfSy^>Y;Q*yM$$kmZx8FIgLzghTG_E7Y?%=u+)%dLRX zo$*(QE$0cpLb!W}@7&Bqf4=t=R{Lc4dqBM#7BaXjxJBWI+i7HJ$FmG`I`B&%zZ1T? zKA+x`Y`C?w_qo0#J-5{O?+?s6PfkdPMRaJGmSwsq-tCLe)o!s*dl zB|j5I&*A1iBf`@1{E|CwY`pStzW%^L(%`g(XxbeXC7$P8YiJoNQN_UVHS48RNi~}0 z74b}k*9GC%73}?qOe*VDZc134{$BXT?ZKW1?nVU@z<_PR6uLEbW{h$DE(UWHT-s@GKkD-Ux4z z-+(x;j~R8H%;MT9C~p{poo|ev!GU6NpQ zy$xxB*QeF&a2=lC@3LCOG=#SC;om&#O*w?Eo972yAu3OXAgoqxKN@#FWB7kyY^*|s zV8}n|5ky^U=;ywAZ?5$O5yET0DBcT0;3=uVTam%whWmU>_`-jK%M-1w`4*mjXI|%% zd!s`d+e!0`Z{85SqULYXq*y+D&~Pe<1^X>}OEI)b6u4S9kh`L#`HXB{a1;*}QzcJY zkqJk1#GUi9(I-EMzYoPE{Ep7c*hI1P8!i0W_Fq%V?V;`Q1itgso1=YNC53b2KZAtq zWoc4zO}G}CO3BziaG9{aQFBNoC)#7M-O z@6ecEI=(ZM`swDPXtusOVx#W#rshqamuMEDX!MP(J@eNWHRXfBAO~Sp0T`kKm@>om;)A(XzP7|?*Xa)PIM`B(%MDE3?8j*gRGqhNJUc%C#+0lQ&XbwpZQjm5t{X!y z#4k~jeMnfBWxG-m=aYT#u1%TQ=flVwy|L_8v7O#u#9}Oa%$Q$lCB-N*RJuD#@i?`$ z@fAJUyi3<9M)PaB?sg+G&(S$u8r5DB$1}1c-#Sew-7khAwH>ECR=kmYvJSfS+xCU; zLI+1HDtlcGm-mVt=fPF?g?km9qM>t8ro*?_^JSvo+~zzRmo!`{+d>jY@u_{ejS|

_-VCSbJ)nE%Z&|vv!t1zh4)|;+m{ppGhrV;)Xx7NALO5BSXj|7(a6V_p_mM!Ep7hG^y9L zjIvO?+oz6?wfm8I&-lBvR{MOww*j#Jkwvv;k^Yl>`=WseETtl)q5+szq3;+U!fAl3 zr=p0#_#!Zf$lvm`L2L|2uk^C{P36PYTz^@asqQh*pg(zQ6JVcHJHZJkKYYKng!Dwx z(wLU-#ZG#r)9*!#N`!|TnK4~2B_$mATY2(%L^XMvLYqi;O!v-vP<9x|c)G_HB{{1n zHOsIo?IC+LcazQc$`bAO%58;NuQP`ZH2>-~NPWZWxZm9jGK9!H>4N0t0#+i#omexy zgF|>UvogvD<=F?mHPw<9#xXs0^=Z%sXoKI`hT=r~ZNOGzSxTHfl^^4naV+oGO?+Rh zr$y|)2!6%DPG{=J@zT=&mlR%?HrZTWtJgSk(MBz`7riM*51%!A7z5 z7as|VOZMdy*v4Z>ps^EPZ7i@PCRZ^6!c@W+^bwzF=Vg8GQ>)!j2%b z53-nm+9myIpDLu;`^FZjU{0qTyupUf%A)ln@KWB8d_sN0Q1Pd3_ynJ9AwH4?gEo3Z zp*}RT54i!G_@z@^V5vNqW%(;W`J?MGeh8e^*9~ysEB_ z(Yhzj%0Q^YRtBZJP`rwR8LEt9y8W0`qYZoD>MsuEwJ$Q?spxU$>doNBnB!Qr z;;@V1Mevt^hu1(uv}MV~Lt2akCAMj@FAE@opk{eJ@Yl#t%v1_1P)d8>Cm6ndl{#LD zmWfdsTsUGDYp+~a16GEk=)1(vgMHVh%B>}AN=(-JGZ`<<6*?ZzU8gZF`ZtTUDEZ^q zDk**bxQeXGtLn4Db7d78a;KtXPs8x{WpqU-;NW&;>VZQoCQ@4+d@h`RsYT_ZlgUbG>Yb)>=V(vlqoiyf!v}h0g+%Ot|FT5MreeL zKV@KH{Hx|ggoDQhWsVBhA{#b#F}5(16${Cm9Zhz2a0U~xk!E_|TLKdlNCf*(H1;?a z1>Hs>2H_aPxR5gLui5}I`rc3J^up>QE8&5+2I#}e>-0(S=q2I0Lq!n`VQVVRm?=0$ zs9}>FbJDG~#!eX9s=H$pU@{(h_r7Wi37Z{e)s+!=1O+}l`3mqzxOpn2kIK)9X)w`@ z1b-HS85lW|XZMoNiv>mQfCSQQPSt77T_VXPjp~36Mh&-BweuZiCNv<({H78+u9j_u za$HThq%iNct4O%qJr53M0f!g_Y1R>7W6=hVWi@;qBe;n}^V~Ut2Y*V|4h1;LCJmre z*C)e}mp~LH>p_<@g2dFd4{KbFtg!j{1tBxAqW=w`cvm-AZly6^ycmN!*rJVzAYxoc z6N$&1vciFrjlFiv-c z8Dns>+=5)MfYKFd#|W>@Txyi{0uEI1Kw36wLdsN~`~Yo|YCwrmT>$AXR%l7<3MteT zBSconEJ`38b%#Dt1_Gopp={C;JWd6mn(@77+W{B_C2H5T6$yq4Vjfm$sqAv36{8O) zE9JiLRD#Cf4qDN%ikaxXB)$yi;*95T=HjKa?P1gevXjt)*?vDIh{^{Af+4%K#VcxE zFPi(kO2!)4+u2~Ktz^vjcz&c`TyeX$v_P+Z@%O$~rp>NHp(mb<<@D)vlJ@5o2~4~F zbD1c}RN|@)TA9Li{H~qFR>kccUBgA`r@RF4+<9#!&(UnF4z)^m`$Cr1rU{uR9Wh5S zAPctIXk~CEeFkY z%23~zB#0rPY&)=Cgz%0$XNFuRg6YuY#YjY;OkjWw1i4hTP zpQ|AnPtncPr{MZ_UQR_|z$y#GAgC)JN)q!nzI-Z`H*hB3ft~g}A6YgD0p=h;Axtek zQ5c5cF{gl=4`s-Xh)=I{Ftt>Q>e{7 z{*qc)4{rNP~LdvCO{54WL5_ks=^{;LS3H7VEZD1 zGf>KV1B5Q2r7{?r3>|$z3x1)x!6*JL%X6@jNovu~s31&U+8V}>`I%QrIeLcWUluWq zlA@k{+DG9DwBs5m5+E1QI5i+WMjK5l(2*=#4NT81y;o&&EX=&EV_Yo05yn0 zUc5`h58HwafF0yYjSm|qw|`$cF?vb`FR_-($ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data__buffer_first/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data__buffer_last/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data__buffer_last/why3session.xml index 8231b7d42..987cd2bba 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data__buffer_last/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data__buffer_last/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data_empty/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data_empty/why3session.xml index db01ead52..e560f1a3a 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data_empty/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data_empty/why3session.xml @@ -3,310 +3,247 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - - - - - - - - - + + - + - + - - + + - - + + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data_empty/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_data_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b9e20ddafa5a85049dd1b206d36bfd58b30787c0 GIT binary patch literal 4459 zcmXBQcRUo1;|6dmn~Wnm^T^(g>^;twWTnV1Gdn7snay=(B4?fKP39SAuOnNb4~OHd zjLcuYzvunW^XKz=IOE9){+FBGFM8g;>^_td9&%866DHz^yDTHz zn~!x&F`sem8haqvQiTu9{hqu&{_xbfoBxmd-#nv%*(#&+>*}*mg_|kmLYITx zho^miFD@2ep09E|&NP0eRXiTXd9>SEJT>2A=MZvJow@wWDB~vPqE-8R){_ z3l^tr99{IU|KJ=Jku^BKYAV8~4{iCjL@Ydnfl4w8f8^jcE~~_$#v@e*@$6m(t+VNk z3y16;)*8hNhYTL_g+cB0c76D$%qBMvP)|yBXNCDgch$z0v3+rIi$*bY$X|^x{i-+V zUcbS`G5+_amK`XextPPl<*A@Nj#kdp$;;Ki#!as*PE-BhkVsb}vbq9%a=qLL&vy^( zzBI>(QCUpb$aU}xDew_+b!HUnT0q^1i3mCZKvC} z-8}Z+G8l4|C83IOH@=a>odC=3roDxJ+-9K;TYt3wOVMkU_EpDnFy!l$l3r}k7EPFr z^G+~KNI!LN3dvTH)|4dEym$J#eGq?4PrzRPs~|v1sP)#*sAr>U(~T@vQLp~mKu!Pg zsZpB?_USr05C7v)&q+gK{*&a{RuVy}~RV=Dzp|CujJAm$*?Rqni3x7#yup>x9A zJk8fUE#|W|iz+%_5!!3{)%3m?RtCd88)#5YveKQz37p4J+1W|F|FG|!9bG*`M+QJxfL%v0!Q zJmIQR+s1Mf%H)S*D`<#U)RMA!6sQ5OAXn4-sz_&V68k~==>=Ge;Np8kV}l4){^`mw zfS{S63o}VRY+QZ0O+-GN-M3=%Ym!H0Np-|b3HWR>qo}i@AfTK0Q>sZ*WG`3It0IUWa{mWVg7O9aOTR>)YOAMnif*X-^M}Y1BEsC z%`2VH{GhcXuLX0ghH=;>M3ZTN#v8>ojSS7B7(?ceDnX;dcXn#g4vDqws7Ar5^T)Ut zuyDc1=cTF2w`e^p-6rAMWP(=BUyD4K%fbDXgu1W3lPqHuh-=2w%Kb{jJ&d+i7^<1M z%2r2CLY?)T2l?;j4Z)IK261)TO*NC~9kEvunCD^Fb9QTzy``(#93E#C+i0O={TBTe zY4V+;BHOw%*{5)b3u8#H6YtX4rqGT>nAd{O#oCbaSJSG#aK6w96me%ktk&fe9uq>G_UM+Qny)(?>os=0#e`bXu9n)f@?UWkUrK7w zjP9H7n`dVx+AAm6OBN?Rb{1q;i#ye76IYEZN;c)p&uq1po}A@~zNIAGi0?0{4i52e zn)1Sey&5z0Eg8)Jv6Z7}45~s3+-g<;c#wVMDhZ1~Cx?nZ4ZjZdF>Jm=v%u1@OTqDq zc}RaZ;w0dE4ow54JQ?%+a~$4t0-f7VQW>B+(;zKAcane4?Y(wZepF{hQZh=9oGJen zaXH;$38LHzg+mF9<9Rms2L-}AuapQa-q^lb!X9MpjCbl#H@y2kJoMQl1dg$mk>f(I zP>8S5@TVy4m5cVen|GW$J`eQCvXIE59C7EBSd3{apANzl!jDXF)m*|1O z*_2ka=h_ty#Klho*X|K3_E;91|C2-UIAn@t{ioaYJPTg=%COZaJ+;7A)pQ*x(wZ?d zkeVE@WH9LQZUZHWZHKpg=Lvl9cZaNlYvCmK3>35*tQ@>%fRl}I?P$|A@OxL%!L~U4 z$M|h3ag2(nH+;VX0>Rk1Y?E zEGOFz9v?oh;Ob1y+k-8K9G%MxGily(4bRVi@>smeN?2Q^CBi(;Jnk)RTs^Q>FLau2 z4c$vCNuBh}HLmK{Vg!0LwH`tCd;9cPba23rPn3;N85g(bwAE;(8$3JoNBgi6i_8Uc zTp}1@ob0fwNDg^V{bwM=-a5Cj1-&F`0emjzUv>O$jdn9BHe-2WneEf&{L3v=fXilp z$$aO`K)C@jICEjHgU->@b18>+09nRZ9cns%O< zs_LCO^vcitUhfk|2q7v@9$+L2jQ=pavo(>%!2 zuVJ5X(kXk%M94(Q8Ta8Gm3xf%A%(l0>~v=PVP*w)=rvE=XM@^M^^P1bSvbPj4hcqr zn`!U=akvU_Fu#AxmVm~hwar8897du!i))L}57!TO=R)ZecB12MyM8zoH!1}6j$@~T z_P#mYEn7Bn1;rh1byaokTc`(!uZvkP?oysp2vPn&1;7&9ubO806Ylkmw8;d{s-&2u zw)6D=`hh>Vrt#`}WvS|jT~6#yotT7ia#v0A;!52UM$Se(4mP3& zjd)tjY~9NuO(gG+`?(DHxu$^@?i_jl$;+0Rm)1>a;L`?@Ka?$0Ya7tfP7}pKw11{U zq)m{=;HgdLTAfG2WXJaHYC=kPB)Lwyebs0&@5bf9ndD9wo`~!i+H8(2Y5M;w_22}=k6e)F!7^1opuNKC3YzfnYQN$Vo$sXfiaWa?%52SOBgO(oR2{5YT0Z@28~6Fh)$_%!3_-odY@qW zvb7#GERcFw6tXnJ4NT!kVPx+6v|jtkr?0zk+YRmU8TxHQu$bVdPhgQo3=XX&Cz3p( zOL)uzeM^mvbP^>tbTbf|Dl~kNDj=7pUX#Num!ZK|^~kYoQNiZFz6e*0I;WYQ(5eMk z%Eb_2Yw);!2;%rcjr8V+j_GLoY!=Cjul8lE6yJ=rfmZ1~diol0gVH85MPep3;kc$i zr*f#+aEG~+6N60rBe{~6|7i6kvQrS^Xdn#4C@= z(shQkwqxUdi&MjggztG{sqcR=;ehC{@u>^6CAGpoij*1_#5(&B_9}cM1wM$>8yQiw z^XStjkX-xC2dgP=n>@qG;iC1bB%foX=yU~%1+ z^hah?nLRey?HlqE=-PX1>y6*B<%Dq>YNP(t>FQX$p4|eFiX^c$rLLTJ!XW5PS86kP z8%j{wnPcZQx!qVCzQye=ElkoqY78(JE==Xa|8zf=B>kz+Am8`@FrU;cbc9mrzl%J%}zWwITs+dv(PBH9gvmI=zCHgZL9pNTaL+RTJ_03kqxD3nS( z7Njbo%AFuf9YE=5I2RHD3TrBOE>+H~*vQI>TIE(!0yN&yaD9-9yGMy(QF|mD_su{D z0xRcDC4CT_NGIY;A;DiA`HE43LM4%}&x-qi`bCb6);YssxJ&{{eHB3vp*ug2%!4e@ zW|5>>hMTw5WDPjzBA`4b1q~BcLn9$;;Vb!t3^db`0yD-=cYk5vy1_KQ8cM7vtI75h znrUH~Y>LN9?71;r1C;7|a5}fje?xv)854QUmNrwbxcaIUJfhytI?cC&Y@*i%l(U)p zkwHS%G|exOjI>EkHCovcMrvaK(h(mnPbqCbx>}}QoxZMk2F-3+Q$ibML1Jx2%ET$d z3G-|b6sSHg$_@s;10JJ)!A=a4xt|d!J6uZ5K@_je2$St%bE%Oa@-bjA*>8Ep`Y z^@$u27DYdti4~(PSO}@|CL`0DKUqU8Z5#%HRdn~@>CDo?gcdwz+}UIuE48Iokho}8 zItV4%86RWp1BI^0eHu}FD$8=wb>L&xGrlK%J=O#CyOaqj6W@HN9}b$jftc#EQTL5S z@3c*pKnRWUyDZr!>M;(UrNFQ0U6zS=rrW5PN5cC*ND>)+9I5z2+M)mU1xdC>Bt_Ry zDpb3Rh+#aHkDfhN-ks4?5@lMzB<)9kdOo6cgIqnazZNtN4N5T$s05r zZAyxNX)2GnA`zs!)c2#mBdC&Z&;6PBJJ4-iN`X}3-H@K#N}|5Mg+plpQI=0@V5D?! zhL9(R!wmE9p1d57tLIR|Twy96o0!^3Ot*D2Q}G`lPg;kBZoW9&cfY8Nr}QDkd(nw7 zb$cI*n4tTzA>ICOP=S-&p#LXL1xmutW^5@ - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - + - - - - - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - + - - - + + - - - + + - - - + + - + - + - - - + + - + - - - + + - + - - + + - - - + + - + - - - + + - + - - + + - - - + + - - - + + - - - + + - + - - - + + - + - - - + + - + - - - + + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - - + + - - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_length/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e896590e2e6ddf68fa1b1eba7a7b53f108c6e082 GIT binary patch literal 6448 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_number/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_number/why3session.xml index 577f66cdd..b36ed4325 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_number/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_number/why3session.xml @@ -3,359 +3,300 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - - - - + + - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - + - - - + + - - - + + - + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_number/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__set_option_number/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1c46ba6319271b35982db387caa6082781429821 GIT binary patch literal 5228 zcmXBVg(Dn}|HtvksgqNi?$g6gPsdK3IE=}OGi_>ysp&eMH#tmAcX!Ohbe!XB7*5BW z_}S<8e*6vZ=ZiUp;L(3~e~@eHx+#%1ggggcI0u`NbYt)`m{?9B8Q4T-Ld0E9+YO&( zgY}|jGS+muK7l(;y(vw#og!`_xynye7!mh}4Db|*+dmr?KImKd`{4vf6W7ihYG)dMyXfFT7FlPfR@d`a zyJVM%S-bPdRo4k55*a@ubeVx&#i+Zxj~w#H93K0g9F@=^8&OM!yc9$0|@YB?(2)ak>o(B+{Y+VWmw99&iD)GohZAJ_|(O1{exlD*D z?4p7Cn>vnMB57&fWR#X~kq%n$MQ8n1aV%k4D}&9{wy=--Nfn=+oORwh#PrRUPYjmd-I)fxKXTO=k`(_!i3tE3 ze36p-!mF1)Tk=f@KzHkR9VM_@8s7KE4##G~BHb>hUaql3^T+~G)l5a~v8(AS;(;hy zmWbbFT^;ZgXWT>}W;TviPj$X9waFC}lte6#)Jt#e29<|xt6eQNH%a{oEZVg~PeCyT zIf5D4bENkobgGkDTVmj z*pVZnWyhL@F%H}l+k&DvDDomX!Ta!#E(KXtWw#srx}^o&zVRHUvJOn zqrY?rVx7Zy%=x<0$8A50OP?8oi7&&%9pfe@I*(VW22p>z;R)r{Kk#jS;J*Vw>Vkxnh$` zj;_MwS}<=&H>UUI1R`4NOK#IAMyKM&njS9>UM*Iw{IPTPbNaZm{W~WjJDl9!!T=&& z(0g-(KJ$8C`v=_DMj4PTRHNkY5NN?p)2w&o;Ph9I}tl}f#ur|)0m(?MmTz;BLrVFZUsEia63CfRT)`D1|U zQidj;?gJ{=P5Izv*R^;fRi!D`NwBqn{hd@}2E}YgWXbQ(Wt!ibb^=+@7pU82Ud+`U zC=$JmS&lqrLkdwI?weh$wF|QyJO8-k)?Y}?w{`vEWKvI6BHG%Xy(K4Zo5n<){(h8X z?3!Ld(8ap*0<%LZUum7lDa-Bfl)1l8ds+-M?vDXxf!5jA9sS+af;CPe&&7o>VJ57Q z2X0&BFpCu1jpZPmPk%u!9Bb@@e44xus_?lEmM1m&k>OSArT_7zXSijD=kn-`CtVxs z2kQlU2+BKLR7LwTvz%47`lj<45kViM4n=O-JC5QeKJ&{8Pql()s@v1}c5P*-j4#J6s6N^1}c5d3h9Mq7bAVL}~P) z4qHw0@>^APk)Q2IYLl%-q4K?hTHv6IRZvo{4BK;ux@30e7L(cb)S(Ij=lTB$OUg4k zEv6LCB?&%#|3-lC2fgL<*#cdqUoVVjKqMe_+kJc!S>0MBe~NLMgjPuQSBg5M;lNHK z&23zU zWoIvgOKDZHN!vDbV6=J%OnZ6ow{M6_*wcn^})2n)#4m(a?UNfEIg^mp# z4zcgE4XxOPW?YX_OfHM3hWt~0H7| z%1!1{^Yg-&;_6r|@Mgl2tZc-O!`XGK*uA^s7^wF- zegaW-4+^^IMY!+h%===2;B6{e?W1!ldOHa%{9))?EmzgraV*8KPqYrf;$C{xLbM9K zdc*IZh43lp4nC;9Fr+ki@J5obQEuN%7xLg}7c$9CeoT7maNQg@gL9V6L`eFy{^Orx z?{vQxgf_P9J2UX{PPe)Z|DQSNEIiE&Cj(n4Z2?kyB3N=WO54L{WBduDKPFqJ7+eSK8x)f?wY7}br7xS7!N+0aBE7YGz%R%M66zQ{%UR&J%L*cJsp{?geP37Ynd7~sVfLxsJ^tr#-tp!bickhh>w+C zK#g}~v-==cnq*HtDyKJf>|rjBJjP>^JKArLj`S#lx0!|Oc8}P903VYHzRPR6a<69b zcINM*^lN>FXY50DE^mCG^2golLgZYYJ*tYy4NRzdf13?q5hlwvB;} zNAnUA2#%V|E06;NPrN@yXES|VN)_6^TzDVoJA*jwa{Y6QITS*94UY$sS^O07JU>n) z#apoI9PT7tQ0QD}CtbkFTp(M(k@K!)pp{8T~1vA^mtVaAy5<@f3 z>-h6rnqi)JnbnBeoYhI(+%Cm?SU1=wDPO`zJF+7u<1o}~!pBXP=PPZ3wG>J8tUp=J z`D%ggJsOq%fk9&Qb+uh-o}j52V_+3A22;!*kG=gkvef*Uc8^E$_5nka9$ndsrQsSdl`iC|ozw_tU@p&F-bWTgCL9{`1 z4nU<NaLTGIMO2a7%`ADt`WP2#3jBQ%l3fMi+%<4BOKhzbqcF0UCeQ-v%0Fl70XWwEZ3RE32#q3C4Q^m5k7b zLpq*brqEn#ZQ2R{8{9cfer{tU&4jTqotL`9IDZ@V_gr0e@vCE*lvMj1jUmGFSCgUP z3FoMhxIF=`kUdPHxLXXVIXi~BMF&YaJ;eE|%{vfcDQf?%< zFUTT}sY>wmzn68e@Yu8eRkqefcP4rm3WX9v9=K89(sA6(H(Nk0p!e=VP0Yl>tQ(&I zH`G|vSj^Eu0of*J%>6aqyYFZBx#yiy_qP&w&{^tEDxFungXprs>pRFkg$7T2Z@(L+7A4_AnB0P>OE>W9hBfG`EyDL7z zdDyox(D(~w+mo-W4f#W6*<5PeBBv`FRrJZ3dTE(nh^d@ry*s&`E)v(~6Ft!$0L81Z zqR;0`iMSve!P-e46>}r?cM8^^_)<$P5p#WQg8Y8rLje^1XXC=+lEK9ttyq)h?$~HC z&h%9G_~;32z?Zkg)LZxvamAoQXm6CT+>qu3oymH26q(O9^7 zL8220`;dhp5;Qcw0EsKofh2`U?ZTtlY_{SKk=<`>0q!C~h^}tSH4+)VMmu zi}|(Jt~{(gQxz`~LWo_>fHvkvJnvO1$KXJx(T%a>Y>sZx(QxT*=H=D?#3G&x~A0l&bb8-gj~Tm%b0g;Th+MN=gO$IGIkIH+Fn z7b~+9`lrB%##HGu4E#qahpQFdf?sHj}sG%+8{kix8;^4?TX$4apVr6I`$Sg3 z^}}?*Q{i+m*+z!8+eMRb)3b^}0o)q_?*dDJXI~2oVLYNN3DE~{kNw(AQDMx0IL1H! z%1}G6tP1|1M~Pr5vDTK+b2_G(n_GiY1A3 zo|>6%1H1XJ&@sXpz0_|DdPR0BBsetDnV-S#ZDF-A4IqHC7ymi=x5@|&C9HT~`$@g# zriO|X5v`Ln?zcHcqebH)z*c-^J;+E9U2%$YWHD*(VI60t$UFY$CLBUMxWLzY2kC4K^73;M-Q$FPZP5*vkPDFvuO%s$?m7*#x-lDYEfgg0V&1*y|DH^2oy!H;TYn^#*;tF>KSCIFdFE>btc~uYv(iGAr}@7 z*)Vj2W`%}~j8fw{+Jx~Eaa#K2rv^tF&t)o*3@)Ri+u>1d1UAyDEYLVM%E6N?(K0hq zl?FvI7*VRSJ3NmujHePSZakBXP;PKqNfAWh%uSAG{3q{rhl)Jfd^?`_d(~AsB#x*! zH_t9SLw+QOT8eP?DQnsMz=fhXmk3Z{m8UFvq7VNGe)tN>c%jzEgh)a};p$ER3pKfF z7YmD;yi6gSweb@6>?_`izOMtPFZR7!qAF393?Lk)-wsJKO4BoWRDo5){Ab{EPk)#? zu2-H}6tygPi6uj$U$vORNj5l8UVE6fOaZibG%Xla8YDd4{RxjBN6d}xu_v%u$Y#K{ zCLK33(Eyj&Vo2px2$J1T|7a}MxVAFI5SQ6NgfS^P)OgFPQsPH+AG?#u^6Z?<+Gy0q2e&d2i4{PQ0mUQrO zKn#@ngDueajg4}5a$G~AewYC(rF?Jxd84u76c?LH5WOu4jgu-rjV{+%k45$SlYv8O zM}H6DfN=uAz>62@Z3kbp=Gi)A!i~Exi60I zAuJ_-Ec|F#ulWy7kQtcOrDQrS%u?N0`7!rnaOf0;pW+$tb%Y+kT1(!KMuG~T4rqmE z#!K>UeyR?1J{^Y_sG^MQe$5au4G^@aaDf=GiKXaGCTfb9=6q96OhS?0Na5u2;}uCe z1D6RRgykn=zPIV}5N-7(^D7k<4QpyJJqAz!gqqYjl*YToBRKQ!`N4(c2Vmg;G(}hj zg6w3*%P3aq*l3g1`{6(~>lD36Mm*tH>fys_$_1QFc+>C??CwwjEiu<_ZG8{%l?!M02{QNsfb$4c@X4P3?8X#`c?YoqOr$8+uo9*cL zCk!-a4kJZSsuqnTmexUthbe2SP7Vq*)jn?8HQyT5ONmeXsuzC$sPl<4@sXMhZEr*W zukW(ZJQhX5buccDBrCN!6Q50#_JC1?^Sah>630pm4hsPjgj;Pc#X(Fx0K5nIg~F-| zOFTfu4i_bg+hMsc*qDLqg@+(E2~T&K>%LohVB - - + - - - - + + + + - + - - - - - - - - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - - + + - - - + + - - + + - - - + + - + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - + - - + + - - - + + - - + + - - - + + - + - - + + - - - + + - - + + - - - + + - + - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__structural_valid_message/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__structural_valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..86208c350fcb4b80214aa6675d3ef591adc812e0 GIT binary patch literal 2950 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 w>~%Eh4CQ*p5=TLK@1yr*i8Wqhq@<=Kjf| - - + - - - - + + + + - + - + - + - - + + - - - - - - - - - - + + - + - - + + - - - + + - - + + - - - + + - - + + - - - + + - + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - + - - - + + - - - + + - - + + - - - + + - + - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__successor/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__successor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..34bec6b761f910c6afcca0752cee33748883739c GIT binary patch literal 2248 zcmV;(2sig1iwFP!00000|LvT~Zd*GNhWFU6cpJL)>vfQaY9r53)q@kTrb#i#+!3BBb57i%>4}$B_SChcBzNT&=%`%_^*S z_37}R%?*V=!{wH4AJ#7~w1wKyi;XAxa=rU|x&0ijY1(~v!PWj>_#^DDmK(Yb8%oP% z$YFW^byF_CEtjk7uWEU9y<1(amk-~|iZ1gq-E6j3o8|I)Lzxn7`3HXA_WE+QyKS)z zpJ?}{j?>k8N8fhKyS}$i`hx{5M3NtP)L+BpDtG8V$-UYBJx9anYMAYAbCY&An{c`8 zW+QzYUo$k3>KZ%h&Mws#M{b>I_p!wYx4W>Thq2|=Hf@@FZXp+#ph-p!8?N~83#nLN z*+M4gC*=P#C)C14*hHg7rh>O;r&!u8&U}d=A@XyeWk?52C7{I(wU`GhNd<(|UJr?7NrO zH(w%c9(e#Rej^z69X$=V_CAGo>eSy`T7SmLldwstsl@HoCxkN-X~RUcv^TXP{- zi51E2!}BREn4mXa79%Frd2@dQ>RcuOo}?(P>;TVdCl@$In#Gvp3-;m#Zc${_BXoI;twCYpMf(c$TO-cD;Cy6@1v z=Z&?W+*o^uzCUlVoq7#$OhJ9#Y&$|NdzP|u(F5;(+fAJ}&dwWW=SA}vvi?WTzNGc1 z-RDOzaLuXSYkO@pU(Oq3XH{`Ds-nTN4?VftJTJdT)w6ZUEqsS{slP62nOJ9G^c-Ax z^1`U&c5wUs;0{EB!ypN}AZdh@8iSu(CZBpC4h9A<)BKo3$6&{U(& zGf!GnjXTslVo}xaToc=$Yj%Ls!Ok`N&}oRQ8g;aJ(z;Gl>%1ra+(a!Zh)%bd-TvhXvyZUwM}j0?{QDE;|AZNg-!$sOI~-A~jrt{tlP=a~ zR;%^eXKb#8d)Nf&0lRK;pG$oO!S0;nx_J`6AU?#c5;>mGWy zsYNinJ2W=(;j>(xCR2PeNmx|~l$5fN3(i=hO3osX_y_zY{ggZy5;=w1h9V$Ea$uv6 zHhUj4w-OUlatJ9VXNxQrip!W31km6Wzs8MlB1$A77M}qz=?H5g0kH!eFLWV3bD{f>bH_Dw&Z{=ffLy)l~nD?Pd*7PQ6iZV*^<)RC?s3IC}*Mw)#4x~ ztAz!V90e4lF&m4;IEh(e@hkB9T{`su2LE;?adv3Qt?+ zOeS0JT&Xj%(G^pz0CLKLy;2A@8gCt?;Q5L=MaxkU3t(-fCY>OfTwF>e6cwdbU|cjR z$w3@P*>ZT0BTJC7x9D|L zMb=ho0**||TE}EV04r_e7C{S)))M7vFVvjT9wH@P&=_q+nqsx$)JVlZFlcJzV6}bb zaIs2oI7?+}+H+JI$kKX_#Zp_@$&s(FS58_oNyWmUQFv@QX`Xi6TY|$r@D+^b5JN5{#z3LA;%v&)oJY+{kCAElYHH~do(Ac!ZDC5IzhkFy8)zqb3)+sSK59AS)GV@2er*fS&TK1@P)BgZdceegUj{pEA=S!jh literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__sufficient_buffer_length/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__sufficient_buffer_length/why3session.xml index 512e06f2d..a5354a0e8 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__sufficient_buffer_length/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__sufficient_buffer_length/why3session.xml @@ -2,53 +2,39 @@ - - + + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__sufficient_buffer_length/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c8466a209f24f6c1163db6cae9dda6a0653845fb GIT binary patch literal 735 zcmV<50wDb#iwFP!00000|Ls>jZ`&{s-SsOvHz>d_k>b!H9fAhPSZF1Vs4{09$2mt?%{M=yj^Avc*bO(d6n-H*{Lwr=OqUL|*TC+Gljzman(_;sI zvsyjEXZQjs2T8kO3Ozbwz=L^u_n~<(CU*D2th;gZ%=`@z8*e;z*m`V}$ysc0o^G(c z&6_?AW=BKU#I#*9ydjF)^!aF*MRyc#F}=!XK8Y!lWp-|dJ%_BOPB`YO%p7rLCU{E^ zJ0S6A2mAxl&uNR7d%XiAP7@5@15-|5_-TS+dtlfEh8-Kso-n9dE(k*j7o!Gj(|Hrp z28J}l^l@5r z>5t4I)jw7EUipvCYkf5qYBd$=%PPG%pgNyGz7U;V6&`t~XszD$XuU(ewRCjePku!4 zYd0&4{i0eOLe8R?9-kJ+U3EF}@-5!(*bzr$$K}&FoCZ0?-|sDBxzclEeWjTH?yU4Q zTkF^p7Mm+Q&F(tkS?aI!H17)&o~0WDeUB?c;Uy12O6nCu&_Z#`y!6&Ft~p3;Khf{1 zu+lq06k1^gFsG>!RN0_dSxL|Vvk@tT7LKbR!RkP{k|Qe};nXw8 R{*<10`UUlnK+tRx001t`R@DFi literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__take_buffer/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__take_buffer/why3session.xml index 8ca6c5d4f..89d865a39 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__take_buffer/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__take_buffer/why3session.xml @@ -3,134 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__take_buffer/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..213c7e6aa1497ae63ff0151538654966ef753630 GIT binary patch literal 1404 zcmV-?1%vt@iwFP!00000|Lt7MZtFG>-Rmp5>y|ToFS5wSXn>&I6xs@W_8N6;*H(g? zzwb!4bDieV#O6g}ha1yLhDXDhIY%RkNPp!nTH*d&-KIb28y~-2xp+T!H`CBf=XY*3 zb@SeJ-6}1Az4^Q4t!U9r+-#k;pTm@w=E1{6XrW~r+b7d5TGhg27-h>QlP29P`}=PF z%`H>Y)34n(x9wl5>$UqUbu+i_$*Y}<`(PWG@zdW{E z_4muP?mBjPMLv$#v~2MzUZS;sS4 zZ)1H7p@5I_r3$PJ$54SRAXOVAakN-Xsy0_`F0ai^UrARcf<9d7n&kR2&7_PKp7e14PY^^GpDXLW;sdWU$|9b)q` zvoiU_nS6dkt~~yrPVaL!3_JG8QYuq*t9Br@19^9q7wa1;q0frY=f~$SLFdo>K%q+W zxJpfxnkqFP);awC;^}Eh1TY7t#2$2Uhjv#u^9EiFBY>d{quAi;lEXX zc6#wO9v`b<6cCK67o%Pj?d9Ee6lWzWRa2^_e5od+kSJ`b+--&`2~`rRBz$#A*!2m; zpj4HWDl1i1K1x=~b_%7Cswh-ZsG@MPqEMnqsNF#of+_?jE(8VIg4z#M8K^Sw@iMS` zCHd-cl+Ejdal`OsL)FTCyR&B(Pv>}&;P9>HA*>mQ=^gXwC zQvj-%V~>MX0;_b)hJgxOlwR>Tj=+1Tfgb(m)>qC0UHJ|zMQ|Cl5MY!ES{X%F>}^KY*=)1`Yng&% z42#xqkr+1!!tyv=uOSlx3mJtFsJ!5rbM!f3Fe1@(GUAO*9(43ZYeuG01t~xnmcdH8 zpkQPq8iI9_8{ru4r!}gCWCZMOP+mA;bWnhiNg*R@iGf2> zlna_L1PY)b?lYnl>$GI6Lp z;BU0zQXw)Y4M@t2#*mqoK2m@k1PbwBB^rZK3z`$N2!zB4g`qGGz%mJZ$PUQH8tG`R zwUllMoM-Ea41#`43OE;o6_rDvvZP=pX)tRWA!X*YrZtCXvmVL;bmKhJIwH@CvO-Mo zUOD6p28v~rL$$+@>#PLTfQBR?hG0xIoFJ)Az*{?7*+wa*P^L(n2{fGoN%jUgh-^d7 zgZIdq5cE){84Qn-iA>zmF)>Z|a3j&>!3r8GGgOM};3>Y@g7Z0gg$YRsLQo^?vH2G# Kpz0~pS^xkhfT$+` literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid/why3session.xml index e53c730b7..7a2db601a 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid/why3session.xml @@ -2,42 +2,38 @@ - + - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d29e93ded5acb73a391e417b8a648852a6a9671 GIT binary patch literal 599 zcmV-d0;v5TiwFP!00000|LvGfYuqpphVT9rz4xMTSNS_g4OBD{j_>uB(Baxv9#hq0eRKWP(_(A@z6xA3GLVeL&gx zk%oVA@^ipbfkJyfn5S6X9x3jQonHXntl=_8pVwC~W>}Z`3w#~71n1CCv>VR1XSDp* z)N|s7E{AgCr|&RO120NN%Hw_Uj##P}fl`SGL=or3qBjC^$n3T|nAy6gj|k?-@U&Q=F0{xj?zFKBsIYak+f2wl8!ZXaS7 zXGbS@;dSBlG`ucuoFhM_Z^ed)p - + - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_context/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..037337211716d16da9bc98e3ae815de642d47bfd GIT binary patch literal 8511 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_message/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_message/why3session.xml index ef0605e2b..8069cc09f 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_message/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_message/why3session.xml @@ -3,176 +3,149 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - - - - - - - - + - + - + - + - - + + - - - + + - + - - + + - - - + + - + - - + + - - - + + - - + + - - - + + - - + + - - - + + - + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - + - - + + - - - + + - - + + - - - + + - + - - + + - - - + + - - + + - - - + + - + - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_message/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cd7b841e805eedb13cf8353020bec1b9da903047 GIT binary patch literal 2941 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_next/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_next/why3session.xml index 3810f969b..661c32772 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_next/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_next/why3session.xml @@ -2,27 +2,19 @@ - + - + - + - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_next/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..66ce6623e5ca50255a82c650edb6345cf79a6d18 GIT binary patch literal 317 zcmV-D0mA+tiwFP!00000|J9PeZo?oD#&{Mkk-n5I@mVhI<^*Sq(mrCPgv!VXeHjI^e#^x6H0? z{a8ZplkGeB-i;-vK@DN%!;fYF(L0+qMZ^zEe*&w%OEe|8u;VWtZ+OF0@qC^04t!Ot z_Pjl!F=8<$rZA{91axpWkHq%>9?+ulu79Vz__DmkKX)g~YErV&Ma!h-Er~+Ty<{a6 z<4lst%@cpkGr^4H1+QwB@5DS*!P{D)rm|*4TvxM*WzsNSbH;VK6SG8XS+%vq - + - + - - - - - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_value/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ac8cc006c3e7572bcb20ae7223fed815ef69e209 GIT binary patch literal 501 zcmVjkJ~T|-SsQ_6C~<;=+NcRES-v51&X421{}w*ouK#c zE5p4GMY8m+Y1(FyWa~-fBl!dgv0zGRYp2?OO{p7CCLPA5I}GVZUpwwgDm?N~cv#X2 z`y;1Bhq2@G@-n+;% zdiv9fzNh?uN_p3H%ZGpK9C<4~mo6SxF4?!DbKw?$Wj(x_&81i4ZOcqh&R!QujE)Up z1!)yi&7@f>9pyXqF^X7S02?VvodIJE0M^9z!xry-s0}2AAyth>jZ&G&AuvK!%0k7e zv1HvqARJ*Z;FN;k0!CtOL4z*V=Rm-rfwb^hE8A8mNd;ZoGbl8QbFd67Y4ynn(q2l( z3eicMU8yw~X|glH8G~{KS&_*U7ji5m6GoE@YgCE?=fzpdh{h2^zn`c@O{qLwEQh literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify/why3session.xml index 4e87a1c75..d8f24dfff 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify/why3session.xml @@ -3,665 +3,414 @@ "http://why3.lri.fr/why3session.dtd"> - - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - - + - - + + - - + + - - + + - - - - - - - + + - + - - - - - - - - - + + - - + + - - - - - - - + + - + - - + + - - - - - - - - - - - - - + - - - - - + - - - - - + + - - + + - - + + - - + + - + - - - + + - - - - - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - + + - - + + - - + + - - - - - - - - - - + + - + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + + - - + + - - - + + - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + + - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5fb2deeecbda32b22e3892a58eea544979376612 GIT binary patch literal 7432 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 G2m%1QWri65 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify_message/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify_message/why3session.xml index 70c584336..ebe8b5905 100644 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify_message/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify_message/why3session.xml @@ -2,86 +2,62 @@ - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify_message/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___ada___rflx__ipv4_option__option__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7ba7493e9822b51067aa598a18d08ce13f496a00 GIT binary patch literal 1047 zcmV+y1nB!8iwFP!00000|LvMRbK^z~hI{^sbZHm+y+sN&nz%`oVavgO&2b`2I*Puz z`}bKY7Eiu}@CJcXvtT=DB%Jq9IkHEs^+pRdEAOkax{hA?Vgv-P@4_xt`^bNGb& zRP}d%l<@p+w`tPnIjJkNH_i58vuXCbww&pXlYcJGKjGog=HJ0CeejBX(BHLv`Qd6P zk%hj@kA2@ACp`2Ww%ZgRM_!oD)%N=w-w&&qbvRzDo9_ZvGzD}dU9g(l0_W}N=vV08~-;aNVj@S&4G5ar+8#!+dZZRN44QoeA!dKnL!LQ`mK!Dm-}sAs1!~V z6=w|%t>@zag0a;ESVhgp&658F@7T95rUMEYyiXNStPo~`VoC=j z3j~_jo>9WtT4HjwF*fP?gRHTq@Ng#o=K!+cVZpUm%O$}E()F(t@$0bY&~%XY`Y zh>ypJ_kf5uB^=^+76^4i{mKHRY$o4WIPH2rubEZ9>WSY({^1EcNj-1)2>w-{z*m(; z$qeH>+iav$9J6-WVN6;X=2-d#eg|2hVOcW=!lCrqJ8QI!+=25}aw`WbR)G$|8ZI?B z6Qm11M4faD$ru+b#A3v&1mKyH+%RUWbQ&-R15)}dqUMelBT+HNl;J8vuue!@PA0>X zv;uiHXhSiQRp17}W=Kh*lt~mD3tk7IkZU8c7^%vXYjZwZ$4gKKWdzhtN~Q%Wi=c~< zu7<0TOq%FoMw=2ajmAb_zGop!E=K0(jD%o5YHJfqUYjA>#2n8IITxD8AtqZ%AB|%{ zs?4(TJah0843o?yZ~_NUuELVPk{V&74#>-C4?YQLT#5z)n4vDLa%GreT5IrLGS8A# z&Z1EsrAs>d!3wI#IbeXOftAlc3BgNM&~i~~994vJ Rxr3Fc{szr`dO0FD006yI{%rsN literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_actual/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_actual/why3session.xml deleted file mode 100644 index 1db324852..000000000 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_actual/why3session.xml +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_base/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_base/why3session.xml deleted file mode 100644 index 2c4bfc90e..000000000 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_base/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__valid/why3session.xml b/examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__valid/why3session.xml deleted file mode 100644 index 949f22a4d..000000000 --- a/examples/apps/ping/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__valid/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__digit/why3session.xml b/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__digit/why3session.xml deleted file mode 100644 index bf360e6ae..000000000 --- a/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__digit/why3session.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__lemma_u64_le16/why3session.xml b/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__lemma_u64_le16/why3session.xml index 302059201..167cd52b6 100644 --- a/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__lemma_u64_le16/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__lemma_u64_le16/why3session.xml @@ -2,23 +2,21 @@ - + + - + - + - - - - - - + + + diff --git a/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__lemma_u64_le16/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__lemma_u64_le16/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d4f5127e1aceedf8edeb7cac7a030fc46cff0e6d GIT binary patch literal 173 zcmV;e08;-SiwFP!00000|CNk84#F@H1$&=@BiP=J9hWo+divd;)|Tzl?;MP@xl5^T1%d6 - - + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - - + + - - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + diff --git a/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__value_base/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__value_base/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..160f19ae98a5abf5f3e839ffdcb981fe3f62193f GIT binary patch literal 4847 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 - - + + - - - - + + + + - - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__value_base__base_val__value/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___basalt__strings_generic__value_base__base_val__value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..41d24f2e54828d56543179e20bed91667aa0fa88 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|LvGfYui8&hVS|nz4cU>{g8GSnt~1qHH7q1bX{h5N2#bS z8%YV|-*+TCuA9Wr;HITU7qOn5oq1+>N5VTSFg>)mYNBu2d+Zu)2aNc&yCb~9Wl!7X z_{eCr86JH94L6hx3;cM2F&Zd&5sMt-m#syBoJ`K_O}UvY+G2b~I&50sVS7vXfn#X9 zz>5l|t?dfi6q>_RyA)4sQ~s;PP5rlttr;s{JSKfk%t(yz(2_yqZ|cY4sYxU7mnu4$w?h9HJH1yXoK0 zLV0u+j;i?-Hg~}0DtpLguXpd#{iKygC+*m%T$VTW)!Wa?FpF;%-@g*y{A!)mea7nk z^jO57QaMNdwOJKJm?b_-{LCd@zWs-y9Lo7`!#w!sG59456ObE zVvCq%0i)A-02LG{LMhNlDQcT*jFe1xCq4_v5}9CSG&X9<&NjwESso5iNT)+o>;;*M zIcwD+LXzY-6q&pT5~9XbfUxW&v*d)7Mgu`Wqk~IA1nx^@mShrz#9^YdFf!T9IE}Sb fDio}~0;Etiw@%r>0l5-lCzt&I<(alGPZR(Ey2V^k literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual/why3session.xml index 4b7762eda..ea8c3b6fe 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual/why3session.xml @@ -2,118 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..194b7d0b234a9032432c44a541212dc267778051 GIT binary patch literal 211 zcmV;^04)C>iwFP!00000|ILpvY6CG4MSGpXN03IN9jQp+CU~1v>6ei-!VC6dY{lT) zXTvs=&hFfZ_uvia_mS&k;qzRkdAaj-=B4wUPt(NT*B{|eKHX%)zsJb=(jU|9$QLnf z{Nj%-E^g2gw4fHRL|6YJ(BhQn>!{d{8_rez{l#T(zGmO|{l!J5A_@5%N)*?uqyW{5 zBqW=Q9SC>s;7uWptpWvzReVj*uz+O2&?xwr*2q2=<&`)iCm^VKShI}Qg-CHgFXYw; N%r7;qefMz!007n3ZQB3< literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__10/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__10/why3session.xml deleted file mode 100644 index b254de2b6..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__10/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__11/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__11/why3session.xml deleted file mode 100644 index 1f9ffd610..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__11/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__12/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__12/why3session.xml index fda6dcb8b..8ac9fa964 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__12/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__12/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__12/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__12/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..207849d1c2bf87dbe3cd2c08bac03ed3b6a7de42 GIT binary patch literal 193 zcmV;y06za8iwFP!00000|CNnBZvrt8M0@`Vy0o_U{8gl&LC~kS=Dh2~5?JUkNc{U8 ziXu@$vzn3Kyd4Mdz2nqMZvBR(p%2_}%o$(HRj|YHB7gC5l$_4vo-aQ*i$d#pLH`zv zkM=)1;PVk0KUv=V@v?V2w&P8=nyRHZo9IK*M3JgrOJI%@YITk`W>3oLYNq0etkxtD vpD@qCdp0Q%3$2iT4dNJ`M}VDSf|Do#M#@x*FxgVl3R(3FhA85sg#iEnQSDx4 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__13/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__13/why3session.xml index cc7f399e5..b64475df1 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__13/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__13/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__13/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__13/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..61b7ad6b6e1735e4a7b1cbf9860ae6640a63f419 GIT binary patch literal 194 zcmV;z06qU7iwFP!00000|CNnBZvrt8M0@`Vy0kvq=Z_)<4T3(sHQrq(mcT-XLE_)% zP!x$0n$<}2=IuCu?;WQ`x%C^ChCXn^F=u=&SHTX)i~PmMQF1zud%pbOEDEjX1^rtv zKHC56fX_#0{A79a$IIUB*p4^dDzf#dOhG4hB_ - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5aee13906106c375644c4605f12438095556f39a GIT binary patch literal 200 zcmV;(05|_1iwFP!00000|FzDsZUQk3#_>H*!6VpCa!!U0ELCsm#D4NQjyMTU2vQ{8 zzMxw&mZ6LF8~&2NHcEM{a$a;=*1KF6S)1JDG);22{+N8q>1G>W$JzPP9@Fh87jt#| zmX9sg*g16eovAZ+hH>Lky3cR!`qwS{wr_9laX|%=if5*3-hw5wnlWS^QXs`0etDOu zXwC>J5^*M0DiN|rD^PiWR|J2HW~Iz?jBy} literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__3/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__3/why3session.xml index 4d14f742f..320ebf2b2 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__3/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__3/why3session.xml @@ -2,55 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__3/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..65523a70874c48fde511acb32befd40b77e6d541 GIT binary patch literal 185 zcmV;q07m~GiwFP!00000|CNm~4udcd1be?CPw?43u!|HlQD{=7M`zAfkN_cYkobMD zXedLonqoAYYT|9Ap=+CNTxsrTOtezpH1wXofgaQ^;lMm13{%>gTiUF-{IH6UQA6)LGLJ6*Ww5DiJtPPaFBYT-Tl!h`Y!0?Tr@B{Q;j n)MoO#B>$5FSmPx!hrBUzw1qSVG?KQ4^PLhuhQctpjR61vL#I<{ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__4/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__4/why3session.xml index 617ea92d9..54a43ca59 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__4/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__4/why3session.xml @@ -2,69 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__4/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..03e3adbced19b9d6b9cad20896de5af12fffdb03 GIT binary patch literal 193 zcmV;y06za8iwFP!00000|E-O&3c@fHMfZG#pOCyH=4Ehj5xY3Kmz(4T3tB{@;NM&6 z(owu$!OEDAsN|I*yHZTqpSB0Hw&gl)S7A)#ff3!R5Y2CgYl$gl1RM)@??f;y#W9KRcBuq literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__5/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__5/why3session.xml index 5fbe3eded..da55c1b64 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__5/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__5/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__5/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__5/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..508f13f3d4590513ef3af635577f00c3ffa0ec49 GIT binary patch literal 194 zcmV;z06qU7iwFP!00000|CNogZUQk7M0=-693=i8 zP!uU8G@~irycs*lwd2@0w|>Fe&<8F!gg_#)NO94r=TIFBe5!@#a)+$B0cCT3)`bB806u+Q4*&oF literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__6/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__6/why3session.xml deleted file mode 100644 index cdfd4bc85..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__6/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__7/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__7/why3session.xml deleted file mode 100644 index 20ae61549..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__7/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__8/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__8/why3session.xml deleted file mode 100644 index f867f9705..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__8/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__9/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__9/why3session.xml deleted file mode 100644 index 1ffe182aa..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_actual__9/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base/why3session.xml deleted file mode 100644 index 9571e9110..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base/why3session.xml +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__2/why3session.xml deleted file mode 100644 index 27d588ca1..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__2/why3session.xml +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__3/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__3/why3session.xml deleted file mode 100644 index e598a1677..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__3/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__4/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__4/why3session.xml deleted file mode 100644 index bcd2516ba..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__to_base__4/why3session.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_checksum/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_checksum/why3session.xml deleted file mode 100644 index d234fe61c..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_checksum/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_destination_unreachable/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_destination_unreachable/why3session.xml deleted file mode 100644 index a8f603e77..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_destination_unreachable/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_redirect/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_redirect/why3session.xml deleted file mode 100644 index 87a7a16d5..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_redirect/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_time_exceeded/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_time_exceeded/why3session.xml deleted file mode 100644 index 4ba8def85..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_time_exceeded/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_zero/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_zero/why3session.xml deleted file mode 100644 index efdc316d4..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_zero/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_gateway_internet_address/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_gateway_internet_address/why3session.xml deleted file mode 100644 index 9d1b0fa6e..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_gateway_internet_address/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_identifier/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_identifier/why3session.xml deleted file mode 100644 index 5c0882e16..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_identifier/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_pointer/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_pointer/why3session.xml deleted file mode 100644 index 5fcb2b04c..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_pointer/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_sequence_number/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_sequence_number/why3session.xml deleted file mode 100644 index c3bb2e402..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_sequence_number/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_tag/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_tag/why3session.xml deleted file mode 100644 index a337c5b1e..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_tag/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_timestamp/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_timestamp/why3session.xml deleted file mode 100644 index d88525438..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_timestamp/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_24/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_24/why3session.xml deleted file mode 100644 index 7b2f162ec..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_24/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_32/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_32/why3session.xml deleted file mode 100644 index 12decbe13..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_32/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid/why3session.xml deleted file mode 100644 index 1f3ae1082..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__2/why3session.xml deleted file mode 100644 index d2335ec01..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__2/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__3/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__3/why3session.xml deleted file mode 100644 index 579048b28..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__3/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__4/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__4/why3session.xml deleted file mode 100644 index c5c253984..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__icmp__valid__4/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual/why3session.xml index 123563f2c..17b4564d9 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8cd7c1864235ea86d088a04ddda1b33912a1c83e GIT binary patch literal 192 zcmV;x06+g9iwFP!00000|CNogZUQk7M07V7vkB7b6u^mskL#B0wiHT;Sd{`yonmAX-q!u;5(7S}mSILvIvynx2 u5hZ~ou{Cp!v_SDONTjO7yu1h!Gi_8&#JnnRT>P*=9DV?sC=~I90RRB>gj_NJ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__10/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__10/why3session.xml deleted file mode 100644 index 552ac3980..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__10/why3session.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__11/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__11/why3session.xml deleted file mode 100644 index 3d39e0a40..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__11/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__12/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__12/why3session.xml deleted file mode 100644 index 31c9637db..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__12/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__2/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__2/why3session.xml index e110c6758..7c900e83e 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__2/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__2/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1062722682d2eb7fe23564fe7abdc28f9a2372b4 GIT binary patch literal 193 zcmV;y06za8iwFP!00000|CNogZUQk7M0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__4/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__4/why3session.xml deleted file mode 100644 index 3ce92e7c0..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__4/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__5/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__5/why3session.xml deleted file mode 100644 index 84115754c..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__5/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__6/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__6/why3session.xml deleted file mode 100644 index 7dfb24fae..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__6/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__7/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__7/why3session.xml deleted file mode 100644 index 788aaba16..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__7/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__8/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__8/why3session.xml deleted file mode 100644 index 94433db1f..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_actual__8/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_base__10/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_base__10/why3session.xml index bca6355ab..c78542d98 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_base__10/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_base__10/why3session.xml @@ -2,44 +2,22 @@ - - + + - - - - - - - - - - - - - - - - + + + + + - + - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_base__10/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_base__10/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1d713ace32b0638654c892170e2ba3d78dcef4eb GIT binary patch literal 267 zcmV+m0rdVKiwFP!00000|HV89FP5wW9=CQ R+{KOL)EAorfz2ZW000BZf42Yt literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_base__9/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_base__9/why3session.xml deleted file mode 100644 index e81d11486..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__to_base__9/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_address/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_address/why3session.xml deleted file mode 100644 index 46f732eb4..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_address/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_dcsp/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_dcsp/why3session.xml deleted file mode 100644 index 81fc4d8b3..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_dcsp/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ecn/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ecn/why3session.xml deleted file mode 100644 index 98ca5fa57..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ecn/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_fragment_offset/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_fragment_offset/why3session.xml deleted file mode 100644 index 6255ee337..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_fragment_offset/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_header_checksum/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_header_checksum/why3session.xml deleted file mode 100644 index 0b78ce16e..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_header_checksum/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_identification/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_identification/why3session.xml deleted file mode 100644 index 5c003a2b9..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_identification/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ihl/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ihl/why3session.xml deleted file mode 100644 index bec9a79e9..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ihl/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_protocol/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_protocol/why3session.xml deleted file mode 100644 index b609112a9..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_protocol/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_total_length/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_total_length/why3session.xml deleted file mode 100644 index 9e0fca5a8..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_total_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ttl/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ttl/why3session.xml deleted file mode 100644 index d55b93431..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ttl/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_version/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_version/why3session.xml deleted file mode 100644 index e8fd93bdc..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_version/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual/why3session.xml index f704b8b27..ef167a701 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual/why3session.xml @@ -2,55 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c6db775c4e9976dfa1a6da223238ea5c12aa581a GIT binary patch literal 187 zcmV;s07U;EiwFP!00000|CNm~4#F@H1be@NC)l|-XBQMSh%{96(dK*>ksv}~kn($i z(xfEKYKqZpX_2N8_d&X0{NOoYEcoEob+|m=iX(0>UGO(X?~gKduPYvEa(l*pk)>L( zZ5JHUs - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual__3/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual__3/why3session.xml index 4ddff7022..e434d6833 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual__3/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual__3/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual__3/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_actual__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1ff8848d42624a588e047c188c22073416551c89 GIT binary patch literal 192 zcmV;x06+g9iwFP!00000|CNoqY6CG4MSFdPyR`D`t{z1SHzDrRi#w0C1-3A2#o)is znh;27H^b#}?wP)a-W$$UN^LhR6|LijQz`gbz6~EZUF|nMjp+C{Tv)e%NzordDdCe uWHXPHLx`DFcv>O<9JKlqO@PSAYb!JJL{ZZ)FeOv05V;?k2k|k50RR9T{#vpC literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_base/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_base/why3session.xml deleted file mode 100644 index 410a00729..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__to_base/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_class/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_class/why3session.xml deleted file mode 100644 index cc53c04cc..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_class/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_length/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_length/why3session.xml deleted file mode 100644 index 0ce23cf07..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_number/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_number/why3session.xml deleted file mode 100644 index 35ca1a2e8..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__unreachable_ipv4_option_option_number/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__valid/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__valid/why3session.xml deleted file mode 100644 index 448176ece..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__ipv4_option__valid/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__left_shift/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__left_shift/why3session.xml index 61bf59da2..ceaa21457 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__left_shift/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__left_shift/why3session.xml @@ -2,177 +2,144 @@ - - + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - + + - - + + - - - + + - - + + - - + + - + - - + + - - + + + - + - - + + - - + + - + - - + + - + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__left_shift/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__left_shift/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..becfbc83383d7237e4cc18ad127899814d8ab36e GIT binary patch literal 2251 zcmV;+2sHN}iwFP!00000|LtANZX>r6-S<~ypAD<{2JD6IBDez#CYuXwjpAz}z~dQs zZw3tfNBo5T96;STdY zzw;X0T+?(P@~1EBKd!$1Mql#4gMTpGM~2JQwgtLLVKr~<;xfWgJTNTRQ0SF67QJ5V&*JVZ8ilClr{wOG z(OS+=sND$*5@vS2vxC98zuDQfnVap@wVs>Z)QWU7v)`GWnpr{Y+n$?Y3R=v~Q?&A) zd5RR}+&skzes11}IUhEd{kZ4mDN2~93ieUn8_5*qyhogZoF@dQ8139Tg*eX#%BFP+ z@E#&`(`uU5DY|)4&^4{TWtF07ono8kQex98n^x7d>Za8+t+r`(O{;HN)f5}ft8Dseevd`dCb74yK7p1{?F>;)^j}O zXu&CEtWv^CE4gO@yewxvlG~@GSy;F5KS~%q|IZwf_C{6=yczjwAkMn{qfH z=djN?oJh{sFOkFZPGJp8j#I4B>HVzz_tTX0@u+X}S5Dp4)e~d59GNgSwS>uetQL&b zg1=F%A6ja?FSUN5Qp16@#=lYP=S#iBUg`6w^d#Xgr}PfJ-#(~OAAw$xLxYQp*PtQK;o3`mp`eZ32?=QRd*^_oiOR2#H3rrN7-H4 zit>j!T^#8BXsAoq9OnBCHf^WWsZk1MYo72@i=MAes*9z+kIqi6POeU_7rtXbd$qa3 z5=4tAz7n%VtApGh^9sas#PVGSx(>Xq4&Y1&@XhN$y}tt7M`qW8t_58S&O{4F0g(5W zSZZJ`9srDD(Iom|7c{7j&v6H!%Tt%9E>8!_lbXp>dxtBZ-E1qWx!r6fVkT}6RC`lV z4P7Vxd+)z#}?QZINp`GRBAue#;CQ@T_7j40hFB=ZT$_z0jM zJ_2+-=z7rg;H>mu{(eAv1IdVC)1;CfRiugH!!Bsx*gVTU-F2($R@bc;(5-PMU?032 z(3PMoL05wFP=ZJMEk7LXP~ZAwt8cjc=i68Atz5TpwOPw{PcCI2p*s8voICY3%pc3T zLp~Gj_q1!@qTU|u*5|{Uey@6!d({b&X1kAh{s_=1)G5^WD<3@JtGL>H1IknAs*jD^ zDdE#w7>?;V_PkU9x-7ijd=%#2F!NGhG4tbeVY^wOlegc}PlLPXL)|Cm#baFe*2X)% zJH5}3-Y4*Bf`70?%i%vcS3kP<%DP$|jav1k?N@u0kTb!OZNb{k*E@kbf%|mhxTYK5 z!QPjcZVdBAx)^jZ=wfhYVz8M5^!guh{ms7oZ3e%|C(q2F+auv|P@5Cep1hXJ_MX+j z+rj%|!8>84!?wfr?Z9@_+`q)tE-a{1$d2ER-y^~A>R4rhmLvpw z7WNW@W>eB=ono^zE~%)zPY{Ggg;bqz$d;5Bln7Nq5y{0&IZ=)-XG0>?{sxbRk&l?I z3DRjn;B`*Y5?37)Rwp&2QluzOg;=C^Kp>Lw=&~T=4cN#|df+kJ7@`f?i{v!0D@wGG ztg!{OV<$6!EHR=Ze$iHB3&o)HJ_@B#X)gG$y}5KbzY`6i~b+KlPD zS^}3tPTGa&4LT>#J7fnj!Nt5We4MhESg-gs_5j3kTRJRj7r``okp*kdhZNo$wMB~j@gIg0l}gt z25I&31D826TM{z-ppXOy3YC^dN5*)n`9d*B?hT|>!4=1ulp!z_A!MD2PlVbd!oU{B zKJr&(}g&z&O1@4n530Rpo`?xpkZHJcgWuW&J>?)u54PQm~4!jyNNoM5a;} zCi9Oa - - + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - - - - - - - - - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - - - + - - + + - - + + - - + + - - + + - - + + + - + - - - - - - - - - + + - - + + - - + + - + - - + + - - + + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - + - - + + + - - + + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__lemma_left_shift_limit/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__lemma_left_shift_limit/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ed280a875a89c25dd83aee2f205d9f659b5eefee GIT binary patch literal 1716 zcmV;l221%LiwFP!00000|Lt5$a~nAhzVlb?eJ=z7zN(Ug_As@na?M_*e02eQWR!=K zN|ecFe*J=y9mnIgV`Xa`$>v3p+vq0nJ<#23O1wTl`@rWf8~>AE@#`1-j9-^PD}MHz zU+ISzT)&+2+jTixpZ~!h)_lI<*ZkXuPmO=!Hy_*X<9Jz$e0ASQ;Qua$n)den=F8c~ z-}!wrn%gd=ukX)yS??15YvR`{`_He3R@&xgC-4=aQ+skj|9Zop-fVP-_wPPC-LgY^ z^&O;tav9G~LDM+ds`u1h%EQZ!o7N6mjsh zg!w+vH!-KXFvls1pJPaWy`CwKDUK^~#LIL4^V6_|o*x2Q!g`_bX z9VvhOB)oa|uk}ln(C$4INJJqL*@)3*?;$`KbfhJK;}HE49s5Mzq$Ax$N1P6Onht{_ zv)E?ZX4>ZG+vdnzqxIyg%cyCeX`gAIADXuS_y%;aOE~6Xwk6c}3cm?E*t>Ag)7#VA z)7w9EY6Q4m&@}lp`84@sGdW&e0K+nVTL2gF-gAcqU*C;6%v0e4fiK)24-!Xht#+upKh#{G6!u;ZOv0?uwWyV>k!|4%pDO(#!hPiIeOKQ3qQ zcb#G`t{G-GnB8D@gV_zPRviEO_uq^>?2_YaOH`I_cKpSykh}Fx=&LiEGO6vB~hrRLBSV{i!L(rz*#}4t@G#`s1!k z--T5v_V!gN^HIz6_0#k9QQi$quTHN%L9ZT}Rli*dG7UQoI}Ll_hTR)g8`*EA|#n$m-h?g}SX`L_Iqb%#M^o{4+w>{auh$%4Kcie@qf3Wgp9jxwYgKtn< zZC2|`P&TW}J7zf2TjtfFPKm9qrj9RRR%YOFJd|5qJz>5qPDKolX?@D-YK7B&{C#KL zpD_{ysrlG??vN64bU;)%S?ao>{{#Mw$%JN8$;eRHCMq#P$fZZ9HlhACqO57PJKeds z7_*hcHkKkTHDAbcg`z>uRESuz^C|ZRkwYWfa|{i9hUU?a@l5rtWC|95!3PIub4Nzz z-a`l#G>A+nBzg>Sp19Q_sXB(}0}%RW_c=aSQ)U_=z2 z+Ji+GEr#rEOpQA@>!}x?G$@)(z$Ix-J|~Phc{O^?t!bUaK3NS?oNA4(I4dPpvO-M| zT&fz}1N$= zV48%MW99C<4N?%fSxXJ8;!t$#5#a)vDlPdzgLk5o7lPJj}%9{qgW$9qW zWtG2(5~)mZu2Bb-!J`XC%?(|RS5?7DM0M`enaPtcNz)oebkW$Zj`oha5R(d|HEvPm z)%8fK`)!TMIERQ*R0~1%Q({-m*Vt_9!?d!E$|fNws#XsmdPL<{!1Ym}^a>#i9?=@q zv4OxUsFqpVmRLtfqNaQ@fi81K1jPF?9-n+T75yuU&MM zylq_GlxnSQBu@32DM`r5TCbaucEkkR5rauxo359r*=5o?(5o<t=N%WX&i literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3session.xml index cdcd029f9..5041e0f7c 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3session.xml @@ -2,83 +2,51 @@ - - + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - - - + - - + + - - + + - - + + - - + + - - + + + - + - - + + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..07dd184d7db7937d842b1464e60296ec5be09cf9 GIT binary patch literal 909 zcmV;819JQyiwFP!00000|LvIDZW}ichVS<&`T_;!z$0K6*qfpTjO3=!tuV_aTg8rS z*s^nY`p#O^%3T ztK1G*SBalju$6@QG7ei3cO;lCK-kYy3C>%9N@nf6BeQPeN@mpMY1-mNujt`pNNxo(PP#lC`BaNQGe3ud{ycx($?3udj=Itnd_4Pa=&th5@y)BhoYNK&&NqoaL^-b4CtD6n#p&7VjUU@>P1R`1!6Q@ zvKJfJd8b98n-rrN2ed8$>up1JFyK&aVTfR~D0U_0I23DC_DIeVVHjbsVyW;n;bb{< j)`IaQ5|YG_)IgodJ01rPgF!Q`huHlGsO - - + + + - - - - + + + + - - + + - - - + + + - - + + - - + + + - + - - + + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__mod_pow2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__mod_pow2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ad84344b687b8a7c6f2e4eecb9430a703caa46a1 GIT binary patch literal 601 zcmV-f0;c^RiwFP!00000|Lv8*Y8x>ShVT0neFV)&8cC2GatRHD_ELN`BdtUYc5Ljm z)8y$ZJK5P1nYN+yP-+a8{OMoK|BqQ|xa0omfme$(UpyRmyWod`^S2Fu+3qvn@^Y77 zrpK={THpgOUzgv?yS&;APxIYZ-sFz2W-5`nKW=`x2nDp9WQjQ%M*nmF$xcz@m!~JrY;h8L_ z0w)J=^IY2ZNA0^A>gRF^T`r-^CG_uKLS2WpkG+Y;sidqAF}T<}Dg@joRo~nX@X>V+ zH5dkmJ_fQOAZpJp08q(RX{sXCL9cpSg4QKDA3!5T6@4k-3@IXAMc8>w(eyzFqG%x$ zTTEn*Jr?6_23tkCt74-fL{oaBv-eqPm6FG(Oo5`HicIIdvs$TCVszOnWcC>$1k0L3 nU8o}adm`>V2Pi!;0RS`Q#3q7c6=OigDx&T?2QluURt*3EbS4<2 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3session.xml index 6ee0825a9..b404fe1bb 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3session.xml @@ -2,30 +2,37 @@ - - + + - - - - + + + + - - + + - + - + + + + + + + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..92705c8adc6eac2959595be2f36c63ce1d771ca9 GIT binary patch literal 536 zcmV+z0_Xi7iwFP!00000|LxSxZrd;n2k^U}Vvit^qCSB2&`Z#qb{TpNC|SY+v`LV- z?YgI*lFak~Ue?_<1OaU4XG-GVPBg7~eBbf&wrsY$S3YieH*x)b;IGG*$}4_4)$8T? zFx2P6^u9TL<3kyuoEU#92H^tRs|_HXsLIcB0?RFPwZ^u+)^eUP3T21V6?z3IuFT0&4K$57qP$D)W+z-c{v;m zCT22@8uy7J2jfF+eI%gC2JkXd2svP=9IVOJ#~#DeNR3+RlQa8XLPV{93!HHj*D aJB}_V?qhlyk3K^$qTwg{Df7y^3IG6PZ3#mF literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3session.xml index 0b4a24126..473ce1eed 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3session.xml @@ -2,102 +2,82 @@ - - + + + - - - - - + + + + + - - - + + - - - - + - - - - + - - + + - - + + + - - - + + - - + + - - - + + - - - + + - - + + - + + + + - - - - - - - - - - - - - - - - - + + - - + + - - + + - + - - + + - - + + - + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f50b51f9ccea67de3ea219e729d9ed5785271c4b GIT binary patch literal 1611 zcmbu0dpr{e0LRC9bkS6#kBpGaD#nD>5F3WHrdzZfrccT!L%HynM@q;$Tx{1G!Z*c2lOPG;b-wSkNS0#Ht>O%pHh z&8Tb&+3^a^<3amdgoQ}Ix%K7s8Pzt2l5)wn+4ps;%xw_QD%xdDYTHJX^$TTaUciWK zy{mMqwGH|$tNznVd6NPZB}!l2Oc!;^i&>unsM{A6RO)K3Q$emE{-dm9&}HSl6~$tU zqu8oxVBI3I&>5c+my{4%UvxXYI1@!}G42PJ1sRj1i!q22xe;56D3Ok)qTra~?uPOo zyLEo447%l3t7v=RsnzE*dOVo#?TvEp^mvu0Wl#}%AIP;>UfuYu(paBR>Gzpqoq4@C zjjo&)+^f=^r%}K(-UquGgdwE4dXIm=5H>yg^HlNvJHQqz1^hqqna1jkKs5|uz%$!1 zGzx67^+0u%8F8aaaXPk+BSa0AE#C7@SBUv|wyu}6hA<(9T6Zbw?6X8tDDmp^$iPz! zOlwlA^+>kw*#vIF{KMDYOqo3EJbQd2tjI}T9C3vG)Tvcr%ph^MVmX`FrPb4z94#51 zWF}Z+;?~WR1@}FECu&DB+Y6>jTC(HfO&J}c~DMW|{hf1--6sq@YWjZy^hI7T!&_Xa0&e~{Qe;Sb8&y^;nxke|L zaKV@d^5Fr8V(PaPhxoo-)wVN5Xq($fOMH1lPZ6dg7n5`rygfGGM2)-RG?=&!Nu1TO zTzV9(XIaSTBE|R6EPb# zhPUtO?a9C5{+w3CSn=oHax?_n2Rpb$^in9(c`E}?jm17us2AF^X>|2xyYz-q^kIfS z*ash1gcpH!-O#rxme~azpADxmI!R?y0I(7?d1S0v$wk=*ARf8)gS+;G8cl_+Qm1lH zrBwy1{Ev^z&@lv9DCN-@v^%tXS|Py8$irx7XP-wYeeBNxauIyJ=Pl%)wfgy*Qtb7aq_Abc%{=Dx!4F)4|4 z^czmZ>Ql*&B#Tl7*cra5vO|)76BBrh44PhmQ@nb*SSNvoBT?6D#P4uDU75Kl+6L<2 zlR&TU#KeN`eT2jR&gJ5FuK&#yxhdy*T&l%oV^P=zxH%bA@cs2ab&?KFw31Q*VwPD+ zG72E_w!y=ugSLM-ZdGmrKI&8<#x5A&b=^}lC=_91VqL83$4`^~INdF~4-2fC^>-`OKmk=M< zXh1OYT}Iuf$L#zSg>ApxeBsP=Z*l&jGXu#+5m_Ss>-Gf_96Lx~O$H&>EY%w8wfd@N z$A5Og8NUuAKf~hVy6f3$b@Nw!MlJyF+hgvSOQzBMoQzT=TA=2teU#~uCHAD_oXGe& zQprzCl!=$u&e&eL{3yPn6aq1i42K+ka<^%L!Wl_Eq-pJT6?qPuB39rpl}@_WlO^Vq z^z)&SF~hb;8*W*Z!!p~9?4Td(e&73;bq-WGb~#%Wd5{jvvSF1`i!7@E?avE>tNm;45R&(kgny z|0qWu@DO-R - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__to_index/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__to_index/why3session.xml new file mode 100644 index 000000000..6b0ac601b --- /dev/null +++ b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__to_index/why3session.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__to_index/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__to_index/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50e9fe25555c600a0b18e810909ff00d8fcc0519 GIT binary patch literal 234 zcmVyF6P`2A* zzr9<;UPZynBYC|10&mL?N(vh;m(Kg9L+fXr8uyu{%|k06{4$*?Kl1yrevMZ#b$^&I z!|{y|)o|;>#QnAI;F(K1^XmInQR&y{8; + + + + + + + + + + + + + + + + + + + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__to_length/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__to_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..77cc14f6210e56eb1649ff28f8db43e6c3ce072f GIT binary patch literal 189 zcmV;u07CyCiwFP!00000|DBFK3&JoMg!lXkcb9xO85~?h7bo{{N#1C{hSFBSe{V%x z1znCCo_n|>HpwM^Kz=mzHHF&l7%SS0Sm$u1hSPW>>~NjvU0=bdALd7xE*OZRwlJcd z3Ax^}{tQ!>+|S-GuI=&9uPj?qxo9Ukp;4fmHOf-SI&$HVu@Za5v{%+ZS;65W!B`#( rd4sNap|vXu#F>QQRJ6>FymG}Zj;x4c5)$O4SRl!sD=@TqQ~>}0mDyN( literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract/why3session.xml index b15e2a20b..3a6cc28cc 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract/why3session.xml @@ -2,506 +2,548 @@ - - + + + + - - - - - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + - - + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + + + + + + + + + + + + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + - - + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + - - + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + - + + + + + + + + + + + + + - - + + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - + + + - + - - + + + + + + - - + + + + + + - + - - + + + - + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..96f040193a957f6650dafc11febbca0fe8e3a028 GIT binary patch literal 9402 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 g^w?#vxR$#hJuV{BPXs| - - + + + - - - - - - - - - - - - - + + + + + - + - + - - + + - - + + - - + + - - + + - - + + - + - - + + + - + - - + + + - + - - + + - - + + - - + + + - - + + - - - - - - + + - - + + + - - + + + - - + + - - + + - - + + + - - + + - - - - - - + + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract__d/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract__d/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7147814d468c6efaecac136e9c6b78edd455a06d GIT binary patch literal 1585 zcmV-12G02(iwFP!00000|LvSjZ`(!?hVT3pz4cH8*qNRE0_p;~1T|pfROl+qekDR} z$FP;O>96lB&`L`op z=f9IW=KSHD&(>+RK7Y@bYd+ubdp>lO7?u`tB*EmE92lo- z!jVPiNLNo8_~RP0gcGUHq?Eg)q<~A6{Nm&0vksPOw(%1#SNzAji_@YWK%;Pnvf-^n zs_##v53W)Dz#6?vwQtqIfvK5@6h)*EZP)Fi*X^rOdFr_9x9j&u)bCEDx{0(^ z{>2g#h#aAdx{LZp7xhlCa8TheBXQ^&?;3xs8lSD`zBG=On#*ywMYqLMx5X!w^2OV~ z%4NbOHBHi1lQgeM`m!eP>@}F04G)?PXUvA(Y~5^+)oh#ZYpuSFb!R63RUo$New{HiZ~-BjIFUvH|Z+P}TS`oh&c_T)V#ca$&ql&?11Xqlh6VxRHVpLFip@IG(X@FB2=z}!SGc?eh2Au{EOoO3`psp{k%{~P|heC%! zhr+XfLZiUa?Cjkk&>_$v@a!P)$@I33aPxL`SuXgs6hYqd++pBun-D zyJv2&Lk*}F0M|}~d8>h(cu?NJO@Tw->tQ2&7u?_-aHDU98@fN-z=QLK#^1WT|NPdy zbD?vgbKx0rVRuikYN3+K(l1>nLMK8e!gC?QJOdUpcL$4a!G*>BLSk_%iY)dbWzqRE z@?|m27;tKHoF;>NGNFZV^(AVkfed+5jrN7wR_;1P4- zrE}FjKrqT9L8P3h7#muY8ZgvYGa8q@qf7}*sfLpcmSRZkT2lj-$kAEtWAO%~t2(BF zDyy70Bo!n`4;ctJJ4(?wn-R!!%p9qtVtwK$K{V)6ogrgu&Kb2~v}BXc=sgFDHA#>e zfG6o-tO-Tkn zM!BK-D&u8cm5IU2PN^!GEL}(yl^gT&18a*aw6TQ%IjS~SflHBgDnZIEDh$>JCBsA! zxsfi#{ULahDT9=&nl_852JLK&tcd`wi jC~01-fu;gVeN{}}LDZsd1J>ghWrlwN>!SGtky-!%{~{7W literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3session.xml index 0f058bd64..10879636d 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3session.xml @@ -2,23 +2,19 @@ - + - + - + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e64cef6486bd2c85e90869d75a2d0c283ce1e1f4 GIT binary patch literal 142 zcmV;90CE2xiwFP!00000|2>R54gxU@M0=ltBlwdzaX~?Y-~zNLaU9Vgt;9Cm9#$)D zHPV|mv) - - + + + - - - - - + + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + + - - + + - - + + - - + + - - + + - - + + + - + - - + + - - + + + - - + + - + - - + + - - + + - - + + - - + + - - + + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + + - + - - + + - - + + - + - - + + - + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract_intermediate/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract_intermediate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..848e8138b573e787f6b2fb8ea67c23a0053740cc GIT binary patch literal 3304 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 - - + + + - - - - - + + + + + - + - - + + - - - - - - - - - + + - - + + + - - + + - - + + - - + + - - + + - - + + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract_remaining/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_extract_remaining/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a67b354bebd4f8172e72ecaeb71e1d32144dddf8 GIT binary patch literal 3425 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 D1I>Cn literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert/why3session.xml index 6ca965508..4c104ccd3 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert/why3session.xml @@ -5,543 +5,582 @@ - + - - - - + + + + + + + - - - - - - - + - - + + - + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - + + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - - + + - - + + - + - - + + - + - - + + - + - + - - + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - + + + - - + + - - + + - + - - + + - - + + - - - + + - - - + + + + + + + + + + + + + + + + + + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - + + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - - + + - + - - + + - - + - - - - + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c7a9470c6560b94ae63c6b21d5903b0666b80571 GIT binary patch literal 12022 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

G%Qts?FB}$iv{lWf^AJtx=K)J@hfBib7 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 mIaLs%52Z3Lq#sVU0U@MlObx0AzZQ5dH@~IX2n= literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3session.xml index 19037ee83..a2db80472 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3session.xml @@ -2,47 +2,39 @@ - - + + - - - - + + + + - - - - - - + + - + - + - - + + - - + + - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8bda47de2f4d26db304cb195a668d4a647996d10 GIT binary patch literal 514 zcmV+d0{#6TiwFP!00000|LvCFYTGar#_#nMdx3$@(SK+Lz6lHTa`@I9=}4_1b%NuK zkflb3$@LSs+EG`plv~$3>;Sn=vW)B7wr%($= zYf(yVC`f}Vg6XLJl!W1>_Ss6GIhQ zVYMx?DDXZ*T`~qoRgFoNNEBd3;DoG9g7ThC^(?`937OGJjhZ5t8G#qy0Qj;1dh-kb E07uC5NB{r; literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3session.xml index 9fb2b0da6..045ef7613 100644 --- a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3session.xml +++ b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3session.xml @@ -2,47 +2,39 @@ - - + + - - - - + + + + - - - - - - + + - + - + - - + + - - + + - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3shapes.gz b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3b5278922e57965a290893311d6486fe4cfbfc04 GIT binary patch literal 586 zcmV-Q0=4}giwFP!00000|LvFEY8x>Sh41wgeSw1he;_IN#?+9@vbW1f8YK(%+N{-5 zzkTI3G3$0WaWH|@@r^9JXVz!*oe?-M;M+Yk@pqt$2I8)TRTJt>x87ivcaWNHn_&rM z>9-8lsfMnDT}2_U>kc;%AwyjslqX;HW&7pLRXHt=UYhn7bPco_aEU7{pFg^v2y<9& z@vz-5BYL)PYg9ZZxZ31hy?ufW5@_1GgZ2?&iS1*4s(8f~a6e+S;`4tV?Cn-;{yC2^ zf39Ya>?{5J;z1zTNmSIxlRhhQ{xE3mG;C}#ZS3#3-Stini5;sRsheGz(bs-p3fyaT z?~d*`;+1`Xua((L$0ykg&wLc~B;|7QgfgXJN`5X(z~ z#UzSIkVsYFA|%d&w?d{;!oBg#TE)RSUPO}69-J#8MVK}+ zMJ199#RPiEZPb{g_R18qp@=k*LQAbo)Ixd`R@y??Ag3ZK$)dv|GDJq_A|N6tbik>@ YD800SBUNAwEh0<)00oV%qhSyL04)3(l>h($ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__unreachable_bit_length/why3session.xml b/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__unreachable_bit_length/why3session.xml deleted file mode 100644 index e4661b18b..000000000 --- a/examples/apps/ping/proof/sessions/ada___rflx__rflx_types__unreachable_bit_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/apps/ping/proof/sessions/icmpv4__checksum__add/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__checksum__add/why3session.xml index bcee376ac..47a434e39 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__checksum__add/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__checksum__add/why3session.xml @@ -2,26 +2,24 @@ - + - + - - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__checksum__add/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__checksum__add/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7760a027a680e08c79f99f21ef91f58cf646ab64 GIT binary patch literal 346 zcmV-g0j2&QiwFP!00000|Lv2@YQr!PMfd)Seu74?NQ*8~XlS8yRlGG=xTy2KD?oKfmTd$xeNR*m - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - + + - - + + - - - - - - - - - - - - - + + - - - + + - - - + + - + - - - - - + + - - - + + - + - + - + - - + + - - + + - - - + + - - + + - - + + - - - + + - + - + - + diff --git a/examples/apps/ping/proof/sessions/icmpv4__checksum__echo_request_reply_checksum/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__checksum__echo_request_reply_checksum/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..72c72ce8afd757513ca22fab68150a644cd30131 GIT binary patch literal 1909 zcmV-*2a5O~iwFP!00000|LvSzPb13_hVSQB>3ZK|&`t(cGfyFV+fc zHeiml|31}YFAQdEkJ-&xHZ&J7va5TltKRo<4>Pd7q(|9Qx(n6Fk3pF_TzI}mA^@@l;-%lTvEkn-GU#ml&! z3_kDj=P&E8SNEUjOYYW}HSmJYdZgRJ33CDjK?TFZF*_vLl3YAMz7@hgIfp!qc!eFQZexCnAMuyON_jGH$w0uBc}28IJ2 zH<1wC@KZ%G{1j6?Qb&3u=k*$nH5(3e8&B%Cd~LVYE4r;u>b5!5?TPqaY~x-|oeMqO ztT}YKUee7K-QPd31DCg}Z)2uh)7w3np7A@BQg613!}I!@S+X*2?r*NbAHCjomo@XD zip@+m+3acZ{ikJFU)|)g?)4i`HNHaDFsW<#J-SvW=~};5*X9+vwkPS@ovLfMr)aFf zak4uLo|N>Dwa77tz;{}tIixvc*CDiAUER^@nm0UnNo9F=zu7U?+H&i@=?`Ez9{Z7Q z^6Gm1X$XyCP$P)mpHHdU@Aq48d)F-5EZQu3$f6(4M#k(xUeE{rPB%36s$>JRCO3r^%kaEvBQn*m^gE zZTvF;e5i4cJlU*@uY@aiMz1e+_Z9kl4vL_$sIjQAXb+2CY}U<1BSa%aBg8u*#Ab(Y z#wKY9Xb5Nsct;3WS9|j*@A4PA&g*(ecX#yl+peGodw#LYi5F&Tn}QO@V5=*`9XNwEI-YiNsGi{+so|LmOclVH#oHDq*@^wKo4Z|2O}?8~-nkT>|JH z{P_$`H*Pd;G;aKY+!z4Rqu8;opZsG4F~_>T5v38O5#?7Q$`$}HO6QRV2lGKVo)C&g zmqwRHmp4zB(GxE2l4obEsK|N_qeTXF6-=!dr9;QJxCW)Lyl6^N~$0QjF@i^bsvWS!O$r+ZdLl0S& zONPHK29>)5DtAL#u#?v0KRwzD%x7td!)bYr*rw$Vq~%B52EWxr?ayqI*waYjW|GA1 zkfhFcw8p>vvn-DDW`{QCKN~mGPYN{xGy*gNyb}T(e^kiM-mU&Gz~RP7aDzzvBRKp3 z4*wD_li-;4^}ai>1326k9C~9#J{W^T%>u_hGL6BZHdNYis5}Wo&m1a`I#kYc=vlo? zd!E+x|Fk^t2>Vl7a4;@9`{JRx7nW-jJpk6O`OCOe-cwr%wx*9mSd(I zuJNf%={U_FPJzV_+FQ(6Nkc_LMMK5+prY$A5XzvkGr@)^LI5wNO`&MvqtNgd_y?NK zP>N7Y!Yl)en{4#n0lKIlDg&0IM3Y<^ z8gjOECf!-hV{}Q$D)iPGXN5;0OXLBi*vvtu3rGqBPourdMms(qC>J>8;-gJ9$acaT zN5gqIj;T59MLIfj>O&sJpD=C5EiYBj&;B<6AkXc!ij6$h6$agk!wY>`|MwLwg zP{KeI$zT#DK%EIhCyH`L6~tHspArfcApt3H7P`nrxf(H5G17k=k)VR4Se@Qmq8aE_3N}@FkY2MGL^6 vw$7v^a}-j;U_-?=MAA{QdXtoeBX})DtXdl=@X~6Oo*DID7_MeP!C?RZ`wgg- literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__generate/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__generate/why3session.xml index 5fb64bf68..0636e680e 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__generate/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__generate/why3session.xml @@ -3,853 +3,741 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - - + + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - + + - - - - + - - + + - + - - + + - + - - - - - - + + - - + + - + - - + + - - - + + - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - + - - - + + - - + + - - + + - - + + - - + + - + - - - + + - - + + - - + + - - + + - - + + - + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - + - - - - - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - + + - + - - + + - + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - - + - - - + + + + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - - - - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - - - - + - - + + - + - - + + - - + + - - - + + - - - - - - - - - - - - + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - + + - - - - - - - - - - - - - - + - - - - - - - - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__generate/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__generate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..24b43a8bad1c9d92c2582d1546ebaaf90fb2f5db GIT binary patch literal 12975 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 - - + + - - - - + + + + - - + + - + - + - - - - - - - - + - - + + - - + + - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__generate__process_data/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__generate__process_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1d4a8c828313e7c1ba7f612b5d699628c2f8fe8b GIT binary patch literal 562 zcmV-20?qv&iwFP!00000|LvCBirX*{hVT6peSw0`2iU#HjcH)%Rq?GDNu#VGag5>( z%&cR}laWMoUrl2GY z;rU?`b+d(BL(}c!@GHL|l(5|3I30$vz*XDr+~yTpETC>&hGu~ke}N@7i|(~z6&)me zB)DSb2e$^<6)nG{nce(h;on;La-yr^6}xC1zi1sRk4?t4jlM8pzscPD5@ZvAvHVtm|0%y`_&!lO zK$`;M57-CMPet_UJ-(k0exHb6eFpHFcXW3CAwH)*yW^kqUvi&yv(safo}J7OM<`Xv zi|W-y^|I_+f5peDuvAEpLZbH~NXleL(s-Ga(%eYmztJD2AkoS|B^Ln_SX4wal-5v@ zr~+?ApF|4fjVF>vuYF+A2d_DJ-M8?-v<1>9v4Tm)NJ5L?8KpF7E)iAWUW*V>#6F2% zmjsgaiv`cPCn;FZZ3HU>10Izp$oeEv2(7J&Q9=;PSV)N)G?o&>bn=P}nq(n{9*9C= z^gL)mf%!nAB!OB3O7=;rNCZIW(C^VCnmAP=nqUMWXcbXv@JScH0m(G7vKbBl0H)Cj AO8@`> literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__generate__set_data/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__generate__set_data/why3session.xml index b38380644..fbd3bf95b 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__generate__set_data/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__generate__set_data/why3session.xml @@ -3,330 +3,266 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - + - - + + - - - - - - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - + - - + + - + - - - + + - - - + + - - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__generate__set_data/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__generate__set_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c181086ce3b94cab85f77cbbb2fdf6082063528 GIT binary patch literal 4735 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 F{{Tz#CBOgx literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__generate__set_data__buffer_first/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__generate__set_data__buffer_first/why3session.xml index 72def0068..e7d7012fa 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__generate__set_data__buffer_first/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__generate__set_data__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/icmpv4__generate__set_data__buffer_first/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__generate__set_data__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c31baf5b5e647ba792d770971378c21b529e8d6 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(I$^ACZ2}I8x1yZ@$fP;-)!P#; - + - - - - - - - - - + diff --git a/examples/apps/ping/proof/sessions/icmpv4__generate__set_data__buffer_last/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__generate__set_data__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c31baf5b5e647ba792d770971378c21b529e8d6 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(I$^ACZ2}I8x1yZ@$fP;-)!P#; - - + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - + + - - + + - - - - - - - + - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - - + + - - + + - - + + - - + + - - - + + - - + + - + - - - - - - - - + + - - - - + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - - - - - - - - - + + - - + + - - + + - - - + + - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__get_address/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__get_address/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4a7ec86fdfd63fcce7cbc57c35f8ba207b72715a GIT binary patch literal 2775 zcmV;|3Mlm-iwFP!00000|LvViZ{xfbhWGjv-E~nE;NhJ>XW_*cG{B(U6y6$#x2e%g z5;&d#=HK^F@*IR)aKAlgvORc3 zdvLHlK34~)q;MI&K7N;r#h0{RV2rEu^t9+5eEG6UUvQlk)OBD}(-(7gaJb{T5}($q z$-&$-i6-)6@$_GOObssY7c0E~lIFlZV_vSF*5%CGf6D(Xi@1CWt0yX%%UxMsrn}gd ziSt+Sm0i%F@jETndc9gK!oz(D^71~#BN97X<@_}&ha)oQuaP+%(YbhEoy#+Hu8!!u zr)~Zj|Gt-AfHG2`DVF}XwV+y{THpg)V4(Du7^3>2`r(85VSPI-)j7yH=x2p`4r(`z z@=B6i@32$rNVp)#RRi}_$5qE&z2iuNd%2O|s{yM4s{wzl0ZHaN(^UUe|5g9}YX6Cz z|Au~?)eB@bXf^1cYfw_9zO6>BMy*D@Y@ zoU5^lxeUtOl$BpU6wx3}tQ_KMg+E$vb3vz_tRZiv2(X^5XXiP9^9g-&7|*}`F`I6l z)WSwJk5wlDxpSJQ`gXcLsccO_p!kr!%$%FhZn@R(NXA6;|M3Z`@co0Zx1G~(Q=_^aXYlQEm}4P?0JpK-V!c5fQ->Hc;g6ICKAUNVr5K~sTB0hnDU$E zpv@>g6$2FmU5fFh6o7*mfY)*0to-6Q2;Mro_`Q;gQ6f-$UkOkNP!oY`OawNcG;1PI zF;EkMYfA*ypYb7YTr;rGh5|!Aj7e-x0=5$6!xKfYEl~v95QU1KB^H9!#Nq-Ii-yLz zN@1~>yj}4f?-q-P?oQF&;t@mdRe5t6N7|-kCT$fU#7FZ{fH;iP}z!VL_k9ekk5m0Nf+KhnGW zNN@8a{p_n=p>Jm0eSq#uo9h2R_v#Jj_#aMQzo%-v!v9bK@R0y8_dwI5a%bRGYzeF&t01d8jShh90`~+~zgE9izy7ks;}Z4+PVXqF+XpH|D@EU( zqCdSSu)6mQ_r7rR-!c2bN&k*F|DA8(16yz2*1>fP&|79gFWv(;N1>VDh%r00PH%09FWGGX%!_01rT5_vN6lpYd-L=CDcE&ED(g#Kv*z@hPp_TTP4r za&y~5%itDM%{FSbQ9*N2pcxRLe@mhApz@&d;F@{RJ^djZp`d>kv0|cPqGIC1Vqy<~ z;%m0?wS--4C5%^T^W@)Lvf=Y%Z~!4NU`RzsMMy=+1tO%|Do}<6>UP=2axTSeZ(J!p zZx}Ia8PWM;)*enU;*VJyR%&oIKtx-th%5c#{wsR1B}CT|+jqnc6Qb)+_6gBRYZ4H% z9uEqy{+JDkK?OZJ%{Fuz0-{q-d*%cn^fQCXLDe20)H6U()wc(PJOPLaRnSRi0)mjb z{TixU8~S||5L36mUk`}cp4{ExNH78j5WU5oHl~0-Is>#qDRKonYds;$j)IZS6ud}h z3g(LSbtX+)&}!W6HSQ)J!j~QMCLY2+AU`@`wEUZCKbN00qr&kY6<1dS2B>6se=__$ z7|!3|a8X!*-+~L>9YeK$faqEvP#I9OgPI)-D4>Ur5%#Ds-sV_yh02MVD}2ygVe>D& zw|}{+QlV0zQsK&|u=!6zn|~Kx8BiHe8E~}>*gnJ5{h`Vp3}&ZbQ0_uhAXFe!AbbcQ zG%|Z0Pcm{IIV!3o8c^s(@IGaxjp3M# zM{6)RREhcQ%AgvR0}I*2WVFlHP+Ym^-l(iqOwIP5BR(Hs%nS;4&+NhRc+crwC>e2QRf$ z<5O}ecoZxsjLyh}mJ63OL&H)iaR=Q1W5O}ReMmZHlrDnGq#P3gJV#$@nMTlHeHNLP zFlWz{;+AJYWnf6r*ha!OW$9J0N~tKdRtQQnnc7iFuUR{Kian<2$TZ0~fJn1r(NYX} zae%c^7a_AIBq6q$%;@vfqOg*&G+E4%7m*y?&QUicq`;Zt(P~R?1+uYY zz_~+YE~j?%rU4-ZLLz~OWSx&$_-u?y1O`q6YumDoWHgK*qu^fAm~{{qQ0nZ2B{exH zwH$dd1|BH%G)H>RGaktaEM`f8$ZaG9Yg|SO4lR-AQd;i40SnB4(>y1QB@zM}r@)b% zq>4r=X?<}@A}rY?TnN0Zw%`r7lENdhv&dxCrJte zw2=_{g|$2rQPPKD1jU+)6LlY-pOM06is1428gb+<)WgUg3 z(K`_o<4ETQO@SgG(Yi+T#GTO9a!pi8(@R6}%Opo{T_%emttl~|;#c6z8j=K{u-SsA dyo|Ub$s#1Q7zoMAlt@Tu{tphMGN=cq0089qGeZCX literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__get_address__val__char_value__value/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__get_address__val__char_value__value/why3session.xml index 1bd18f9b6..1b063cd72 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__get_address__val__char_value__value/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__get_address__val__char_value__value/why3session.xml @@ -2,58 +2,55 @@ - - + + + - - - - + + + + - - - - - - - - + - - + + - - + + + - - + + - - + + + - - + + - - + + + - - + + - + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__get_address__val__char_value__value/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__get_address__val__char_value__value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..139c242783f5a1c6084d4dbb1d459d41ed2bc62f GIT binary patch literal 821 zcmV-51Iqj#iwFP!00000|LvIHYuq>x$KU-|+}k}BH2N*L9QYxj3#EN2eib8W)S6~D zi`NO{zrV3JyWMUY?vm1jHil&pqmkw_etU@2A6wq?i zosRJnjS)*3Xt#^;4zFX(pK+K*w-n>ecIroTEc=I^#c`_kbY14Da=TvN|Ht+4cztJE&S|`v)^@ft zm+i5yI`i&fA#}R^w%zoh-8izE(`e_>bGq&F2dKjdb?E#lwf{=(&Zyntls#&seNrP& zcKMHBgFN8|*#VrA1AIjXamEhf@R~nLw0%;dPigG3eP6GBzR1RmO!7PG#hG5#C@YZU_cKL`}PKH;0GPK-pXLm9j z&z@h++H(MVdQSren?{(YBN7R6E$m6op{fGl*+$gG8vndVkgxo ztxa`_XMMtyf`vrM8e2;cLe&XMH%h7^s|%^3)&NOL2$cg#S1Jat*~v7iS^*|auobJv zYJ$y4YoDABP7*uWCXvXB5=vPFAPI6=8V%BCVaSWXPOhmUX)BSFl7WF_fZ|9ndi9Q- zrV{wZWc0#Y3dk;*gH!>52?1RSUQFRaBTGt%fm3%Ly!0snCB|1th$LaE6Nm-_8fAlV zPGQR47M|jf41%a;?Itg1xV)5QDxf4 - - + - - - + + - - - + + - - - + + - - + + - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__get_address__val__value/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__get_address__val__value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e2468c0714ee4448e7692273321039f736870a89 GIT binary patch literal 1265 zcmV$e&lY_I`OhB>SjB_Zvmy1Kd^Ul+jBGla6L8>mzM3M+`Cm#^>yE5BYg-=KE% z1)fs|n~;_3#?i$K6yMkIRyurshpL2ilT!Gr+Id*Os`iIre2ELGBcm%wD?C_I_yD_A zgQ8_q!YYHh-o0&`ab{RS(c*&8j#gZRj!wHw)AUXp^9v` z-TKNw?XwJ)%gQgI@fq6dgmJ<;Nt~okGAFr{!b$0*a#A}bol;KWz&K@{CU8_VVju6` z{j8m<&EKD~)8emj);dZE{!#p6aMU$w>haxCQx}QH$bHZ1Z?N?VJUyqp&9FzNJu>aS znHIB)N<8umN9YKA__Liu<@-sidy`V{=Y+wBc+h5(RelRg-^3wQ6?{h|Qi5+UFiUZb z=rT>DlrLV&IOGRY+VMx~?w`uOsW@Tw&$IF{hINsb{d2Tt+p|fWNg17;n%D*IcgP(@ zfqAz>4BLqEc>Gc2z1H6 zURrUZ8y2Z~8#&fRj-`~gk)vH?=vk<2>&KKaXXVvh7{gsg4&2N>enyaFy3FlfE(z=N zWN)Pho+K?)V`3jKb$W>IOEYR^Tqn~(P*khw=r@(h#p{R8y;Hkt5NTTr{6q~pPh52# z<0vtY#^P|ybare=qVm?b-fgkyUl$3K?rr-nGK5o;K~Yq`uCweNxt_UiP{q*>F}2wP zKF+oi+sYT1D=+W`4UL*U%&j~E?o&z;ne}#6Hd!eBs=yd1N1`7-tFbJO8jG@aRn*wl z?8pVFMhW=}d(9`bqrVh)wpZ2m67Co|&pj4vYIbJhfOl-(ZE=}*a(k$PrPwkP=1KK(dg+rFpr;_5bY+2ebZiENqO=PTz2n0_UglEefX0;QxNnkd6W;GP;D z2qDbc!oY9z50hXYK~3%?F5KlBFEMrWEoCXEd`NEnYh{fh9_#g!eiG)(g zjnBPvL9(0)>J%t$3jAk%o?8@>i7dDV<$dtE3%L=&gn|nkD&{TIQAj0)!EUMu#(BXk bGu8`|d#Z4Q+$&?EO*;7(esxV^3LXFeN%L+j literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__get_address__val__value__2/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__get_address__val__value__2/why3session.xml index a962c182c..ba4f6afc7 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__get_address__val__value__2/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__get_address__val__value__2/why3session.xml @@ -2,65 +2,53 @@ - + - + - + - + - - - - - - - + + - - + + - - - - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + diff --git a/examples/apps/ping/proof/sessions/icmpv4__get_address__val__value__2/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__get_address__val__value__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8cddae8f5df0f12df73be1d039efcaf56c70dd3c GIT binary patch literal 933 zcmV;W16uqaiwFP!00000|Ls~$Z{s!)z3W%>)+@h1fXxEF7!45gROl)U$zfKgqZpFB z!2bIV?QH5KZkjj_TG+hUlr)<6IGpz+OP;SG{TSe`k6k}}hp~rYh6(-{Hwa5uO}HDD zk7a{*>-k4FeSi5IHzzT=k`5R18E)OAe-H7X7@BXC0v|jadm-;D= z6YXhv%N|la!>2r$VY8YkPe1pt>R_5SM5(_Y-jtAd!q5enuk-py zY)z|6J?&#7TdFvdH0t7lOCS&m9tl`waQ{LrA{LugY()b>1qz zqq}A|yH>Yuc{Un;U0M8;BIfK67H1y-t2#b29d8%((}lckL*4r2-${;WzH_vLf79qm z{eU0D;`OqAZg$W-E-*~gOxL?kYyC$wyz3WDd6v}*KE(=7F3(r2Kpeyp)e6qT3YxuZ z3r)T1zv{p0|AO>i;Gf(C`04@G1F8pHq6a)Ya;moh)dH#oT%ZNaRqj>pRqhue_m}Sj z`gyT`7qEEpvtaS$LBZm4pBpaz&#xxlNA8ICpC2>4_tCqke@85;a~~clf?SiSBtj}4O!SgDk*yGP z&{`!VLl6|?8_S%>2-%0ESX4rz;~_B5k-khwrR1z(F(ks{PH`cuO%7u80fO*aWtu~Y z;tjKz3m24+naZPiG?{1x#~>gm$xD==DrlBc^42HAc@j*S#2oDmOr&IUiIUA - + + - + - + - - - - - - + + - - + + - + - - + + - - + + - - - - - - + + - + - + - - - - + + - - + + - - + + + - - - - + + + - - + + - - - - + + - - + + - - - - - + - - + + - - - - + + - - + - - + + - - + + - - + - - - - + + - - + + - - + + - - + + - + - - + + - - - - + + - - + + - - + - - + - - + + - - + - - - - + + - - - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__image/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__image/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..72a2c65be9c17f2e5fa60ae3355c63a1fd2e8bde GIT binary patch literal 2803 zcmVnJv;+caxSorhM}o`DfHS?$$LAKIy?_>22}U z6pwi6Q=gAh3~=q{;qL1`$;(8F<0tw#1^k!$NG}4E-)d7(GvgTzPd1tMyk1{T$iyKf&$qRu z?=7X1^&$I|urTz2$#Oe1)iXFU=#uo<=iu^cgc(yiP*MkOu7+}>yipr>j>NP0bH zQw>7%xwL&du!XZ}d+>=v+`@Bs+x<%80qg#k7GECfQ08SuaP7ia0)ZZjHmEIUkW8i^ zNKT`6#HbxkCBNUMO>c;GeItq{?3U()Bn5HKRjn@umS+(u)3y_f8V*=+t)n_fWL|Yc$@-Q#g1zV;D!RL zf(xw86h&>ZG0zLuzQw^t8FNIECkP>R{+2pn`Ey!JmODc$!ss0;{^! zVEZJNP5({*P5^$bLP_fo2! z2biMW&;jjEVG8g_o%mvzB)o0? zLj%B%1AvR~8$9dW=BwK{s7C^hXny-<`1gedXmf*ijE2AdNay9yuyrhm^P1&V1=ORh z@MD=g(K=x){2a%^&tbHrttlEeUJo~ppRwTeCIBOtiAZQ?Xryy9bh}wjpaiDSFopN9~^k9LyS+JfSJW^t^H+z`u zt|}&Nx1m9$L50iXP?1$sat#%^fy%1jB2ej0_#)s@-C`wq(csbG(ctkG;IZ`}Tax!i z=O2zCp+TWRp+Vt|K%qPc`MB19ZDMa?Z(@H7Vjr9V)Vl{^K+gc{EP_>P!Io!r@vWVV z`IUV>EUHHA=gFKJG*il)a#wVpWC14SPG;VpX`0lRdt&4)RHFqgy%_Z-HuZgdsty$? zz238G%B|BoI#j(v#)gGXZ8@1D@c4a8{WGH(XqBxMD z+{jRl$xuBZ!$PBt3|A7=+wvRr10VGRe!kxICn<0=O>i_#pm=&uev`B1r%smN*!g2w z87j6;Ae-$I$mK#cas>I*wg(sRXLS7OUBOe0^$!+by?^jX_i2CK7$n8|`Nx}!5N;)b zsa$7U`M<{s_&iY7+hIK|Y)=a_Riy`ZO$&Ua1@6-V*0g{XEzB-0%&D}{VCCSJ76z7$0wt0a&n!y4q)IBfsE-%y`FVu<`@_-j=!wWUW3;hHy zNX>Ge7iO3jd!9fs?g_p_3|(l6qgT%m=tlbsO=TBy@Iw^@SgSxb`UT*X>L#&I#@(Z_BI&y|GHc0Ut3AEmBgD`N#KjD zB!;Z~wJV9P<30zYD4S4;kb=_IWgWbbQe`yC{SE%fRhN`bWq&ky@N-k5E1y`80S3wEtLw3e0Or=k{i!nIw6U~Wi4ro>2-e(I6wV=w* zP$km^ssq8Jr*g)?@t{oRa3vfKhIf^~uGq{<(kEVZBuJO=U+LQY72HUJjA^gb9gTt;7NVJ8fb2TWAbapSTQ z03K}VJtt?R;wm7orvO?2Gv0d>9Je-M@XUcE@A6#xCA!FB&ORv{IJK#rNGV{ct&xM0 z)t2mN&?YjEfLi6OxOFNAm3>Z%Q%01u0@Yb>gG2AgBsob^$Ze*pm6eoMPS=b9-O0pI zXRkRWT}m8y3M^>JjE&NuF5v;wSwWdhu3!;_6e>HQD9E4#1+;{s)UusnQ3oBFkj4bV zDC|bbXrqOw5nb^YvMvdyv`Zzwvvrn7rX#sPa0&{eftOm)DIvW8M@=ZobVq&HD3q}- z8gEpe?|9-EGhH>klNcdWqvS>mJjq0YK;%i3#6jM83-LBN^4#D z6RV0+JqJ;0*$$8-jf~#UJX5YlND{qA?jz3>^#Tai2`3`uFF}M-I7af2)7qJ$U*pLo zr4~iVDGG&@+~wqi&BTYuk|8Dm^W2nvaqJjrhTP~JL5e{R#M&HaMA7jmlrNs({6t$w zLU&d~Ym2I>TyZWu%SJFonop$`X-Fz16y&Uhv%xzOhsPL{ks(WRW~n8+{{v5*{jWQN F003AAWETJc literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__image__2/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__image__2/why3session.xml index cbedb1f87..299355f68 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__image__2/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__image__2/why3session.xml @@ -2,60 +2,56 @@ - + - + - - - - - - + + - - + + - - + + - - + + - + - + - - + + - + - + - - + + - + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__image__2/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__image__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6d38de9b8dca4a484f3fff893933d283b5ab9c12 GIT binary patch literal 1237 zcmV;`1SM;D-$jgub-+Rm{101&$MJ zWnsU4NAgXUWLDdzByI(USkla#(V72mq;as?lv~`a(vm;o&$tfofOkv4Kew-`{Z`>U zu6LwSztxI6rc>k$u*{))%IR8WX(!7*Z4mL7LVDVMu?TWwam za+Nk|OCg#Isa&Vcs{T@zxLR$~3hPwTJq9gr6 zMiP|W>!YdO7m4=pTemwM|Hob@cHo0ik5lK2UKrZQ47Tk`;P zaPZ94c1Mz-y=?xpuZzcXjYNLAI~W4l)X(KMz2GX<-Nl>sHLSH7&FK-VC-N^}H@j-J zNpZ=S62sq8z3#We^D!KH<52c?AbY!)z3F`k%AbK2mKlH8S;PmMZZJ&V)8?OQ7?uQ!lL)1 z0StzO#T)%%_#R`zJ5LGoknrKV32oO&f)n%yb}zt&=kvdV!1hF7uZaN6s0!>f6@a1u z7#2lgJaB6i3rq-$+GS~@)gY`jK1ZW|g5N+CsC6`6aM^4(dWq2s$+_b}gZIpk6)Qkx zEfq46Jm<{k5Saw4vNb7loiZ8m0yCht)^jrQE<_unkaXEa;iHP0j6@-$)Y|9_iZ%Ix zm)3D5h1W@DXDu1YLM9$HQi>s1&B>KV=9MHT!;(L;osouP$ONQ%0zBO_A)B#4otRW2k0k_Dv|_2iswkSuvJvPE_x zn5?XIUZA0?lp11=Q6_~5k&Ij+xfLv+R^AyBvH_l{^BW - + + - + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - + - - - + + - - - - + + - - + + + - - - - + + + - - + + - - - - + + - - + + - - - - - - - - + - - + + - - + + - - + - - + + - - + + - - + - - + + - - + + - - - - + + - - - - + + - - + - - - - + + - - + + - - + + - + - + - - + + - - + - - + + - - - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__image__2__image_unsigned/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__image__2__image_unsigned/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..465751665712714585e1ad3e2d3a50b8452ea921 GIT binary patch literal 2800 zcmV)kiwFP!00000|LvVyZyUQ2$KUr;^sNsE0XV}ukQ7jX7(IY-`p`nJ0&nXh z)OG?{36OsJ4!P1=l9#e$IXGaza{Mrt6FK zpNoaNxLBnNw@!iF?%I%ah(LmfypKR(`m#)69 ze=KhPbYD~F{`M(=>zAvW_3!RuK3;!WtkPF^k=A=f`DQn=Pt`i^(lra-Yr%DHZMM`L zk67u`5RY>VaPF4j>g#v0SS+t7>tcc1qi@$Y%Zuw2$CUk!Ss7psxvblIV85a{oHdW! z7qK5lXKeh|JowT)_{n|PdSvUW4^`g;Xg+-fKK*#ifqyg)zIYF=C(fJ8TE8ge`;^hZ zed!l&wQ@h^Vr%e?TZ$_WzRM9XS;gS}iOeNt_}#>z^dVew@=*QI5`K0*HtY6VJdDWY z7{o9Y#mBHUdBSY>QZ3O<}4lN?U*V z`|@J@6+3s|R_Tg_L}X}8I6+--oC#2*4_hX{$b?P8)0yxX9aF^(3hx67aFhxK0r}E2 zP#~Ar2=EL9c#Q6zI4o!ccq;^er;H0W1fZ}~=al1LSMKuiWsd{kWnuu2V*rcVaf<;Q zF|bK^rpW;|3cL{tJPiWlvH?hP!fi=&6;%7}Lvfr^ zqQFRODJ4cqZ4zpfy1(k9oI0uH)1<;j7589P-RVmOR#2xE{0dyb{k(#Q0}H!N=ZBz{ zjR%bfjR)_U2l-wB>ce{l1q13fd=`uKU$6e-ZYps(M>zx&QN*p*`x4VxcC}F-%GwYO zv-tL4HLDJ0;1$#Bb*;HPkzDuBTg-88nSv*?<(3(_wMlrU*_Jt-Subz4RW=OF(T=b{ zyH{DZYhZ)8NFZ_fJqI-Ev&M_Yi)ZEqKYr_$mpin4d+U~uw{Euy&%+B|xpn(Yyy)EW zda-iX7irGn+p~?Tv%KzDy z3?8+!^Ovs~l)VB+B)|Lo{re&Vw1Gh*!>MHW|L^$xnPk}6FvNKY^CAPPW5@rP$3iqq zsQI5`&Ho&#DQ!m4!0~FqaeTK0FPkd(cDDr|cUx=|o@qu=+i9`4Nr>~tfX0BvfOp7% z+kpUQ4FU}U4Fc~F0^4~_8wfN8GzPpw2CS#vHBc4@w!?y3Ld*_E4YU23#H_6@G@vw~ zJXD(UI8bEKpxgpQjzHNYJRKlWHtx6phZ;AS>&aD^QymYARIN>LL!N~2NjOHm$3Q4Uf>aYu@Bl%lLjQQafO zOr%kY8yV_d30CdEt9HQ8=lk{~6;{Ipt6>7!(gzZpJw$@~5fW4)Lo_Gl#(1pbuy#8fFym``+Fie91N zy-X@HEx15@-TP%hRfDhYb$T;jG* zpkmYvthN}v*9;kD!p;cUC*@`0j0rnH2pz)>dZ zU61sQWL^moK>$PF$Aqz0mK*euGU<-m>p}pjy+rNN^xzZI0MvBObOg#|x+JX&g4q}? z2$dY?2(cHz`eaj(*_yWNJz18c=nbRZWPwE?ok`XyNtgU=CtzJ7i^O0&1Ll-+Tv_U? zCtFMIsOD?~fXVz5XgItHgerN!!QQO z9R%KaLvGVigS9|rP2RI!i=eHd@USRyF42MTAheP+J`@HVlJ$i!+Vn0e(L2n!WQRZo** zJO@goU1Da?Ud97DHg`e&zCKyv3Y^l*w&_o_FAu7-!Da|b;2*H7t zQc*zU7-b!|K}jvpQpc#tkT}SoL{v=noPsjvBHLSv5-CJb)OID1S|GHDkxQF6FQPy^ zv5$rY8rmh2AE$O0!RUMgQlMbYh!TRxJL0pjg5<=M^U_dMG2x8EL?J0ojin zy5vFjirT9PHPNyBTdpipRAd2aR?5PT@t71@$mQ@6#-t!9Oj0kbmBy#+ZO%_D%SMs| za%M=c6!H>*>?R2pK^uyX9IITAA7eH|Bvl6;WS^Vlg2bM4$?kvYA)id5g8%^3 C{8vx_ literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__image__3/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__image__3/why3session.xml index 46d3c2f88..b65e3ff04 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__image__3/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__image__3/why3session.xml @@ -2,131 +2,128 @@ - - + + - - - - + + + + - - - + + + + + - + - - + + - - + + - - + + + - - + + - - + + - - + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - - - - - - + + - - + + - - + + - - + + - - - + + - - + + - + - + - + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__image__3/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__image__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c553e13db2ac8ba959acfb570de0a6fb85ca3cca GIT binary patch literal 2493 zcmV;u2}1TCiwFP!00000|Lt7MZrfNA-SaDEKN#Rv)qMh!g%>dA z%}V%N|LG|=fB)z4+wLzm&BcHFv|-crX6--S`=_UGpTBO_Umn`;Ot^y;?0k&ez2i@O zN{>@P>^_DF2i>?iH>iJA3ChU+y3C*OgomU;dIM*wo)O5$kkU+J8&yKek!v+rMT#4q4fK zR=UkD|3@pw zt_C2u^egC<0VMaRTZpA&KTVZPl)I9)6*-h->EM-juv7j+pkgWH;40nkK4BQ$Ok~aWQ%}3|>(3t< zhx{%7rLg^G_t2ehsGY+ER^cRAVT4w^BwAqvSG*KlVSrb>0A67LSUdx;aACyaix7)v zjJvCZ>ILc8J(>B=!v;c48dk3TcFwQ&8T)?X|$XYzjYfQ+NX~ zo?aE?0Ic#%-Ia4trBk{);1OK$Ojy>KWsNz###|Mhu9!{BhP7;1vl|wzP#uNxF_t}l z!+HtNmgR3*{@yCXrk6iG0INQ8BQ~J4D<=A~ zGcP;y?9MD#XpTbpm;gL~F@1>yEbIKT&M)iy>kWDT5C8WTtCoMc8pi+9_@d;Rg56VJ}U-JF_u0|kRQ34?1sufR1QSYSD^yzvvuv;dfq0GLJq z%;3Im?(3l%7*>OI-5OIj)IUD@?>>Hch<;PYvb|oBXx#7*TQ?-O!VzJAe?^S9!>@0` zT_;Tb)*#G-pPo+j!)PCI2$n=-u)fpTW56V*F-Wy4?Gl9>(wdCV&2V ze}Dh)&ExvvT{$QlUsG4v zsHbc=QntOHk+L1aXdls$F6=4W5Z-hqylD>J1gDja;Cy9!e@LM2TA!chOn#adP$@DRIQ7qsg`enj4O7AZA@-SYSVBL%oP>bEB$^7r!inF(7u5?q7J$)EK zsN?;}&a=zMP3hf46dj6Dt9LWNqjm&QGdjp@)#jjgeBB*E)EhxG8bJp?BfX=J-l?J9 znV#MaR~9Gt)%2+n#K;JtmUrcNfGP5~O&Bw!sa&%z06qP4VB7;b0qd1rCV=8SArUz;Iv+pXV zk1S>=O)q>AF@K)95S2%chwm!pqd1rCQ%4s0I!6}lNYijyP>Ua$!4I|5f*L)i&a|Kw zT-1Q#aKkYxyHxH?3mQ#}j`#lkz2jXzQ`4doMb&$Qu!zAT28$T{rNp4>{nkpfbVV8f z$3y@wqyj%$1mKtoz;k5aI#d9T$-vn4%XHvJ%K#kH0eFrOT!#+8F(H7HN-z?Do8C%r zv#I|qqOgdRIjOCar8p~rFT~&AUnDCPytDz6)!Aw(l97;2 za2Ta?N;tz-q7uMg@*YhFSwaXhN7TZRv{FMck&UqOB&5XB>>y=y#sl&V4y!oQsAfrph`gXB-+sbkG3SjYAR|>GwB1I*HE5ZP3 z5WXZ4v1DN)MHT8Q09QQ-V?q`#S}8SI%eng)GiRy;Ak|i~;t++^8imk0MqNW7>S(hd zW2|v?9Y9rrlJ_MLQZ7aV010hPL6?-^RG_xf71zgEZlQI-F$4^EEz6)K*OZHwN^NB- z<6@E#$-5Lvi6DxAh}mSch@`hU+RC6w(K(YjZHOKyNTa$jj3})sz{0`bru+`V>1=G6gFmWJqkj*eWI+m ziaEN%UQlsQTvVRnu8U?ssuXL;qpAXMV=W59epFOI*$NT8V5iK1ZM{%eGBdo4l_e)C zPDIO?LdmUQ=fJ(MtxUxv(U5DZMMtTCWq>M%k;zP@l(4q4mDDLYRTM`Yx$J^}HU@HX zj;Y0ZP+Pew%Hl!Tx(=$;4aSsH$hcL6kZUVq6=A@Ypp``KZ?KSrWA1Vloz*4#x?Thq zwPHF8MjV&GMou9~t%Md<_?YViYD^GT8H-X - + + - + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - + - - - + + - - - - + + - - + + - - - - + + + - - + + - - - - + + - - - - - - - + + - - - - + - - - - + + - - + + - - + - - - - + + - - + + - + - - + + - - + + - - - - + + - - + + - - + - - + + - - + + - - + + - - + - - + - - + + - - + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__image__3__img/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__image__3__img/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..eaca6ea71ba87119d51e4159ecbe168bde9759be GIT binary patch literal 2802 zcmVwRk*?DX6;Tq>;xb)d ztbSiC+{MLBx^Szsh$#mpf`Gs=pb01g@_=*<0a*YWz|=2Yzm(f4XQF|)n?Bjpvmsr5 zUH!SZ{oQ>{gZta304^_YZdbp$kL7svWpR_fx{I{hE6R7fk$sxhahI-J@Iec%N^6Uy z=6J+PpT>BcV}NtF3|C*jiN#`hMOhaMUXCudANPA>Wq>)90`3Zj{nF=f*4^+>n10-P zVC}5#wpZb{PwvCU4IBS_XgVZ7cjRkzng}b-Haeao$|E`b8bg9Q6a^Do1nW>2e1?6F$dl#Ld@;ll;n?}==&V-pY9_a1StQjZ9k}Of*!{hT%9%8F}D*bwJYXqDi+3K^VAG`1r?he0Ef55u`rkgLfwJXaqGB|gk6+oa{-UhW} z42t_X2ogxM9MLR?Q_3HgY1nj|EH+#nFE8a|2L+8c*@XV4FHNtbxtY&x^kD7uX_*xuag3JoB~+I zjvET#mICX97n&Vlhrm0Z9SnEN1t7@*cjwQMmjEeeATF0~RaNI=EVwXw|Fe{3Il+uA z+)ELLRJ*E(VN<$9yw}Zoc<$ozV!5i9PV-1M!4WvYqv&*4l4zIotU(Gqk54caO8f0Y zahy=1f=Fx#CANfGC$tFlaMec{byCZxDTPle?$MmO*OvyUpiL_H5vYQPSp_G+YFKx6 z3}V^!-}T@1|Bm$kt=R#Q&%VM$m>(zhUZ6grpD97j_Y`B}%zNU21S!+m# zvNis~qP9Ic&6=YX_=$1#bFHU56IBmSO3ZOknaU%x0hQT;YMt;xQz>&gq+Z`ts_qAv zqutU0?OtWYu7Qo>B7wx^w-V5(&pIzUFJ71z{P>MoUhlv1&5c>Uy)nBF;W*NYo>eUauI&fSO6V2ya-YZ7!^bX@#=xH!I2%j<$H->lT~?Mm$?;e~L~SgHMP zxVQs=`-KotwxM?-bRu*jyc;5vIY5_umwcD}yOI3Cw~5D!f4O^9ZO^+{1_*Ck{m|wA zX666lO9oHcv-!i<4C-cpBa+{JT>gEL0s6q8li^e{{Qq}zeor#&>CA9p{vE_db&6GZ)=-~Ki!Et7-1UdxXAp|z_nm!Qd4CoAahYVOvy+fcb4s3=6cZ8T7j2dS9Gl^MW zUFbmRKzXb*<#C|MszJE{irfNao$!313@5Dm-zi(HK&-epS?-)jBC zF)Va2bTD)!12_eX14}sl7gP zYRZ$+dshs(mTS11ZW;iYV?$QEsIu zTT)aHNU;!UE5)@8^{xb)cHm7r;OFywdy)#9VS>#tfnw;2kOOkQA^X1*}P7_DNw*C50}#!w42oc(G3kU9RTH zn?2*K*|SQKkM)JkYt8Jk0{8TS1yraDTHKtGBd3JD=|KYDC>1gO^=xBJ$XsCOIHsWt8|NG1v4praQ#!ohL zI1EtR4$w!;9q=cdI~-bqw=MC&?BTGacCh^L`NO2>)gwfYtx}#phj`+6;O_KtYhbO% z@d2Q|KG4?(`uf0oULV*c!tA8+K`H3oRAP3p&T#nq+)Dj@KGEkB?|D9f-(@~ARmwBw z6T@JIjGiv8k_VG`!pKM&Xmt);3NGAV;2&HKDkaXDS1G1oP(jov(V&n@DZ1bQrqSfi5NK0fW^LowmX#PE8j%3h=>lmeFRWDU%tJ zRMZk>oTB=qFeSeYlsN?J8F~*3E*PB7LQ5lEf}nY33M|)NG3uzp$V>l#jINd8(lHN#gdC|Wobrjt zfO^2OxDWWC$XN>@~_Sm7!sn2;1wBIK`y=l zIY6*hVd6jm;GIXSY~YM@#Wi(YhLTGSE<5SzA5S(}5k1w!40$6)FI29zolK16YRH=G3CS5jEO#f4xbH#r5705nO0%;voi zB^RF9N1aJlC6JOQ<4R9)oLrECLd9#zV=0RdWB`>|@)Q7uB3sBzxr8#(gCcF#8pV(k zw>C1JBXgdDg=^{v>0D`wX<<^yB?o4rClNDXIVvr^($qOClJ=66uWKLGkZm?0TPLmK zWZ+ENrwf2^G4V)$N_-);J_))OS&Bp^IO#Z0Y*V-@Lul|GYgr@?AEal2ya8H>C^Gqo zld;IB-ZNWs*+Ezz6Ilx>yC5G+j*2mI6@9QO7oBl71mU>^!3|L;I$zr^BV?B?Ngr!2 z7*aOc8b?-?HYiQ57fEsMIggah7GZN7D2#{*IWq}#JtSk27nq0?xs=QE5;>foSeB16 z>f+c;p^zy9imW}SsNj;EQdG;upfM&C)`1k#xxfhkfvz}~+)faq E02~)lrvLx| literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__ping/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__ping/why3session.xml index 6219c1311..506e8d26b 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__ping/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__ping/why3session.xml @@ -2,497 +2,296 @@ - - + + - - - - - + + + + - - + - - + - - + - + - - + + - + - + - - + + - + - - - - - - + + - + - - + + - - - + + - - + - - - - + + - - - - + - - - - - + - - - - + + - - + + - - - - + + - - + + - - - + + - - - - + + - - - - - - - - - - - - + + - - + - - - - - - - - - - - - + + - - + + - - + - - - - - - - + + - - - - + + - + - - + + - - + + - - + + - - + + - - - - + + - - + + - - + + - - + - - + - - - - + + - - + - - - - + + - - + + - - + - - - - - - - - - + + - - + + - - + - - + - - + + - - + + - - - - + + - - + + - + - - - - + + - - - - + + - - + + - + - - - - - - - + + - - - - + + - - - - + + - - - - + + - - - + + - - - + + - - + + - - + - - - - - + - + - - - - + + - - - - + + - - + + - - - + + - - + - - - - + + - - + + - - + - - + + - - + - - + - - - - - - - - + + - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + diff --git a/examples/apps/ping/proof/sessions/icmpv4__ping/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__ping/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8893b114e731ad5412845061aeab8ab008d03f17 GIT binary patch literal 3677 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 literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive/why3session.xml index c0f6d60d4..492494034 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive/why3session.xml @@ -3,140 +3,97 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - - + + + + - - + - - + - - + - - - - - - - - - - - + + - - - - - - - + + - - - - - - - + + - - + - - - - + + - - - + + - - + - - - - + + - - - - + + - + - - - - + + - - + - - - - + + - - + + - - + - - + - + - - + - - - - + + - - + + - + diff --git a/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7b179afc6b043fc6180072aa213bb49ccd5b1a69 GIT binary patch literal 1695 zcmV;Q24MLgiwFP!00000|LvOJZ{s!+$KUl=^t~v+;co)F1zaF$1El+Km(!~;q{vi2 z>I9Cm!2b6)v}9YcrNpgNV}F=GrYza1mQahq>d>~`8Q-mM@8Y`qf~j5KcX)&Ju{i|1O-o#_@k`CIyIrp1 z9r}lq;(EF4Z4WMPs^*Wcs@bLUD*k=feOccBg?F*)F7V@I01S@;n5#px%AP zo3^RhAj$eNC_9Fdpl>Kav0W|KxVnxs1PTbA%;cf4GS?xLlpGew*=JOv#V)K~HqBnQP8RVh2@os5zU}42N0KaMtU+2hYVE ziJ+jUpy<0m5&UQ@>X+x-3|Sa9xmt5Q_|Avz*v+psSAq3Ll=wLfKG31u6J#;bbt<3g z`y~d7Tlh=?;(}-t*gu9JDEuk>d5`?rFaK-qE@{?(uDQ)g4)Ymh&kHmPGzv6+2xvS4 zz+TNza8PhiaPV$$aJUhmpnfV@T(Y=i@mtE`|6?aGUI*CIZ}x=~g%gDnKLRI)6@cq= zyuhHqpupf=!C@JNh_pE{~tYAzl7;puz!z&no1$$z_Gsv1Kf1X);0_5!9rn%ffV1K1gNJ&)4 zKT-X-OAfj;R(QBw1?;v>{(HlR7o$oc|!4* zBNXhW1fF9Qyg5k0Xqb;N1wT5c;2BWSR-kQnWwju=oh`nG4I>|#e7qVc7Ox13#cq&r zM2fSi!T}Yzj8dCuv3T^>W!@imeVsijdJn>mJ&eydo%L^VgxS2sd7`uCz&YeIyJ5tp zz)nEu>caaQr)iMVJ4}Dxs_rPT<9&?IvX*&7myh@cvGkqX*D*=>>!!)wU%yv_#{rr5-(i zmU=NhIYAX;Uni?V%36vio<__0JGvC-i_KzP@>;^9=g|@tkIv@Z!^THdc_Sm|Ry%8g zZ@5FHth9n6r9hez!g3HYyE@Sb8p29DBe$EYm{%;-EkRe8ahAY7DO$;KI($WPKfiWGEetRo{`DT~o_ zuwZq>Kmygt01Hex5Fx2VMy85FI!8V{MO1N6A}OAf^a_GAjRrEZRp5~Z$i0<3SP7^E z3dOYG3WNyClaZ@@#N>pB#-?DXU%<(=kA@{3!I|7AU=?ykowpt>Dr-W!rEMec;w zo+3|EV6+Q}6m{@6`h@9ui23Hy1ghmCaQ8OK#Ye*SUt6&l| pE~Km*&MIcJWVBPpF=rLBL@^O5Atj+ko)yob`Y)j8RPRbr006o-Ju(0Q literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive__c_recv/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive__c_recv/why3session.xml index 2937062bc..0d97a878a 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive__c_recv/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive__c_recv/why3session.xml @@ -2,35 +2,17 @@ - - + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + - + diff --git a/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive__c_recv/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__ping__socket__receive__c_recv/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c79d9755df40124069d5daa7dc19f76bcb1d5411 GIT binary patch literal 209 zcmV;?051O@iwFP!00000|J~8Cj>0eu0MI>Oai3r(DZ%3{r(?gpa$>twDiLbKN&G!U zFfuS81{TYbpKV#@vGz09LHn^bp0o~a&-rAg^N!_Q`7oBX^w0CiE3k=&h5zQ0@()jo z-qLG$pz%HrpKb8>&Chx^c}Sfej_uqpdp@dbFT3OIXS8qr$oIGasuGeA0vM&@6{6s_ zs1HRzx-a| - - + + - - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - + + - - + + - - - - - - - - + + - - - - - - - - - - - + + - + - + - + - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__ping__socket__send/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__ping__socket__send/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c37b696af8667d36915cdd09b550578759d3b302 GIT binary patch literal 919 zcmV;I18DpoiwFP!00000|Ls@XisMEQeb-myeF=2+y|K*=?cKRb`x=qt95+7 z?0?Q7*`-Lp5Z7JZU{^mhmj-dHHYvsSEPkHFuaDhRx&DHWF~hnkTWszlMR$c<;wm=x z-Irm4#Yg;5h+!GJs>hSPKg4>NpUadFA*Z{J2{)^bpmkT{s>JnrLmQ(scQLdie#2EA z3O1DXe_V9j+{Z%UL+T4XRIbp=A!s=~DCA=5$gMiED|F$Gi%gZZg`w)b|4^8Hv+^?; zn6r~F(UUK?8aa`f{-@_8ShjQJu zb#sr{b!}PZcXxj-e*JtmD;Iy{zs-hF*mXkm%>vl>4WJ(HiUyubG2cF92VMQ8XP=wD z5CdKq3a?QVZp~4+hNLjD^eUG24Bb&t?uq&`@=Q)i%!R)Gdk)YL+qMqd7N5{RG#)$b z=&fIt}N4XjGxB(-hxxQgsq0Yvj{SkL}b8IW)mH&7A(uT{ifQxU(liug4u z;**LlQBn7n%$YtAeiYKwln!}R8y~keI?KJReyzzr>nH;n!R9r;jfx$_Ei0D9mkdXZ{)da~$O6n1eL3?It%T=Uy6m1KM%5TS*NoDWV|B=FBsFMhjETl6k49M?oP`(|=ao=D!SBE_27<*Zq0km86}@B5NdU`? z^g8;AP#1!X1#6;~E=duzMxUasgo#l^#?VLt@k~Y`6>|wfaKb8N%qLShjuw+v2m}&Y zGE#yD6%0dZyyOa!L>ZOzXpKbz$&5#vq6}nXl6j$%1|Cp2$Gonrw2VM1Qw%xtfg2+Y z0t=oyX1K?IwsIx}0_iMN3M-{)8Z@rl136%+0#+GE8C8{xiB-Zo^d?wJq%VQX{s#Ajy{l##002-Nzli_< literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__ping__socket__send__c_send/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__ping__socket__send__c_send/why3session.xml index cd40d5cde..5128be9e5 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__ping__socket__send__c_send/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__ping__socket__send__c_send/why3session.xml @@ -2,35 +2,17 @@ - - + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + - + diff --git a/examples/apps/ping/proof/sessions/icmpv4__ping__socket__send__c_send/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__ping__socket__send__c_send/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4b61ff62786559bfa80feb884a9f8816ae791803 GIT binary patch literal 208 zcmV;>05AU^iwFP!00000|J~8CY6CG02H@RK(MPal`)rR{O0#!Ae%n%VkeG1i6!P}D z(2^;Ej3tW@=#$__nA$j_?RcD8$AR0f?~%_UJa17i4acdhqaVx@?!e%CJ~KXXSopWS zl?UGZoqE+1Dlh$2Z6WocReU`4%ed@uV%4AL`0p|L25N` K$h+U=0ssK8HD&<- literal 0 HcmV?d00001 diff --git a/examples/apps/ping/proof/sessions/icmpv4__print/why3session.xml b/examples/apps/ping/proof/sessions/icmpv4__print/why3session.xml index 6bee72320..4c90aa6f0 100644 --- a/examples/apps/ping/proof/sessions/icmpv4__print/why3session.xml +++ b/examples/apps/ping/proof/sessions/icmpv4__print/why3session.xml @@ -3,424 +3,349 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - - + + + + + - + - - + + - - - - - - + + - - - - + - - + + - + - - + + - + - - + + - - - + + - - - - + - - + + - - - + + - - + + - + - - - - + - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - + - - - - - - - - - - - + + - - - - - - + + - - + + - - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - - - - - - - - + + - + - - + + - - - + + - - + + - - + + - - + + - - + + - - - + + - - - - - - - + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - + + - - + + - - - - - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - - - - + + - - + + - + - - + + - + - - + + - - + + - - + + diff --git a/examples/apps/ping/proof/sessions/icmpv4__print/why3shapes.gz b/examples/apps/ping/proof/sessions/icmpv4__print/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..db9006da563ded25937de00891d86db7a1617aad GIT binary patch literal 6373 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 bId)Zr{c{4#M0z&nzmz~tkK0NqB*6ax^H4U{ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/36da430c86c15b75c2a5-__test_generating_message_sequence_independent__set_payload__buffer_first/why3session.xml b/tests/spark/proof/sessions/36da430c86c15b75c2a5-__test_generating_message_sequence_independent__set_payload__buffer_first/why3session.xml index f800bd6b4..758b30df4 100644 --- a/tests/spark/proof/sessions/36da430c86c15b75c2a5-__test_generating_message_sequence_independent__set_payload__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/36da430c86c15b75c2a5-__test_generating_message_sequence_independent__set_payload__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/36da430c86c15b75c2a5-__test_generating_message_sequence_independent__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/36da430c86c15b75c2a5-__test_generating_message_sequence_independent__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/67c13e5c619e448e843c-ence__sequence_size_defined_by_message_size__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/67c13e5c619e448e843c-ence__sequence_size_defined_by_message_size__set_field_value__buffer_last/why3session.xml index ac7ff84b0..159e3b592 100644 --- a/tests/spark/proof/sessions/67c13e5c619e448e843c-ence__sequence_size_defined_by_message_size__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/67c13e5c619e448e843c-ence__sequence_size_defined_by_message_size__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/67c13e5c619e448e843c-ence__sequence_size_defined_by_message_size__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/67c13e5c619e448e843c-ence__sequence_size_defined_by_message_size__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__available_space/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__available_space/why3session.xml index 2547778a8..a647cd444 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__available_space/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__available_space/why3session.xml @@ -3,36 +3,25 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8a840e5a1818db78999ca47dfc4940b4261b943f GIT binary patch literal 368 zcmV-$0gwJ4iwFP!00000|Lu~?YUD5wMfd)S?1uqW$(HTKY(oNB4&D|esgx1;g`{q} z|2}pn8JLhoNJtZ^(oU849pEuEzsQ3Do;>jbqH7W_Zd+T@=lc%I z!QaRHPS*JUi+s^#R~4GhHLXXlds~M925hj5s^zvrK)!+-T?MGQW~;?ogKg9M8W2Ew zbUkzsx(!lqgKEYum`2%7H#NIpu?bpxfZCWAmE9n$SoaW&i1n&f*tR`4C - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..002868a1c1c777656247b2cb64d95b9cd2141e35 GIT binary patch literal 421 zcmV;W0b2eaiwFP!00000|Lv7eYui8&#qatQy%)pI{+&JK;ESmt

yWM!TbQL6(iQ z4bHdky1{9n3876KDCn{*(qrBmy&tG->59reOnjh;V+fQeoX@Erjv*wT@;#NjA4Ayj zJkuSA5cgx@V+ob81i^eQ>L+;-q7vzgK0y<%#YX8(eUn29>V;c4&0RYhI(sleOkL! z^p#SbvT9|7h!NI*2Ckx);$ENP?A;~(H4K+$;iETs5e9gj2FhcYXuRXrUe}gZ zt!dS-FVLE&()8=4nYT*Q3tUYzqJYP#4#3 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__context/why3session.xml index 4efcd3e67..559af283a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__context/why3session.xml @@ -7,34 +7,30 @@ - + - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cb61055f5450fe4becf23a3054b01af4baf84691 GIT binary patch literal 705 zcmV;y0zUm8iwFP!00000|LvGfYuqpphVT9rz4cHEmNfc;rm&aL`~hFZSQ>3i*Sm}D zl;q!6&L>GsXcj57)O+w^dHm|tXy;*87;g61citTb3Z2J^8hO#-8TN;O)4>gN#DTnX z7|=ajhq$|TF3`~Z!l^s#o$F~FaZAqm!+xUc$+;blQ;HpryKZu!8~rdg(i>lIo{6*5 z)MGa+%d-uBE8v@HrmazyX_Y28D`6hLl<@uFw%Z4~&OgDuB0o*Cy^4{BW#tWie`P#x zzH?Y#mY(9Ko6^txBxQd!jE7--6pbD2!mVHGk8b|pc015E-6y5!gyktVt>kn6^M#Xn z-vJKebP5|30(Yw@qezZU<0Q~VwDNvdzd8{u>r}}B?{K-z0)36Mw zNL|Bu&Qe8`RE!Dri zR10J~RZo@vDr~0BKiUV(&P$w*EM|l?`o&Rf#=X#GX{L+OOn(5)bP1a2;xyC6Xr^=1 ztg5(FmRN{Vk(Cg^i)akh1_ILtrToNxm`Z4>xwJf>p;n;bppf%gV0u?eI|tPj`sBM# zq0ED=Yi`bC?J;tgcepRr9$*vQ}8KBRx-+3anD-gqh*3~5*|DecS|LsALm*iLa1lZ - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7f280bc280e92b153a7d179fe42f4c8f9d2cfc17 GIT binary patch literal 2467 zcmV;U30(FciwFP!00000|LvU1ZW}uihWGsxvmYFQ#XEt?0Xz$13>Z0^fwqm}EfJu| zK2keK=IN){x>%N4juT6YWOETgX;JKA@&CWBZjtV8F?8Q<#u&d(@yj^0_p`hEH0!=& z9?#|-PLN*uw}5xK#n}wMj~I4$?JV7+f5tO%Y^72dH?DEYzrt$PE&c-oXpeWZF#wF(wF=0dprM(_o=}T_!;NzqPz8XZt%m1FW!Bm7XI#T(x$(0 zmO|TN#CG*M%adv~9nn`5Zr`whedFE`96TRo87hzn_dd8bzAK`3UI1 z^kFh-@9)OcaMqvf@AYYKH=-KBTSvGi9)Ln^?MyH2c@bNB51F+TB*@DuiC+M@9rc9V1}S z>hK~;yyUxsoM>=7ZD%;8Y);bjQ}=nKM)IbY@h*Kv>U!X#()UPS|9~ob4^`lOdqh8n z6}<;5HD~*|qAOQ^x`OCSg6jC{_{+&zb^IakHV6Q3b@&6W6x+rO0e8#H* zj6IRa3THz%tCyd^O|dUz-oN^X@uZ_FvHO0X<|J;)@Vve6=p;)WulRC5OYwk)=?$=X zi5ZFUX3&4GDpqnI;Hpx?eS*k?gy#E_j^_U@;kdspD4~fuH93R%KUZcXHVsE}ZIx z>V@Bc;K%I#(&Vp>^kMHxV5F~qENng~>_rk^r)$;sUafi@tHLv0g`YI*OMYWJrd|1Y z{c?Cr%PvA$X&{d0VYcw9?SFJI_)m=V^*_q9-(btb;GOWO(NJ)=C9d%_Ci4BJ6e?LN zS$>Kv{28+FpCk((^dLV2vb-d+U9udeeg$@niFRvt*!}EqKVpZigsX(Bgxg2BW}TlA zz{uUue@AX)ZeN+4N`%WM0t_GlE}RK400r2l!h3{5)0-X_e1M98ih%X?5(cUQctpU3 z5nw%}?Xm#gdtLCf3^0`el>xO3c!vxiLDn*$BA}K5@3jp0@p`BcEPs=vH@E9&iKV;6 zL&fqKVOc?#RYMZ~8nu0aarJo1G4OGH4Ds&av-Q;b34WFbFR=vK85Zmr*10gK>25cE zFBpLu!TwE$uzwE{$m>B^@YP)hUltzx=GnRpcG|y)K~EU7O`x3*-y45^(b=a45IZtF>ewv6$}*&ZyF3# z5bWCiWA%OYef9lY_Wf2taE3b;KfbfgC6~6#wW~99<}-AryVt91-o9*3zNlCqcTurE z{8jnA+2A5KPgdPk-PH~36~fgFmu&`pdNY`#Zrn1zVdGY{_eI%z|Gw0-y4zSka5aI0 zG|~z!`$x7L{|)fkC$J|301Ob|7z?ydi2xX2z%dqRR|Xt~0q2Z>=Bd>ezr=5%z@e9CR{)$@5pWs+tV;m6WaHN>e>MJ@8ULKG{C)8spkDFM(f9R= zf7!-A=PUm8vwPZ}K;Y&P5zEC|t37EZ^sBYDZyk18UHU_Xodrnd$h)piLz$gn>0|G@ zs-QWmr3~A<*jQO^xo<(~VE+0fxxw|MW(y(}Hx)M(H|L0(Cx7K;wG4Y>&PQtqjKF0VcexT(}y#&)9{@)$e~QF@%$=b3o74*)r|wau$i69*u`d&cTEYDo|&AZkMw1P7_$t4qzo4E=MAGi8EQhJw$T#v&2O>=nh$l1eUXfq??er6(xaL=l`U zr_DBNo>+=GN(Rh9bfN?W&`<_e_IknlYuAl7>37 z96i1GC>8gmm1rcQlY*xNl7DoXp_x-^tR!aq|6i#q+>4v*TJ~NlN2@y5?mjbYjmLL0E!-5nOT!v z@(htda7fxIx#z3_n^e?BifCl!jFI4J5KJqsnY60poWR)D6s1bRD1OiEm9ISA>ZzUSb3{9|-fy9#{g~*-dGz}C5*Bqg=l8s87 zWmWzV0Qn-?m}zzr4VAgfXr@eQMY;E0a!R5=8eK&06pa(Lu{>y@A(d9T(SlUVI2sUu z8Z`@5E4Gl61Pm>su2?iWUS(GDGN$FTqa literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__equal/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__equal/why3session.xml index 4524dbaa3..a3467ddc4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__equal/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__equal/why3session.xml @@ -3,92 +3,81 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6c15c820737c578dcde1c1975c16e9da8cc11be0 GIT binary patch literal 1173 zcmV;G1Zw*qiwFP!00000|LvJgZ{s!)hVS|ny%!5`D1HLX0`8&c0zprOuEdZWCIS@O zmE=XzU*D1K1lc5u*!e=z2mx%#8qN%d4_{Kuc#3JfJjK%GZun#mJ!R_K?>KQD!UYqJXWW31x*#D8>#iL`X{pP@l;~7U?p&(*qLKSPeLX?0 zaNA+*h+ANy?J#Uxg`xd-d%M8jPHp4LyxskHqt-lUY}T zDhVuD?~Dg)7JqS%;%e0ep2;s)D^4tg<)-Vd$K+Zo_C-6zft$6drRBKy5IS0(jptK> z{|9)-8I>88rzp5;>IW2jCTS+=0FoY{V&du6Q1IbiI4C1jh*uSaJ!AoQD$`rpszHcCOuaor~3EjI# zq?-1E``wx38TO6u`KvLf&y$N;C_WMevrx=Jaez=v6Kne-3Ubzo&j`V+6SGbnwV^Px zPJBiPW}TRI;*kA>nYR<4nSog*W|=rjCKf+#E*3w&lPq5EEMxH*4o??v`+uT$&)zIg z??Rrc${=H1jJG-Il$A%&8fA7ymmEptU*J!$l`y#oGEzDz6%{R9lu8I+>a2TU?|8asMI^!7VyzNvBo8x+=nIsnMUvJ;6A1-a4rGK-j$~w`x{7RVBNj{+ ztOJk2XrsL>K4zg|@}w$hYR7?ulhIkSPJ@ALy>%sKsik2fT`966du}4FHYIWigy9wi zU6u)8s)0Go(;J7YW!6|5NGcZPRE}WDWF9$EGRZO-*(xh*veQLz36rS7=LEG@Mj9b= zamYrl%9Oc*Gt#Gw$Q7iNJ(rdw8r06Rk*}OF%0kjybLB~~D_4~CU@#i8i6&MAv*MC3 zLKGoo^d)){{0F*d?rw~FvVzK_y5!n<4@D$f!0C+AX~qi`W!!QnE8(378^QbHjZ~3q zrUXa_Q#@(aWW^+SNOg?tF!CePN!JEdt+*<+6?*C+sEQ%7Xi-nWl5h-tt_4tGPsJ%+ nCM#Vzmy8F&=o|7$rARed$hEeXr%J3RD^vXkB?*8tRWbko060VB literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_condition/why3session.xml index 408a22950..cf768b7ba 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_condition/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_condition/why3session.xml @@ -3,48 +3,37 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - - - - - - - + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0092b72c5cbdee7bdef6177cd092bdf18e2096b7 GIT binary patch literal 653 zcmV;80&@KyiwFP!00000|LvDeZrd;rh4(r|kH8;Mlz?QRjZp(eyD79KhQnbZz>y7! z4wBoKloO{-T%<)TH3_VRAec{_;o~<$IjjJ~-4ZS#Y)nsE=n0Jh2j=nK`}LhMj{5c% zLc8gVxuIczD>BBnw03c5OP!-Gm|Ixy($DMk;;>z}!MJw7etw)%<>2^fTQ@TgR8QpBdy&0}yOIes{MPjjRHzAL9Lr06v}aXzJElI zc=Bj6WB4B459o`S)EDvKOM>*o?u?BgSwB;M;EUzAaUpER7W=R@zfqC8=JesmjjQ3} zvJt7jTwEe=#A=4XiN|XgjNN%p{o#z5^0MtmLrN#j59 zuMYgH)f|!kM**C+!#@$OM#3SQhwK>U>J`jS+}zKF`I!o{I22}aF3h - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1ad2a9644515fcddcebcedafd880d312833a8c69 GIT binary patch literal 418 zcmV;T0bTwdiwFP!00000|Lv7MkJ~T|hIjpnZe8_dOB!ytCAjQ`SAiC(R;V2tvJy1^ zzVf9hdUu%;v|S7X8bs>lLqe|%cs{_Gf}b;C3Q(w%`xHxjP6eJIQ}7-T{B_N7_~AWL zPA4d7I(R?QvcOmJJ|-H_hhtu*?EMLbBh?ejJfw1oEuE|zndZ;q_ummrOUTQ*GsQI) z^t(fA2#@1yIZ;_miw4^JKcMXVkmt`jZv?)r9Ow}-2f(%}R-!J*W0Uvf3U z+hxaSoXgoS-(V(IHnVMJ+syX&%vRpQ{9hJUp4ShypYHY!Z12E7^&V>*%|%NHM)VLx z6Ueoif(?#4Lgzk-mxh_PZ+OeClSar8P{|nEfHpebs1W;_#F^DrM=q3Y49ULd#!|or zB9bCW%G4yuTpeUvGtqJbg3zMWJ(t?@HdrNBCB>*Q8jLgKFruzyNr%X7 - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..21cc08a26f79ecb6841f01a1b308b9856f598cc5 GIT binary patch literal 274 zcmV+t0qy=DiwFP!00000|LsycZo@DP-F=E4fr>0y8ZvYV+P%n1&?40eaBM@8jpp`s z5)=ix6dl?r3qg>Ncps362@!8K$Kf53C8w2YnnuKvltQn97?TW)Vaa96h${`tHk`9C zCEJx}+S8Q#L?ksUoKma=EHG zs>2@>z(&C5kxnUK8du7R#(G`doZd`-S#RVt*E5zknx(1tw0=mdKGOXy|0C!Idh4Qs zu(KM#>0W{9;+BRGJA&3es3+a@2Kvq@Zi8Y&49*8 - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cab5c1b3a333e3f886df7a2c64e8e1f54d6fb8ea GIT binary patch literal 341 zcmV-b0jmBViwFP!00000|ILuWZX6*DhVMK@9|2~-z@e4)vg*9RUM&N5f;7830=8=2 zz9draRW2J@!Uuom|6pwNGcPpm*!ZBv8IcO%=h4g!c@?J1M zTE92MK4|dV=*M0MmfCac7k%F77wvp|8LuR@O=zb+vfgA9#n)rJVSlBAl{`;_%G-^u zHRI8^)I9euW~0JFk9}ah)lq3j>isc&XZFR=nfA`-=P8fx?x)7-y}talCpnGh=_{js z@UVt#t+(EhkE}gViULu4tACi^pjNNN1s|d4n8BoVU6#bW8Xy-^P7~51o=Wan+- zY;Yvnvy0?Sir&}>Eh - + - - - - + + + + - + - - - - + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d9e7ba54856a2d4a6915cee14a5c14d96974ef6e GIT binary patch literal 833 zcmV-H1HSwpiwFP!00000|LvGfZ`(K!hVS|nd+&wAZyxrL0u34<$Z4S~F(ikn07o_? zB}o5$DSzyG(-_T%3fTJP4rFsfL(*_fO(PdukN1k5*Iyf zhU4X#Sim?uJ{w%o-D>#m`)|0SYPiBbYZjs0a9H||R@hPW9uxZAwabe~?-O;+0}joy z_5P0f9&gF}+|VNVc;EHQ&ihqIiDG%S?8>};wP=P-#27rhDsf!413eCYo4bFKZ_{0o zqh^<5>17o8)y;Oa?&bj(P4aC?vWq<=)kL!5n=~tB-qS|9nqN<&*V z1FQ4xsoKl9NQ-nVb^F^)K)}anthkAi^$bIWLHT7@$+dF@k>Asl9Q{Tz>mPfJXkss!fzko-WpT~Iw*m&E~H?!Y|-lHFS%hH}}2jw@} z&3pNr>aU~Uhp>-7gzckzZY`V;%i9yg?8flF5VL9WF}>m91oz4RfW4f*yZjqNGb4t& zHWOf|XTngO{32FWw%`;+C6fTlM2bNZOW7#^1%|0V;447o1n1J~1SS|xJSQ8OQ^o}6 zOmYEB6nj|^H!@lYEQAs+6c=3bpfwr6a^Q)TAYM5YSt^Aw6%|@xH3p@G&Y*QPT;&oZ zDq&Ly)+BI_yAU8LL}mr(#JLq>43d?Q0U6^~XCk4MrqUxX#Y6@a0*$XzRTPYeAc_nO zf+|InIYEHK94$9-)Ie8>n2}sMl7ZRsIEjFy7?QJ6STP2fN+uPufEc0#n=or4L230~WGO#k2j3`Swp*3G;0#^M1 L;etjh_#FTMAU2ef literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_last/why3session.xml index 5c913db64..ce1b14f57 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_last/why3session.xml @@ -3,45 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..91288e8193f7f7a80c46f173d54d4ca19ce2e377 GIT binary patch literal 680 zcmV;Z0$2SXiwFP!00000|Ls=GZrd;ryz47^Zcu;^k)jSRkRFN_$g$9sSdmMIfGn#L z9VGqwuKcRws!iL(23!ONWSJZfXNTO8(hazDe*>ZMpTR%0u!zpa_73_8Z5oH+OTR++ z2+e?-+wn4i#6HKOV^`Ehr_V!_p@L36gP)!(eycreN^BYw&NX3Q!z%zBBZ75u>-$aEFR!3 zB%)5+K@L4SYr%uvUHj17TkElpcQ6`Z?Se{%Ia(VcHlC(BY(2Kg(%LH;Zm^w`b?aZm zFmz2!8|?58^lsIY!FH046E6J~C+%kYp>~W<@Yln zNNk{PkgNrV`+WQ1)NbhdcR_fb8h-I~d5z$wTZL~Um|bE7)7hPlV0MWSJXSLm!R!(v zcr0czg2mGje3XOJX_P^1Z4d1n;T>F6suGUxUc4T+{M9p>edk>RLptv57xs)-`AIkV z1bWZ#c5oWi;`NA}`-psq^R0II5)a)3^UZCRnLMvC2&EnK48Rp0R8F5#mYj24zu}*X z%gia;#mya=cS&mrUpAXKO!5R(VTm6w4)B4bL`0ZL{{ z2wrI;K`_NpGi?}G3JD}L9YEJ!`8tT&=cuKpFB9@mqg29_1j;iJh)OW;ndZhb!3_#S zkq=H1wiuUFS*;uj#f{;GtQiESQToDQsa;T{kw7|=b)n0`3m05T!l5JrEkK*x6;2oB O+Jf(yUd#&v5C8xMy+sQE literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_size/why3session.xml index c26ce145c..d928486ae 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_size/why3session.xml @@ -3,45 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12f73412f166e41709c3c75693bb56713c2617f4 GIT binary patch literal 544 zcmV+*0^j`~iwFP!00000|Ls^!Z=)~}z4I&fC)j2%_MwMds*SYT(<)bM@Qhm|LJ&An z`tR3-MvbbjwEdt>s$2}n&x7ary|E!KksexH*WT6b4*MG0h@m0;({CAXu^D)}9h(=h z5`Emi2+nxj#RoUsW5-!o{>Gazu9r)^SqU%F1>?r`++ok&IV5z)whztTIpV(FVXQZ; zb88+3ykqA=%?&xf?T1b8T-P(PPkoy{jT^eAjuT=8$5#dRn>O-3y2seVvv^aUDS?%^ z9jCs-rY6^>5yy^yG4w%fJ~6092IYas%VbdAj=5Y#@Oly8n+QtN-15ZJD*yG-q>QsY zX!0P=d=#geo@ZQHIY$s-O&PQR!gwG6?U%r~p6Y&oW~TP-+ya!XVf} zkh!;v6$E2J$dEwd|3IEiAw=$3ltxMhnU{oRp;42~tx*Z2vLK)U%0*DVDugtatP~1} z6cV5i36y8DK=44;Tcs40GKZiG@C3%F!g@|1$f%NJz$* - + - - - - + + + + - + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - - - + - - - + + - - + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cff090efddaace19664ea086b80deb6624569d99 GIT binary patch literal 2330 zcmV+#3FY=5iwFP!00000|LvVyZ`(Q&fZz2i_H7>)2Ox)c;ADX;(1R@yoP9aat1!H^ z!a9y?D@C)veuwfUNh3FDYa4OH7h5t%!{Kn|(?}ta;R?g>*t?w+2ee` zJd60(@;2cgI9sLlVfmPlO$=@BhRL^fx!NE`7pf3SEa0yY1&P z&%ShBOw0Z=4*ku%>#oykg&$Jag`4@1z6@RGZ*xvdl3p!l{m|t;&El$M^uzpiHtQBQ zJqa$yu0P>L%g3WD{D`Z~r7b)1fN6vedJ`K1#x5^f*eJZf1r8s}uwq|^+NxHLO_$X4 z8E1X$7RwYEt=2jX zC!L02!ohNr5z`LdwpIuKK%8^3?Xk;>|5s#6ANn*OHdb}BH2*Ms+&S#=Y&`Piw&{LI zJ6ldQDEW|}n?X(V+%H$dp1w;YjqT%M-}gA&bj!5Bczb<)hyU1|^6v_gF&MgVyQHY? zx*1aMkK=@-h93*NwbIpB`Z&ec+EDljLm%YY@$GF{;53=%XEoFiIdzEqtN*aET{QU5 z3nT>eGxW1WS71mZ2G(}2`u~lm6$s}$+vjF=1;Qyqq1t$F?s?$0Xm<;JZ1)e;zb&bkM*dKm!#tuQX*VXdZ^hLEb8~?&|O_ z7Fv5xt1(xmaAm)Zt4$8>cvS)TrU6)AtsDh_4gP+yp3RoC*1o6H*0$#A=g@K*s7$`z zs8o67RN>EIg;%bek}J)a@?(q;0?rBmhtK~>q#OtU{MZE8pIK`J@K?itT3Ng{0^HXC z=ByAVCYsOd1q2)(K9edB1RppyeBc@Qz^j4JeoMCk z6+d6SCd5ecW$K0!T&<>HqPrPxwq8uofN!5E_@=OU5IBz^v%$&}`4>Uv5k$U5%#+3n zm*e%P||1;0YU6d>{>n4f6XUuO&YfIj=5xD{|^?s*1ulj>7uNWsAbP6{;ekE{LvB*e!^zo1)HULG(*lP?ttm z7S!!gwJxZ2L1jVRC{^o%S{GCn)GbqW_2LOuFTMmrbsgic3ZkjaQ(V{GQtTh146V61Jn37{%>I#ZM|^Lm=H1u$&_X+ zGbW;lL0gk0NwFqc4mN1?$$*xLon^aN?SI!68Z&gwuwc zLqeRrOx3CTdzmU{tnla(1w!N=bJSU6M|12cD3aGjiZ|Q{WH}g-l4IV33qG5ueFU_e zStwG_h!mxFTnTTCM~ZM2nBkmhOPWj`b&1C3pbP@duw#*Hoq;E1t@JGGoOFo=E*q7& z6~g8iSuw-}jwV^FIArA!bCFUF^A>zC(FCQW&|XBV&>IJifu(~Yr5j75w;@L+Z4B0X z6f98YaIUlnC|Qv*O)}bW7PK%ah-8EbkhoNt1&NWlu}9k&FOp@-^9WLdM!F&=$|YtI zMdr3hxrXckZcIXOjlKkL`zl3TKoYc~guPDJH3X?(69n(;v5YlwPv(U}|0cQES2H1-L0Q~}U A4FCWD literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_first/why3session.xml index bf07b11ae..ff254d8ec 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6d46b1af4690591464673456a32651ca0ee96587 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&(eh6T^)rMqXY@ws7ta6y literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_last/why3session.xml index d1c1dbc95..0c59023eb 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4831f8bf04aa0583456c6b5faeb4c5c31bd30546 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%zLnYq8Gk%y7Fr?-ixr-^}~k&myLsiC2% Zuh|w8pFo2z1`2+H46JLm+D8IS001q!6(s-w literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract/why3session.xml index 5e2e9707d..708410822 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fd84087cc5affec3450731e6345b4c0f47e8cc8f GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|LvAdOB_KEhVT6=a?2qIU0wYNyNAgkL=aD5uS0crwGOPi zvO8+buTRa2sH`Rkibisnq3L<2>V2R2=su=-iA5h$y!y9W>kkuI-oB!ejaXm$pt8pmb^L{Pj~fR z(bS!h`BP2`LigrAX;}3eTAeVRt?PXc@80?Ny0vF?AW?Qu`nz}@y9ZqQKXU2c;8Ow#hZRR{Nia&KH+Y^^TO=R%nA3G{quMDpbD#1dBX{;tl`+8i!QD literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract__2/why3session.xml index 4d2482800..893347e1c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract__2/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__extract__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2706b88eca6768a5123afc845d5859c7a77f8f9b GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDeYa1~ThVS|nz4cH68jU_7IcyK5fsj-2bs3GMWWlk6 zy-Aw>`p!BuA2?|V)XfLIEJA*E-gjPUcjaR`;K=%r%JqWI2JVN&C9MWpjI?ZxzO61Q zeWCff-VCS9BP>v%kshU0Jv$$-`}HZES9SbLZJ)|;Nqh8(#*f2|7K3NtNb|Zl8BaF_ zcj)TQ$-$FW7@>Q4r!*}36)jFGoh{2f6Y&jrA9q`OpZ27cO)ULwEbOs+kWBykWcrs` z)%^oe1Anw(j;6AQ$L;O6l$@zQg@M2zR zTz(!-s12+2I5UUCD3dZ6SPMMw^Cg4GP5#6i?N66}yju3>%d5KT*TavxnUv?b+ZLah zE#b}Zh%UVC>-TX*JkDUVfnGtb@SI@HAA*(MZ=#*kdiCwJ}7t3{0nf$?{4#{f;A=bRI;|&L2f=IpJKE+ zxD-qH0AInXTw5>&O{id_Ms$T^Kyp=MfkH(nt;qQdTx||E1F&teMrW~**H|5)Kt^Sg z7{JP}!7wrT+$wqsfuj!4CJ2?$q)p~jD5JL88}CvQP@9-B;{;h%z~l@f31Xo|$0mkg zEZ1yPZL9@yN?TvSQ1GduOV*d@Nv2S<^BAZJ#}+i&RGQDx2i94jq`=Fq7IT82ZFImz z=PJSo(K(ai6uDLvGPAD6WJw_yL?&>Qg$usQLQNE?l$|M(O0hLjAf1A&S@Fd{Nr-U@ k0gRG55k;mMOexj|5jdIXgpy?~Qwo6UC+vE=@(>RI0Q}-v00000 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__offset/why3session.xml index 2490357e4..c975ff067 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d9b821dac514ed4cedc96b4e8ce29ef569059429 GIT binary patch literal 235 zcmV98jGziwi5ptO@_T2T;C*~eg-uif% zKNJTHi(bn$`~ur;(v7g&p8ns-M#po$bjusgYS2&JjOkU&&5ZF~@W^4y>&``0xNB8^ z>v=j|f7DODYhA`x-b!F?G*(orwiUB)DNwALW4(K@&)%@O6lw<7iC8#!C7`I=St6*W l0?}=d#D={SFKu!JAHYrPyaP!nT$BPi^9_bW`pNSH003EcaFGB2 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_length/why3session.xml index 9ea9e1777..384448f8c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_length/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c534c14165fa9432ccadad4c0a554bb90bc4421a GIT binary patch literal 388 zcmV-~0ek)*iwFP!00000|J9UDPQx$|h4(oHM;QOau@_x*gFs@5y0ymkm_|yI$Z@N3 zdkmoqDpUvpq;4$7dY(7$vz>g8;kn0M>uuW~Ftylc^!bR7X-{~I-9+>Bb*N}J=4U%? zaij_{ptW`$Q|yk`21@M#b363b?r56uiL8w+b;0_5nucWU0lR%!9212NJQP93ME+Ff z%VK`$Gaa*iuQwI>G - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_tag/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_tag/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..64721f3df5133630da277b7d9150187ea93311bd GIT binary patch literal 388 zcmV-~0ek)*iwFP!00000|J9VsZrd;rMfduOegcOtQHw0R31T42z*}O-872Z`S)gdc z`TNkZv#61@Rgnbkh9HSMk9!7WStC7RF? z=O>)FK_v9vpVyp*qxZzQKVa#1qxV~$XMAMuQ_lnWxX<%0dw;-TUoWT3v=R4JP%v|R zOY_@gaW@t|7Jtb%SNS{*eK}W|Pn}0t;|u{T(DKJ)Y!2tEdT%>y>__Ol_w7f_a0l;Quwy!zK4N1fZk z9>3>r`qk`LWmOi%ub!XI#F8Z-g|SSOVfU4#yjfkf5? zP)s1Gio~CZY;bH_W1=J?)m9a>V3D;IokFLpNH!sKzz(Fu)NyC5Ye5Akk(DJ8%qf#< ik_f>iK~ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1230820c7d9c9df0b38a374e2821f28f71e20e98 GIT binary patch literal 1712 zcmV;h22c4PiwFP!00000|LvPgZyQMtfbab)_B?|HiuEpFeDEb01IFYs(6zyOB@M`u zrqv4K{q@U!NVa7uw_w@?n?E-I_P&bP&*fzN6`eFRL z-6Z^g^K}|8`;RK!th(EJ{TWxO>aPC63-rt7yiWgMn?hY<#CrSL=K0sUj;U?FVAm`c zb$yf8Yy6bzIxH7m`r6gC-{hQHl3uUoO;_h8&EtB;Xkf9K&+FB)A;ET7`X9WQ!Ekkr zpK(1sI%D5&Lw7}Lcgwm>tMAf!(5?=fcD-y#;|{yD(>ylo(Dq{8^BghGy59E$4Bf;A+TOnN$S1bU;7y-X7Yp?_?ChV3cQ{eZTIaNEg3%jrkQumqV8^2X-yUSwxb`bj@&a<<6fIh z8VUA_RsUESAHw-qB&p%{c(n~Ac|4HRzXg&!RR+RoQt(&Ez<162_Zsh|;*^SWl8Q6a z*QMx`qEm{_duscdZfC-(U9M8w-A=JIM0E>{dHmzz-q^?CyVCGGyv(AR9_Rm2Sb=}x z3KXy$0n1??+#?GwX!$O*Py<>ruVh}yyi(Nr&f2_sA{M$7x)i$n_`3coIIuqf2XGJv zV|u-e24<5m0fTu%Kt1XL&WHd{Yy!^i zl;E9q0R;hXqzCxc+0+6kc@OH;VJL_|$zKf7^HM^9?yP9lUnS#(O~WV7r~``3qF; zU#+G<_m=x1b{fS+;172<|V(9O1yI?YjA28lHZQdOdMK z4siONmJTM^gG$Nca2m6l9xhBNOgTey-ak{|C{!w>j;h7Qr-a)yhJu8Ggo1=$1quCe zz%KRga`#@hvHKguaxzd(2Fl66J3kqCA`ULQ%LA>$<*R<5xGbj>rF}R@bKXn)P*s4E z$&`5tnK5o9_yCR@WG+Ew+5ZRr^ix$x>uHX`D;}Iii5W35k~L9t85{|TrwMsxB*|!Maz*PP<0R)HB-`rD8VEWQWd6@foG?+@y>heqIQC-C>4t;F-AhV z(h6miF{7g36`I_E&PeWQQlGWSBxEWOGO9=u#jK42$p*!(2ti9iu0aw4R{11pY8|`@!djK+0Y^*I z)(UQtv2Kte zuPd;$D?zbr1vyq}qf!jy+mLNcrk9dc4$4ReHiLkq1+AvZY06l`faa3Dl&Yk2v^r41 z38V<^Vs@D;XEDT>QtJH$Dp+YqA<{17%rwhjLJ-DSvS{#^tCDj*bD(IzOcgsI32Vh5MuSn| zkQ1yj+G?g9CMtCv4JHd2ERZcGP`0*i literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_value__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_value__2/why3session.xml new file mode 100644 index 000000000..6b696e692 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_value__2/why3session.xml @@ -0,0 +1,160 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_value__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__get_value__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..21ede2025237d6fdea2a507d0dad2cc89aaba19e GIT binary patch literal 3135 zcmV-F48ZdriwFP!00000|LvX2Zrex}hWC7mSx?YFol|#UGJrP57zomv0k=Y3(*hjZ zEy;~!o_D_&r&VRZ* zna<|!#?i;(E4aHncGIc**)li38&A`{i*D}5{%Z^CAKd@cUVHmzA{P%e0|M`2Fi9jV8;46SWz&la5s)D3~w+ws)heoJmCW!su9|GVWk zT6=YHqL_}>T)iJfpcf;rnVO5n2tTJ>#l6WrHc>e+BAdl|0-Kxt{IfAMbmKO9Ck=)QqmFLuWk=ew_;7QX7Y z76SwmpwC(HVP`cV%k!hfcT)?zk6g}JEwCjQ{KayCcPHqg%li*nTKSFuJtZ-{W;^4A z?mgI(Q+QTtdU6BqF){2YdBOW zR47y^Trd>K3LJ|5YgK(!eO3MCs(!}`Y;~vW$l}vKOm60r+wuJ8eVUEO{^y+jx}TSa z{oQNFs~1$tQ>i1q-n@EW5cHZ58)nRCF_Sjr*zztdh!#`}@=%(~B5H_A!q!qE zpKG2*eaoyqw2tbI%-*za2}FT8C;gtM-JUkx?*0IIsdVCqz!e2{AhA5U!33TiCbk9!0|V>OaT%oe08n7>zA^S}9OL6V$Jn=Z zj32pojJ=3xcJC*|gzMcSaN#h3mDYD)usphf!P&83Yg{let|c8V0|xk!50S9@1y zYVqyw#U1SB4xT@Eu$Mb{z@562c`7@Z3kz`A1NW)#VAsgLVoAkfC2mo9Qh8E&az;Ga z`lV!&@iGeq9eRWSu!{O&iLGBHyA7=+yz7y3~J#1K8Se*zeYsB_IX2sNJU))eahl zb|+8|^#xVemnW&yXE3%FK+pCo!?lfGyZnIzpHuoXdgXo!Jc++U`oTb{ey3CUciH@V z+rT#e(?`qMm!fgIx7hEWD|_`cI^Yp@ydOHAM-F%e%JI`a#Y_`x$z5qQ+a?; z(NWP+(NWRyV$ZR5tz5Kx;aKUf1x3~mKtZ>hw;Ts%j`M+;<2{c?mzR{uejHhYE1Ksp ztFDylN~vP&IM`}BBy>CaT$}O7$6=`qb!To*M0$2zCmHs3xMCh)RePGZCzsh-xCLi8wh#oCG1}eVMS>lvrDe zH9tmsj$^dDM%g=k61y7kgmZYcBYCRgBk<-?PjZwu)?N>sLsRl*Pg37@J9Xr2uQ=pV z^>X{IN3)y~Q=w9!QlWBjP}zQA+H6Gs+lmEiI8-Q9C{!q1CKT5Hfz!6$zgEFl!B@dw zq~H%+z@&!&&vgddN?xxa`rtA8ke!LqnP6zN`?A^S4OAMv_MP|2r9Li=E_P&t#BCbx z1A1_frPo@xXk9j-f|dqlLeT$!{|M1orvs&s7%c^`u?$*asQ&zuTjlbwkIH6d6lj(KnuVkyAff~( zsM;K=)Mo1l$%3OrZNN*X^13al4aF|b0K5&~e2H(n=3gVZTA#T=vl z`sgg<5HZ-&DS!sGE_I8fgt0;Lz=REoSr;=(g=Ktzjfp7f8p{$=(_YgMMGPU^tT-?k zN-5sR2#kWBQ_3!B8d;3W3q@HWdvMF)&Z5ky$Av8^MWV zlr<`9>ao$*NN0nyDre3$Eb5}bE3c`OB2qTdutdmQ_{h*@D=3VM-s=YGjFw)4&>*QL zNFjTXXx6x*a4%Xkjh3jW&0rv#m{<~+C8eTF0vO~hN-5jW+$wJa@Tg>kYbO40%_25L^>?Ik||jlHA#XchNToVj(HZiG$9GkwKAs6KFhLXHBE^srI6}! zS)!*1pbs+g9H{%;G4z5N=1Q6(Zzz?O2OTYh?u9VV^aWXjMf`_RN%0&}0#~ zBgQaF)f}}!>JnwMQqFNn>?ozMAx*_73~5AU@97GbF-K##GNdeDBEc!|nTbG^5EV>G zVVZ(q1VNFp7$YyU%|!#2tWTz3DH*k7k;`D|vLr1M4N}P*E}IYySZ}CGrIGr=e4(Gx zG6&%ZdZm-L5$B;qk zz%x?vF`x|7(UE+mF_?VGLIF+k06YncxWJ~002Pn8I=G4 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize/why3session.xml index 241286354..ce0c129f1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize/why3session.xml @@ -3,183 +3,168 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..88c824c9fede1adbf5408e0f96bace407058d7d8 GIT binary patch literal 1937 zcmV;C2X6QuiwFP!00000|Lt1aZW~DseebW>w*huAK#_F^#sm1p*Z{#k4fNVz-IB)0 zvPWtg$$tH^bg`vaj%By(c$5wTxz%E`$aBb3r7HCwsBODNdwF%66JO5r^)HuyO<*EE zQ2IKf%PzLv?3U&o&HB5~VIn7Lg7oM7CesB?7kPDAU-mo)JC4^6Jb3JEVkYvU{?!w_ zxM=d_b^oDf*2T^zm(w8C%&w;f68IyjU+L_qZaNY896$D>(+wuHC(>(jsf1Y3zuLbI~@H=|EAw2HbQjKoj;71P4;E>k@~B)veSmHXX})| zOzc09MR*~NIA9Gkg8sIk-vi`7Qt9R^ghn2IK=F@EybC6t4E<~ZV$F$PasvA}VVg%u zS+cvuiXX{;N8}%#=~xS=TnjsSk5r#F)n^sB6<$o?78N7uCrkS8Tco=?h(^j!n(`&P z6J~W}`m~v@99yv784uQsY@amSXLNa$n7lYP_Rm2zLp?6aPn+rfV+ea2D&%0ad zyQ^8-UgpJuKILU*eg4w7%j&7_+`S`snWt4j*T}@ZFMOG=a8pX2Z-QHw?yyIA;`Qef2hVMPyadDu4;F~E3{wN7~??=na)1g5vv|FqbFqM6(BTPG9I_N03 zn)&V~?z?$kZgflCl)^N(i))H`_2IAd+pr$pG}NFr+VoGY=;fTrm6)e#b6;<&{fw4* zwKINdH@QJMZ0@XbfjdYBXY=>2+H%P24mrWeVp#ob&lUq=-C42CBw(kqMgbTFU=)C#L;&vCe+clfKKiD*PD4`$Zsxh6ExT7zh7t6brW}X%QB>YS zRECPc)&}Wrn8&QJ(@=nSxu_TwU{ru7x75eefN}S4JPkP2(|`j6;7DEcx~qhvO^~ns zh2~XeU;Rq6uYPuOAD|cgc|Z8q9pC*8%29yb{SnI0RoCnN2<6CNHVr5Z#bik!QvngA zAxLDjHZICyEf}+V@WKtk>Pzpj)7T8KO$wSf*vazK3I!jNvBmzb^WNHxlX zR;W}7B6;@b3a2TZ6iP=eTuo0O=II~^sKgSSF$ls7;2gm@B?|yg5fVim&NSMn?4?18 zDn%nyhN3wD58N^egJC0kn5Q=$POBJEC$dGCNLe^9Merb8&e}ws*~lGpxTAUU1xZUR z+L+==B$19;r1M@NL~b9+|Fn=k z)eJ#4#gr_;2pO{HN_9vk7Nwo_wvbE9=(&i&mq6A~uql^-ISY@92pPqkWd#Cs!_60+ z4919HO5{O;<91XIiMkKq9Bnw#~V?tY~u-aArCQf^Mqgn zc@<5N2}lTSYb%3myzo&PowO_plJ`NO$?P>qEx9>ewepQeD~csoN-;I=61AmJ1p4Gn z1gf$i8Y2TF$O1?P?o7xga*8oR&@6Jc`a)<*k_NyS?q;d9Pb7#FNer({>~m>_O*AAx zSgD9RKU$r2PQn(CDOv}vsujvcq7F$om94F%2}(%qklzx^%t}8{HPPp#u&`oq{(_4Z zBZtZ0DbNgGwbG3-Y?fH)m};YfmXf8<6F6%^v}q}QrYSZQN{Po)TsEv(Mj5FbHwR@I zZDkwnfmYgB$kCbLKxgMf(Hbe*9F^u4k4q$6!yqviUO4TM;m|5$VHTYh+*>BsW<=kx z(o%{np;;&fO4ZeIR$$mBA&W#+chP8Ri;|9~M1|G{#1P0i&&4SP7FVlKLc{fDtVz~u zE-mGq=jO>iD}(@%*{fFAuo%~YxMNZwE<2WYZGekXmJmtS=%s8p93e6<*3rn?Jemt0 XoaeSq-g1>xE7klT^sc(swORlG%!a$3 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize__2/why3session.xml index 35dd9ca44..8223b94ff 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize__2/why3session.xml @@ -3,200 +3,185 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2a745d9a336ca033c148fc550afa0a22affccc9c GIT binary patch literal 2529 zcmV<72_E(ziwFP!00000|LvU1ZW}uihWGsxvztY509Nr1#0St~j4=?*YzEp2ygI_j zvX9gWl6m?mcFVG4w`JLq?+gN|)y*c0ReyaX`{MS@O(xUjHMc#Ox?V7Gq-Hre-=NIJ9V>V>Nm^BKw)rsy4b%st{aCjAB!>Wdm`Vm zdUe8`(@w@}%uma=9OLO}lP<2>-;?Ecca<8qNMSN@rTddbp8Z;V`XAF-JDpG3-&bil znfTu=eOi#CI&afr^3%K77bX{jWH8forF~4lR^Ou*iN&4$nDf&78F`Hf2 z_b+$iLQBoNwzLv1=gW5CrgN%&qbCF5f>({#Q^N(1iC0@adSs72kLt&|Z*JOc_D0aw zbkm+c-7L+|+wWrx?75Y0$T!zsQmL4JjqSI-R-igfcW^ZAHm~h4FD|ctJWgNmD1qU1cOO3ud6dG$GpBjg z!>7;#`G;aj-Td11Du4!Ujk2KC$bCIo(elgc;AlVbeC^~?PJyF~r}O=O(xG9d_`C>;PP;xKs)^rqK4aEdVdCL|ZjeHS^>#%6wa`j9yAbuv!*-j9$z z$~tF|J`3gVl?z}wTogf(q6Rky(aoVWrUk8y+v(+eGPy|0r8`fZ73M;0bZKA$6b)Z@AE3?{ZaBUic{I+g}HkMbjX*-G2Wmqh`CyK;+ zXP%~6?00e(e_UMr?mwab!W)UwS)nBTI(zAiAchq8C<;AM`A5VMe|-#zH-e$V?5G%e z5e&f~hXyfVc4I&fVL&~E0eu?-Dr_om-8@tbRSZ=Oy&Q&y5P)K53L+mPjuFPlhH}x~ zfliw)t|sN5J3n8fbNWp|$rDhFB5x?;H!>CZR$osy4{gO^E1hx0!i}9+%)3<(i*n{(*0*QEd9`5Sf?C z_~}td+SS#=y-<8Mjbjd>UxK{Lv!54 z!RkFrS@}_?4IdC6?`zrs`|#sP0JvU_cHcGqYx>vpf9>=i%6_;zeK-^V+e3fN{F?bS z^AF8@*pd2hf9^kR;czGbHi!P2{x$t;`oB{8<52z&r2p;92F>=(l6pO`UJv{%iCwP; z4qOj>fCZx?&KGX#I`Ecn-|K^KNDo}ifU!JQwcEz7D&Bn~W;Afa7IxmT9krv4M?Q{Y z@b)twNAc}5KJ@Vpp80sgk9;(Z2#N)!ObS*9AD!aaC9oKC4ACa|8~l^oCV3y3(%DB7 zv&~8I$b8~pG^3)Rs1$3EYt%-%%tXi`N#|0?8JJ-%2JlFQun8`r0hv6vjyW!(WeF2k z)SO`)L}_oon$WwzCDS~}kU5gkF&Pga0#zP^qe7xVCA6_2SWIZq>&Ow3v=U{MS&Cw~ zJYr2rVD>`L{-_WP+N4cHkCwBH-V|@D1_N4QO%_h@3^@P~(mG3mF$#n?A#0U$r!G(p zOTZOr1Obgy0yWi%LICrYG99|QbiO12OKE%FGgloE{>%4K4Wr%Y6&0iT5y1VtxQK-0G<8;FT#@)JRT zkwdh|nWU2yxeGN3t&~ztjz*#6!f1l1U_@(1fe^-`K|?4grE~*Dm1In?@K94oDee@G6g6gKoxg130ZE!h3YRVMTVzE8ie{c1fj;O0 z6V4i-Xvcz4VS*y8TL4eCN*$FYvBXje_ADh8jVjR*kaWz!S(~E(=aJMyBbn+(F>EsF z)F&e>BSvyh(aetYNPv^X#17${HxwJrvp_*oFTl^)Dx0|GDN&X}=_3~np%0lBE|B;= zH{=(q6d~AxahmHAAub!AL3y21pnf~+eYTo&lDLDYRFWlYxoRjH3`!&PL0Ol{#pE!~ r0yW8b#|f^>7_2G8)M-v^r;O8JNh69`>Nfh$tETxs7@jVIvxNWvRnhE+ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value/why3session.xml index 915352d4c..50c69c91e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value/why3session.xml @@ -3,224 +3,170 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - - + + - + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9464eb3d3da8980320edc4c2efbc6923d7137dea GIT binary patch literal 3016 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 KO)(N5z5oCUna?2r literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value_private/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value_private/why3session.xml index 11f2da7e7..6ab6fd524 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value_private/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value_private/why3session.xml @@ -3,353 +3,198 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - + - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value_private/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialize_value_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4c8d8552ef0706d700564aac2b30ad529390360c GIT binary patch literal 3644 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 - + - + - - - - - - + + - - + + - - - - - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..86ec85e67780709ec0e92bfc8956550e6bcf2846 GIT binary patch literal 793 zcmV+!1Lpi6iwFP!00000|LvDcPuwsN$M5+Ry;n$n#_@qeDuIfG%B9NH8b7jF%08MH z1mC`s>?=Ilr3+iJf=gsOhVn z6cu@7}wMGH`D1oeBDdqFj3=fTHFxx>>5l$+HclNr`;oewBjqF>=i;sVRU%C zj`s0(gsRzRi2Uym`4%TD?R*dIJ}kn_hgmYnyBlmyFj*EK4apuNdBwyvg<`QUpx_pn@srQt9q}$wwc>^?MI%d1PTNkCJ?HOui2uB3ZhKcxK2d zmB3OQXBDTF!j(CxWS@(b>*`zcqsqtUy2|^gDxc;(IQVl}&m|z}Vgt4b=oMV(9Sn(L zc_7ruv+`i56KA_f$JZHirH_|%#gQ?iI7-qL2P7SmW546|&=tm73Xc!M8!tqKd*}Go zQORZa=v||@Cm?2Wn};nK!*Bf{UN-Kac`?vD@2|jeU40$Mo?#?KP>*@8{>1a*g*;bJ zc>acB2kPb{qW|0B{wvYx>bls4bg@A?C0nMm!@kPstK&9Hi?0gZU3bI(+5xeT?; zUCyXbK=N7wa9gWD&`4z3Ta8trl@`9xggRRUoh!)|>f*g{nR!BLA$<-+Q_hQ8)Pzc1 X+Zt!V1Xwi6UuN_hAnz}n9~b}trFVqp literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__message_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__message_last/why3session.xml index 78042ebdc..78e509a13 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__message_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__message_last/why3session.xml @@ -2,32 +2,21 @@ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8b11a308c142965818554c9e5f23df75e3e12675 GIT binary patch literal 293 zcmV+=0owi_iwFP!00000|J9MdZUQk3#`io$A0c;_e>X6&R7FCaDpt!$oHkOpJCcCl z?Hh_fT^U&{%l_G)Ke=wv)$<1ZWx{=Q5T_I7h*Q0m@hcw*-!T=srPsh{ztjtqA6$sx z3V*PGJ%&K}F|xtcuDfNQjj;2afDV|+0iZ{?#~jibz*CMVtZ|+I_EZXf6M&niO6Lmq z)c|Elu|kNHeA)3_pebu|yFY%Cdecl@D4L8R1Qgh;h zg4UxZ5xf#zP=?67bsvJEcA>{{L^VjRv~-pm7f_)bs1HaD;>-x?x-oDWWFYBDDc+5C rkVaV4!s`b0%%RmnGz7i2eQW7ac;P#1xNw2<1`X^N^kG~0J_7&%I)jYs literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__path_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__path_condition/why3session.xml index 352c38d14..2278d64d7 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__path_condition/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__path_condition/why3session.xml @@ -3,40 +3,29 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__path_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__path_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..287c4fbcdd148f6fe5356bf9222992e3bd96ea09 GIT binary patch literal 463 zcmV;=0Wkg_iwFP!00000|Ls=6YU3~vz56Tn6C{mfD~CPg5;jowRD2a<&8TZ|Y$Gcn z{rk#w3%lJcwB4k%v=Mb-gfm&|1KQjg4 z#fPOJHgoF->{|Nc`w!>;y6Q980$-(5?sm_MTs2&sTbsGtdr#J?_26Y%|4pe@C;42> z9%yjl#Sm}kad`<9-qz!nqwq?P%a@p3oy+9JBlpC8dbD}Mo8KM(AKKqnc_PvU0wh0V zg1)B2`KQDuNznQ|jNErm F008L$ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..946edf7141ff5d48fc2278500a90f43cbb2196cd GIT binary patch literal 376 zcmV-;0f+t{iwFP!00000|Lv7cYXcz=hVT0;`V-W3KRo1+OK2g`OWCW8I<~@QcdKql z{(apv3AE(U54Mod%P8_XzN61zT*EU)@TjE(1M(ETZFf={^ll5$^_`R(3?XTy)O{Cm z7t>_)q4y!l!_c}Yt;5y?&~XR0H4k9+9c-MIuG@ll(8XyPp8SZgf;Qm$bP5-=^pNM0 zIK#~l_cFY|fEj$z^ugQFv6L-@`BBHwLo2t?I@6FVWanqRSm#f`%t*`cpK;>)Q-0d8CSUz2b6Rdo%5b3#?2x#c_!NyIV&m0>j^7Z%Feu#zyV WMO~EBHX%$B<=Gnr98~z22><{rIJS!b literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset/why3session.xml index 84ff068e4..c480a7406 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset/why3session.xml @@ -3,96 +3,73 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c863d9d8a22b963d9fd4d39bd454a432835d9958 GIT binary patch literal 1157 zcmV;01bX`)iwFP!00000|Ls~!Q{zSuzUx=ymP3lF>3Qpr0~c4Q+G9#rRnJU|RmC<$ z7SxhopOy^7fY!KdvA||mKX6qw8N+e^pQk z{Ik0uT;Os;+mFNL0)MYm1&iTbR${RzXm#D+)tj$)O-0Yc*k27wu%lSlm{{fgwQH8& z>N-)^-eTWgt?PP4n+;x4UB|0+Pv82w4mV9hUEQ?Zre_=6VkU)49QD~9eQ=z@2h+@s zDtVl$d!zKI=__vTjeVJfnKJdL<+`KPM(n8q@#Rqyf7o0v+rCciCU%=aclkKhw6sj) zn8$RpTHS50uzi#N#iA;s+>LVOqdq-UdvI}@#tC4k`GBF{1{iPSX{ikJ!EKRXnq%(`pXXgy#&H>u04#5E{ao9$FqB07VF^$FE2Z~+b#QZth-T=;SIepR=~6pq)u0lSU?u z!%1Uu-SzuRr~-FV1u)+nH9g*Ro2zca^LO#<@T>wGVZLWR7}J|+@uNBR18Gq{=SB5{ zc~L$iM)iyskEDv1#8~vZz^I@cp+EK5_3l+a4eU%-nXEpbW1p0)X5ZVDyR0=w?$^`}6+f?TLM7*t7ft z;hP;|zsnhRQG{rafMc8S<{rOF}0 zq7YuBMg~G_y=3cwfnmv52Z=mNGe|+vC=QV{Mj1{6=)ge>Li=FLCSq`UkmAf}%`J%0 zy5aOE<2>ias3rv>0xyTmfGR|Cjx$S)xh9bTzC + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..343b36e01335b333ff5ec195320090ac21ed583a GIT binary patch literal 1775 zcmVWhcB(-4M!r^F|{S?LHI7;yHb)+{uq>AO*zZj7f(A}Uas5x;gosvh;6&MUa#A$ z%Z^+6X}}NM`QNm?mHAS^8fUL2&StJkJ<4$Oe1NHaS!)5zULJeIuP7p>_Jsor#JuBr z6vtKZQ}bs{;AyJd8pF?NfYgIOu7R7HKWl(b)8NhuZr&Z>j%#42=4Hde9#O*{SHn!r z3kQWcU${fPREGz&c}o|UX#&hxbf4XRpGMrF@!z{fuwcD29;`W|W^doCKBq3ykXNAI z?NP!XwpZ(JXj8Y1{dR(j+#f7mUZ>qbq;!38@oD!8yEptiNj@v$!K69SFwWP+-$$P( z2Ko=c&uN-0${+dD`J;Y1e-;Uh1pu^6SR4{)nH~=jgtHj1U&nx%!+`!42FybY=y(|M z`{AKtsA8yM=s96%4iX4oOVTAmaS8jOSb?9zg*)-qddL@7?f6IU-}m`Ff9Eqx3&!wm zmSuz;pa;dS7`u-jKNV&7k2!jCTeraxG#;QCzBD_`!Wq6vXMBifc@)oh56|;D%m5m` zNoahCXt@-kpU8qAfaudSc`kRV(`qEefrV)p`l)q0^we!~day=Oc~N;$dGXqLF)lia zlM1p5oC=%@oEHw9kpmo6C)^rV3{(tM47_v<>>hE~Jg#|M^Y{hl@jrO~(6-&Sy|}!| zX&(t=vdL*X!;JTzHrCyd$phjb<_>z>^)tPO>ux=Cn|AngmA7oPPXoVQjXYyz4>#Vd z5O=ou-hOV+Z*ORQoyT6DG_82uZ!i1pN}Rtt4MKl*!^sug+3EL!XT#Z0uOBb(`hicr ze(bhC{_sSvdH###`AoG?6a6_S`msWB+@8L_@S|R#nt-66xqo-tE!9tP^Led}Dl>nb z+NfD}A2~Bbibc0#j#TpJC*SYv)kAms#;?6%)24YEZ{5~iTA_(@iiNZL2XXEo><`in zb!!Ui%mG3%?;3yS3&RpRE@QQEv+LdNSH|7ladY<@fwwfxtKINf_a}GK9PYu9dH-gq z*?gFM(G4AI{l7f=ds%k?EIiJk?C zDu{kD5X~&~EChl3<>~2NRRmN7R0O;X1ndidyWg?b#I1>26Ze%oq&bxyca_8Kf0(H3 zsO+fhctz|uShwBlTNfpt8xrcGpf9y}Z}11I2A%gdQby9?T`53bB<-}6PNr;$rNrZevKF$CL+89Pv4967(MDx`EFs1` zj@QH_ObJwq6hZtDI#lGQY@sMgMtyF z4MstLR1!=**#<3ua5-l5!bg*Q^q#CGk;p1l3JbX=vcDau3~01;N>QdFgEhsGG8q#K z`9>F)6N>>!0@emJ#PJ*p!T5sXa3CHjWew%*QKPr0A(u#&BaS}>mWwn=K|@Abo{|8^ zstUG^V1E>+J&%AvjJg9h#15LYk?3-64=43Y|DS7Jc){d>Xpa~95;``$)#%7X?o&lKN@1f%j~Jm9CMl(N3<1M-4i-&` RD5eo*^M5$r(0wym005^%YP$dc literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset_dependent_fields/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset_dependent_fields/why3session.xml index 7e93d48f7..698c0a1f8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset_dependent_fields/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset_dependent_fields/why3session.xml @@ -3,365 +3,314 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..97fc2195c12472e39b71bd0df2c9c65b7d59b1f8 GIT binary patch literal 5082 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 - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - - - - - - - - - - - - - + - - - - - + + - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f348182b40e5021d0d45f5b761e18f8422092927 GIT binary patch literal 5743 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_first/why3session.xml index d4682c941..cd1dcd9e8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_last/why3session.xml index 6def1bdc5..08dbfcff3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__insert/why3session.xml index 6e4e2c673..66028eddd 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__insert__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__insert__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_length/why3session.xml index 6c9d2eb8f..9d9d4228a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_length/why3session.xml @@ -3,283 +3,244 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7ebb9b9b532402f742cc4cda94bc9d83a3a593ae GIT binary patch literal 4545 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_tag/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_tag/why3session.xml index e4d9b2e59..2e2fb4a0f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_tag/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_tag/why3session.xml @@ -3,288 +3,257 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_tag/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_tag/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8c04fe6999c6ec1fdbd6228b58a874dda9984e63 GIT binary patch literal 4788 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 - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - + - - - - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + + + + - + - - + + - + + + + + + + - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ed258bfe81bf08b6ebbe156a0652d0904b37de68 GIT binary patch literal 5131 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_first/why3session.xml index a523b5356..805e4ba16 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_last/why3session.xml index e87e8f3ac..fd4f02dde 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value_empty/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value_empty/why3session.xml index 75fd41ce6..5b5d0e9da 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value_empty/why3session.xml @@ -3,265 +3,226 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__set_value_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7580b2b6d1fa87b9f87bc3c299fd0e2ce36e3095 GIT binary patch literal 4207 zcmV-#5RmU5iwFP!00000|LvVwZ{xU@$KUlS=52s!G{AiUZe73^xP>X8(DgF#tHHI~ zm{d~bIF0W4^z)~@#Fpj6vE{^0_>$NXMIN5zcPNUY=U-g>`__G*hRO8yPdA&o+qs)e zX6eU&e*fPw9TWFIvxnq9yPNy8_*njYai7L~Oh1?ZY)n3XZqoN3^S>wef4Cp1nSc4s zeRBTp?q-sHx>*X7iHoRo`FECY{+di;noa+7^Xc8~Wb!@T-@D(_WD@Rf=jpHcWa1xk zPBXMVncP0y+)RGlO>t({HvSWhiuThtG!y2i%+2Ss_Uilj%uR1oY)^lkF6I8i-7jn0 z>e_ElUp|m#(8y!^W4(}Ut0I(j^Sg3jtO9Q@m8;6!4>$j#h!&?sS7Q@+duoJJf4ZA# zocx%jm;y9-H(Q_mxvpZnrEkBjb+=Z|qLy2zeXA&HS{1G4+%)GuJ_R~9U)L5p-j?=B zTiR;NSFmLXnQF`TV9P$e>$UwVcHfD4i^j%ssqh_xu2eT|Ken|_r_(%tG&OAXZSxyz zzx-?Z`|=QV@!|XTzaNizcb@|Jc2F_8Su@>gl{_kZ)PBm-bQ2$4Y+EU-FBG5df80#x zlQ_K(v-@)1tdF%-lw(U_+P`$P)!BceF}?QPqp8(5ZfV_G9q!hPqNB6BwR#1&{(KI< z?y78ciGmLYGF@7AY3%=Ub2L3)`{PSgx$wQ1ex%!&Zs!w-@PNZN>GpT{NBgbgWJgpV z9%k^ONpE!&<>tp(e^Ko{6vTpg3^8_sgd0wO4mo*X+qMf-xliTrbx2P;(wkOzdL6=( z(QcqF3DJ$tuS+K1Pya8K6!Y@z!U{9LZGG+L7rvzQ^5B7q?Vq0Q1<&kgXNi((^3zSenQaG15OeqY9-I%G z9uB?9b>HveX8!FYe9#2Rc(4⪚Ir5HTmU2sp$#zmL1RB%v6e8y-QuXl$9daLy^tf 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 - + - - - - + + + + - + - - - - - - - - + - + - + - - + + - - + + - + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__structural_valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__structural_valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..891b4bb032ecccd826a4fce9cb7d906c89be8ef0 GIT binary patch literal 992 zcmV<610Vb!iwFP!00000|LvGfZ`(K!hVS|nd+&wcB7yC}1-94%!S=H7RTz@PRDk1n zB|1p|{gU!W60hAjkz`ogUL>0uj$U$JKA;%Cfd9UPyV_Ot@&TF}mJwWhguk0L!e>~t zxcQkc1>UXV_p1E{D=gwoj{5>1;TyD-U59|pzUP~=?laBlrgI%r)>VToF5{fIP3tVR zwXs>dxNcxkJ;0*&`-l6!Gx#0iebwL!8gx|!9;)5735&<7^4Qc55bOJ8Ro!9R!Yx)+ zsBz&dw{F_|CjV>Nn0mCUMIATKa#(y*N_W4E_!z5g*7hJD?X-W`ilsf&F5og^9nB@! z=w&_hCbbdwFYtBinvn#PfA+q(fxTgd^KG^)KVn(t*lEk|9`5^2$g)}cWGtJ+PRp`c zaA#Tm!m_FP7a*_QZ3VnbS}M{yHKtPfxx5)#Rd$V|**Btg+|fAuFW%~Im`_BlCv46w^`SfAlR zM1Kkr4Zc!F-*64Dc2Xpo+?FeSa?~j;+pdxHtA4&*^2C3tZ|7=zmru2L$D2=M=g>*R z@`nyhAGV>-T>X*eV=hkvNWKQ3%&$#JU)X{Fh(G*^KjOd+eOB~kwnD6v|6zayeUZIT zC-*sm__ZTwqqswmc!40kMbPIL4C>At`orWB-?M21X`OwYl-yj09Z?S#at9IK(f1h| zQsdXZ_Kj!Jx!h6u$)@iC!P$83Lz!dw*x-v`%jdG=vpUUZbq1g15k89_@mW0aSsw7Y z5ATlgne{jA0Ot&1#B&DT6%RhdZxMF3~EcRgjmjleh4 z@lBuRn?8eYSAKRdJY48cNf$abywLwIU;1nVj(#uqT_M-bfY~)}QikNnY~0VVUnJ>I zlG%AjWm9KKQIwi1M^GpL=e$vjDMl@-ph{gD47R4L6YAs~S|CTR*{1q3QmA}EzH3n$&xLS~s%C=3lm6A3~Zmx5&BJw+}p6^=_D z@>{8NfqTM*XBt=vQiZY{88RjWijoLd8jGbXIVeK{@ns4s3nW4VYDTOFBvLv?BvaCB zl?JG64$=v~I-tQ2$~168xD-gGl-zhxT4(a;OyLxWGzX$&oDiZ7<(kSgUT%z)9&;v2 OihltpuJsgvB>(_JLgVWI literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__successor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__successor/why3session.xml index 6ed608012..5e2e54df4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__successor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__successor/why3session.xml @@ -3,58 +3,47 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - - - - - - - + - - + + - - + + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__successor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__successor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d15a5a5961bf43889f58bc5968dec736935b5f00 GIT binary patch literal 783 zcmV+q1MvJGiwFP!00000|Ls^!Z`&{oz57?}Cy4sA4?ARsVFiNiGWaS`6xA9?lgw6% z?%z*N+M;VyY+dbsV9miX;%AC{kE9soB~rdzVp_!$j6c_S-jVOt7ua{W&g0Mcz27l@ z#?`=w+wpP)3!|Z<;EK<;`KKSwaLZM`wP061_!0BQ_q@fP$$O0GudjVtU3wq6?=CQR zo3;1nJPdfs-lvXN(bKLUHof=To+DFvw&}}z!*17ZZ{M;WHgI`d`rSGI>c_MnAU zkXjV4hurTd?|NMM3tV+^hNVdD`TO=3If9X+*@%HdcD+GfHQ3(v6By)OKgNSdz= z-|xZ`@p5PkB{d07uATplw{gz69!!qz#CHK_IQXzjiTj%wWxint|0(|B_>K=Ww6L67 ztI^v%o2}?b72Q4(kXYQ0s})CsT8;__9QYu~^J@c-5l2oXPUJ1GBd_zdJQ+`aQ%WwM zkn(#&_ljzA?crVgEAjKm*L|=0)Sb5K>RUW%2zfX`?&>OA^?B-Kff=$zzGus1eca60 z$Ms&Ed`uVp2VKO=l>y9B2l9Q#d@W`0ryXc&OAzvilPMNhU~u*WErA&vE3i$ctM?o=-U}*&iZSRpivf+6Ei7L>B=-8|9=T zC2TE4_yAu(R92ACq?JK*EDIRw#DJCv7*yR9l&BzBtx%X?fLIG=s{{w)gdhzhTR^hX zH5#V_YmiN&tVz--NGg)H+^C=mNc|lMrAR4ROyGpZP}^veD{qQm*%)>Oq$?d+lQY&h zfsrI3Nu5H7wg$;yQURGNicm*#O^PALMuLJETms{G46`0Nu$7RtaO_ffEjVZt1&fB9 zi!~uC5C!C_0D&5Zbukl@wv96qu<+s})FdqxP+hsQJfylN0VueU!n&q$AqZkhCC&nB Ns$VW>u-{Z0004$ig2Mm+ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__sufficient_buffer_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__sufficient_buffer_length/why3session.xml index f21dff03e..05e21015e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__sufficient_buffer_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__sufficient_buffer_length/why3session.xml @@ -3,52 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c827ba25bfc642fac14e2cbf9bf83c4e61e19e76 GIT binary patch literal 738 zcmV<80v-JyiwFP!00000|Ls>zZ`(K!z3W%>yhQ;Hzj^2(mtqU_xX_gt4#|dqtav3k zNcPt+rNl<#Drg!v0Sx#e*yPjjJr3uMIDJE!?!IB};#Z9KJ#Gs5(%<4xu%G5({AbuD z{DR$>9)8Y`6)enwR>4i$Y^QraUgI`3(^veATb!;v-Sn|c<)&|;Wef1CPTgWxqTdcF zCQ9RYGaP3BJvfKheY0EM8AIyxx4c|rlH*8oHy?`HADD4d7n$_Vx8KiKBj*1 zmBFqKcd7qgGrjz)5yov-rU&f!itw}>>Ur?1;h^HC--=m}-&A+VKZYHT0`eA!ldYS@ zNYp)j*cE;P?H|tcJCLum`O^dw=tT`bPc?9)<{>q3o?_V5&o$lh)q<`?yKo)Le`$XA zSFUqp0H)O|2B7dGe%kNntJHNkP6uhRj5Lg`e59JoFfP_Zu%=TzqqEX39fmH|s7PrJ zaIvk6ZCz~Z6=IG*S)hfrkCsy$V5#yW3z&nq?#o=PwifHtO8t03jqW8sv7N_~{KI*J z*1TzM-hgkb-~2?q4QqZmBJZ-<&GQ$OxmMxQSzlu3`_>BQ*<0rxu-;waJlpFcXsyA* zd0q?_J*!s(c*)&hetoUIixc|$#W*g;aWRgw&~ut`Ts?PTXqueK2_~Y|nY0SvOfW&( zn534$MEU@K+eRwJ$+?)cRu;%`rc6T6ETrfd%^=n&CW1jCnH))@n9)wg9A$RK=m1zj z{Dq+45=aDaLO3ZCF@;Fk7_v?%DJn=bCWqi4f&-DILUNoW0Vx%25NwGg8=kVWu1eun zY3o!J8o5g<2^ExMP(iBE^?wxH@t9eJlx4CO70;BdWIE3v-GJmu>tu<@DS&{%8ZC^h UtStpd6=a(K0kG@ofN>W90O(G1!T - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7afa1514e2101f9c10dcfffce778b768989cf054 GIT binary patch literal 1406 zcmV-^1%dh>iwFP!00000|Lt5&Z{s!)z3W%>)+;&uKI|bEqX8D}rO;IveszsHwks>a z=HGWD+Z(5wY!jP{#10Wa5|rWdaAw}~h$1{(&@S-Xk`mH!^I};j^mK$#_?|hdCOb2wf%0`r&hOoHl9_>X0s;UtcUw< z^99$b8R#~C!A<9Hb58w(BYU{l&VV01g;&hrNuNHoToBl1y_gSOo~K3J5GwX5bR9uv!l3>+o=Aft!K6+PioNwuPCF{&v0?=F4ul zU#Csi`TK!R>!I(u`KDXmE*9N-H7Df0<*=RBYjJktyE|OmrV-_+S%uqvv+6e#!q3M6 zY>T92W6=z&F({|tP?CBIFO}|;+Y*RVz6g*V0P^Dy_s+Qks3YUP^U6*YY);JG)%P4C z%%^zs8TX@igCDEKGtB3&r9MAaz2GSI8Y(Xc z*v|*+2S0@Z6SEF0`LqJ$qH5V&YZ_mZaPpxyo(~CquUg+ZPqP`$_{f2neH^la3 zW@Yl3Gx_p}TzULPo!-46 zi_?pb@%UH;qkv#ky_oc(XfKbuv%Dx#shUzX!oE)^ z2BoX4R9UIA@>a4^wo@pDR7IhRLKTIx6@?N_LhTN!5L6*Jb0H|u7Sw*A%0QKYx0iwa zE6E>jN7=qUm=+A5H`J{w4Kv(~}!|-ajI@qRMz~!b%4v?$t z1SBt$WiGiaF>%yr9Dx3X{|2J*5d+9*(6SsEq>!ZHsC2SYaTya?v6mSo7EyUGc@B(e zqiv2#+n6}B9xUMac}?QliC`7y-sMQwNyG?BfDYbDHX4b>F{!TSpY716kKZS&FGVDY|74fO^NU# z=<%A5f#o6OVAvEV*MOw#QJ`7UF|(XfjLuL{ksPA13o_#DWl+|UlbS~rDMM0Amoj2d z5G80sRwEQ|MD&Jo$3j96GE16z!t5>0F-M1!6}%9OD#QhdAT$b_Go!o!m7wq{V3cyK zJT6{nB_tJ}K$pEnPz)2gm~_^RDdU))K2bJCSU=_qz49qisWYL1$b#xhMrX%BaMf^U za;9t{>JWjY3`}J2IC&z4U~II~l*FjPvZ#z=f`URd2b9McoI%KJOd>apBR4Ji!+|Q5 z{uDBDDw79bDeqH)Y%}HuIVQ)0&)OkXY!p#RMN^GROmlP%Rk=w@Q7KXV(QTQ9lERp% zlaP9fDp0byV=l@N;z%l;$3$=sMsN!P M0X%l>bJJP?0Nk~`R{#J2 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid/why3session.xml index d44140c7c..a7706fe69 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6b4cc8bba363d7cdb95bc662346749945dbc7a16 GIT binary patch literal 601 zcmV-f0;c^RiwFP!00000|LvGdYuqpp$M60Wz4xN`1KPtLvUH*JRD2afT8KUoRn!VFjOi;z_$e z-MEa~7diPo;8LODou813&*fNg_hh+(aJ7c>ydzfb?IoKSdt{&Xv}eoz2OOP=!>&$gp*J74(c~;m znYvN7QF{2%r(VFvo_o4D1O?Z$KK|_kr;*;}QJgIfQv4^_JzmiKtkr;davwT-=iJ`M z&d!cb?#%1V>uK=X@=>fGVlI - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - - + + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a9f677272c8e8fe5122abdfcbb5c36a04d9b89bd GIT binary patch literal 3773 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_message/why3session.xml index 1dedb99c4..89f87aea5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_message/why3session.xml @@ -3,62 +3,51 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - + - + - + - - + + - - + + - + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..08875df8612ab9964e1a707e3b08bc2b522dfd8d GIT binary patch literal 963 zcmV;!13dg6iwFP!00000|LvH|ZreB%hWC1k?z`dr0!$Y!&|(S%)6KwJ;qZ`51vrjJ zqJ#A9hm4QfhUwu_f~G_&53UJCxEF@ZXnk)nMH$Z=h{pnE=x*{N1hte1=6A zHkak23RkQ2z3#rjDpcvB#C?Ge@C~}!tz!)Be&n;V?laBlW^j{o)>Rw2uuOA;o7P!w z>r%VMv~FQh-@u~r`_BE?8TeR$=M$6zp)3;PNgxPWXd;miy~7 zJc#K3f<%Mwl+h1d!>gSXi6(dC%8wjPPRq7?Bwsamw@aD$kIm&=ZNKG@wRpiVAIHvp zCk@LVIy8OQhCXxkDbL4T9tV*88Gs7EHcNV72mTm;_z(Vwdv-WwN59Tdi1qT{53r$M zD)OoJI52!kSv;|HyXXs=-1Jxs=Ng59A(j2Ejf|gGH#tDOc0%$ z@E!e=(kfahgfN&b%K|#fM4lhQh_{-d4JJpCrv-UX#7Zl&25>RP;G6?zL4+ucVIl{y zDp;_A11L$AV=fxYBr3u!F$`FgIfz%76NjwUSR{s9K`?TzqqWlI+^BPqsB}bXIkSd( z@3{+Tr520}lpvzyGzZCwpg|)7m>|G#LuFJ11*MJ#M+CJwNL5TK^xE+}Z&qunWaNw? zizqGCC{zy8Rmj7^2Tc%_6&76XkO48PM*^|@J5$9-(P)XmD4|6l5fpVQTERUNIdKlM lRfMcNausZ3d0ssU+6UlNc@9EYU)F_G{{re - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1bf70a0047d81dd3283def49ce35fece57bab1ee GIT binary patch literal 321 zcmV-H0lxkpiwFP!00000|J9PeYQr!P#&8TnH`x+M@P$OyAyd!U6{x8;U}S2a-*#6T<&OL z2Hh1WavZ`1$1fTrp$(nLS%ZTYBP`?C`{m}%YDb%cT00w0)Q29u4CI9o$q?SEZ`~Qu zh_@#Sw(k&+5l5eb*jjN0dGe8tKdcbP!P&4XW^wovnENisIpCE&{^G#_4k>5b`06qE ziNoZ{;qu`JSaG)G^!|()!S=QZj|c|V?R&yp)I)Po*Iec${paZ<3FK)jT69(ER4SbT z2sAmzVMCAuyuh1Ein^_so16$#Uep>&0A?jw$%<2>qbN - + - - - - - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..88e4eb3e44a693f8eec28f9760079c98a9869092 GIT binary patch literal 340 zcmV-a0jvHWiwFP!00000|Ls(}Y6CG4?C&e`33{AfMT#^gZc+ueVx`@61n2XilTG~h zIb&P|T*VMfNV6KWBhBut5CB4q@e(T!pD`lUa)eg)V~jhRXV_AVTxh^0HPMJPws?f$ zuxvNjUg1;;VZkx3;dvvnTo!2iSZRVv`Ks|#B_7TP=V>S{VwrQDFJc?9S_7U&*p(d1 zc!XMDY?mCo*8{-{hM6w#96H)f?G)z^n5b(HUMt*J$Ux(^ecYaq%<7lAmaFyKW82*R z4f$?JX)k}|>D}GP%`fh;r`NIaHY8<{ba1^iy%vy#w8CK^WBMogYP#MkFy4#o6l>?Q zHcY~CwrsOatQV5#G8&zF?J}d0AsL}k(84RPP_fZxlIoCBX01%pK@l!D2|`Sw*TiH! mz(Ud;JI^kl@Cj^?(oo=lNrB74Lt?p*`tA$l-5Onw1^@sM%%x)h literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__verify/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__verify/why3session.xml index fe9483208..1e997841e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__verify/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__verify/why3session.xml @@ -7,426 +7,326 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - + - - - - - - - - - + + - - + + - - + + - - + + - + - - - - - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - - - - - - - - - - - - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - - - - - - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b17e51d4f86e365610a6abd288444afb2094a24c GIT binary patch literal 6357 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 - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__derivation__message__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c822cc54254b157286073d2d3f0a5c15139ab742 GIT binary patch literal 912 zcmV;B18@8viwFP!00000|LvMRbK^D;hI{^sbZN2pMv+2|CT>z?*kTsIBFBj=`6&42 z?%xMgES-Fb>>CsQ7@G}88ZBSET|uN-eW?4JdSzu)%!%_@CD1T z+j@UZ`#t_e-pAdx(AVO9xXqbHpNDZ@dg#r%k>CaodiqQco+fy-rp~1J)1>Z9$*PpT zZSi`De%OA&almb<8ddn$>%VIN!#~Gc!ZmL8^zX~*P?zsT50j0a_iVlH==!F7^ZQSD zLtVN0quL9*-Nw`BIjO6wd%wNiZ2Zk`sGp37#Xnc^Pq@E}`LEff4qmYi%GFTn8`nd1 z7E4_pOBoLf?#qb7meSps4=m?;`+be?ht_oj)=Fpl;gJAy7{T_G}mcXn>MN95{KIN0X)? zIC*LTm9`{kWbG_#54HNmUObiOdil!x*&?lIXgZwL*`x7zRu$U~XjQD)h*q`aU8PO0 z=hWJCK7Y8{=2>ka(rU;$xtWRRxt(~w%Gyb_GWJ8ZnsE98Te}NL6+J(VH~)*=Q{BE; zAGBzL_t^z4W{jDjxYP$thKx4e9_fU$DdOUsaVpaF#~7Yuy^TcY9?F0{qoI4%_W7=sJxPyABNy^m( literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__available_space/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__available_space/why3session.xml index bdccfd41b..42a68ca1f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__available_space/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__available_space/why3session.xml @@ -3,36 +3,25 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..58f895409fc6307ce69dcd4a14d38fb53a006531 GIT binary patch literal 352 zcmV-m0iXUKiwFP!00000|Lv18Yr`-Qg?Imo?xkSKlC2CKyo3fa7O%%iI<*2@F|rbp ze_uIihLTX)lx$rNAwIo(cMqi%+C#v>8}MO=(PK#HdW)}dOSr^-qSJ9MS6GH7?XSWG z4P!dM^o}DH_>4R3y@f#g)UmESBJ26_dTzJ+0vt8ZChlhteSnDJjqnklx~k)b%|6lw zB8?cy0H8%U*Xa5^0EO*95tH8pfPtn7-w42LLdwPgdYn>*r?K}5te;GrW&>Td%+ekI z6lXW8J0CCPJJw!KojY9{Iq%w2Z%;aN47Vo0eiH%zkKmgK+CTh_Hnr)F=@h(_TA^6D z#%Wob5`}AoTWFmxBq{yCUPMum;>;>e$eGbbDdP;UNibb6sF6*E%AY}kbR!y9IaSM2 yHM$bDaaJlWWn&Df4DrJ0y5gm - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3748031ea26c47f3a158a2a709033558a1bacab2 GIT binary patch literal 422 zcmV;X0a^YZiwFP!00000|Lv7cYuqpphVT9ry_bMwefp5YUY0I|o{FzxG#aG>uXd4@ zu=)3u8+-2A&bSd9LNs#OE2Y!?rf-Oul-5-~&qy4eox%np?sjIJc_0r&S8GID* z6+*ggx7{O0i+uC9<0g8_@73Zj(!ZFXbjz%2vwGDce1s`HI|%+=nB#d4K*kpX_Np_q#Iqh75KC^+6g> z9PGd}4q`x3eGDiypcU|ie^Z^X7(jy|uj1fsV3FA - + - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5b5ad49ddc77b90836965715a35c5464da96409b GIT binary patch literal 706 zcmV;z0zLg7iwFP!00000|LvH~YTG~*h4=Fm-E~n4bLW4cDR@(w7tnUN^XH0Mwvl8= z-oB$GPDvt4>uLfa@27j6;Tf>qB>RE zt>zJR>CO8~M)8V_TGskJq?Yyn2&sjw&rxd8Egm$*D`9Hkt}kMKPJ0>~*0io^UDNs& z()x6$Sg_+{B;#h>yw!nVvR>sK$ZSub(a+wwF8S>1%23nwpr&5~YPt&4bbYAldQj7g zLyZt=zyxNa$`p*TT2ZPK7|h&5;5>bR?}jjyIh8U6)F#tpIe=o2BlwIo_*jZ4iAvaj zR$5D=7utd_sJyXO#1NA(rHGLLhFPx}^W_230U67N84HO)5Xy>D#EG_n%0x}1Iq>YQ zSAbM7RM{pgqc25*7#V_1$dxdZnH*v?F?gQ=5?b)A6iLFl%0hB343z&fNt3c6r=rBX oFS<~Q6fq)aBNfep@<2@pG5aiKaW6&4Fm0#FFA>$|dXgOg04Ka-;{X5v literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__copy/why3session.xml index f9258ec5c..18e629ce9 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__copy/why3session.xml @@ -3,155 +3,147 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f7caf8a7e2a19e11daebab05a7992b0c78a30f0f GIT binary patch literal 2339 zcmV+;3EcJ{iwFP!00000|LvSxZ`(Q&$KUxW_I+^x4(|lE3*;r(071^n!mq;cc51+N za%`n&_S5fBzQjrFG;Qp}P6)JuEK}leX8u2oWHS9F#{S2}7}MPpzl~#eGrPXYv;Gdt zcsB2Gg0vZS0k2Dkvl-rvIQG}wEZ<eiao8%r+Rn=4N7v=)?Ke8PA74+q?pvPE@vq!<@p{_lAAPsFcGt~sCgYxlktboGN)4ZZ!n?)P%TtPy+^&-c}_a^+(Dj+1e!%_FRbzxejgt9wt3m)Dv1v)kC; z&T!HVC$3yQ^w;8bhR zLy$kh7-~k`^|_mm|F=k%1*u-#;~8Dx+2pGoo$V+SPTzr>GFk{|*oNEjq$l|IcQ<)X zsv!^0yPKXmSt_JD>Xw9cGs|h8QXI6k$&ry9Z(9BD)tyL;Ao6W6T5wA27or8;AZJYJ#P|Up1nU8ZO^-@Jb!PA{t_u z$*+`xc%$05_m#=hAqr%Bk0k&WP zPMr&|1q|?*44)DVY*0Qf7y*p~jRTvvQrJ=+z&!^}4Fl^jJ+2Sn(-#O23j*6f&_K`% zg3k&9%E?v`G!C?a;8Pa_Kc6r)g5~d(v~#(B!B{W1cuQGdEi7vZyJ|?ezXtA5YMk9a zfo%D@y_#qQdh#~>0fUwYPqG+!GA`ILuA>1F>n}Hcg&2Vz!R|FjuzNiUsPnDF5UYm} zu`EHv#j_<1t_bWG-`NtyYVr?Yv07aB?Dj!1P(F# z`b{YSTQG2l+1CvNhrz(HQh+^F`r-$f)7JlbhVtVgV864j-@XWdEmgq2XI(e_A6pr4 z_$uH*5dbHx{dVtf+CMt&AM3q;{R9x9-S>}E`t81d;@Usv`~LZ}3)UWR;NqSV%gI}- z1!p!6v$q~ULp*79@-G*jOh>W@UQqQ$pm{PbbLa(CjWx$IyW#QDG+yUk?wVb?)pLV; z{MN~(_7OoEYZ_}BYmSsP5B`|V=AW`y9(0Ri?%jE@1j8<3Y@%QnFCMk|T(tP8uxPB< zKPxs?t+_P^R%_PQOFdo{szR&i-eapY?mOj4_dP&^+m!VwS38#ijOW zi;p4YXw*O8KT0rgF=owk;x2nHypz^uI+Iw(Ww1!CID?o~Dk5s@N(wOt1qOr_!ddGw z3Th;n0_9RdS%4?5UGP%yEOW`u6)QZaMv|E*LkI=40cAX0EN2y*aohukWPCM>A(y-$ z3RiUS-bHX)X{kXfkP>yFMw&?@Qi7O-h~QCLE+pB@RSrf4<$)R*CbBQ3L^RYTa*dpO z5e!Eii`R&f8d;{2(IN*3DPod=EY~#npoMf1NDeJ73;kf#(F_XQ3C_Oq;@6* zC?)vf9q5un;m)EL9KdQ_TM0(dD5(@I+Srs#lBi6UJP7VoFf!CulA&?JW(sgJ203`? z3)pBO$cWkI>MJ0(%S1y5;gDiNKCm$*R|Lu^T(+V*3pAtbAuo_SLJ|qAk>1MWY?8_b z?{FBSVMYLTlnHRgd24<0AA5_@XI{DWqbO$sU8Slw9Ph;FNT=m17Ed zf#_&sU3Diq0X}KzBzRuz;4jaT_w^qZp0Z9w6`lb^peuoQWjUj8Q@6ytkFcEv{7_o=1SI-7n)h_ z01cVXRS4R7l9=G0!YU#MW2;w%VFgK*G&&)Jh)x7;1d1YqRwXDMs=tI~#gX7_sSyad zgeo}-5vkV;GTGIf5RNih1W8d#MN0`zV6dbna;Nj;92~CYS>&FSqoT;9X_4r5=xZ`+ zVG;1r#Xvao_LTiD_dKEPaMJhL>VWd>5trRn^2G~<@ z0%0%|3sToKG9=HMcD0peK|;yJAeqO5@m8ZFj9Eb!E%d48y)+DI%!H$8s0B~w~&LY*#By=vRBMZrEG7mk$(b9h}tMv-l{{fkQ J@GFdo0056(dgTBB literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_condition/why3session.xml deleted file mode 100644 index 3b1e85eb7..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_condition/why3session.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursor/why3session.xml index 4821eb732..f0c8f43ee 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursor/why3session.xml @@ -7,32 +7,20 @@ - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..728907a229e91475b638e32c8d2c7caab9f8aefe GIT binary patch literal 416 zcmV;R0bl+fiwFP!00000|Lv7aZ`>dhh4=my-F3^$HY~EpW|Y}S-l7X!8dSdoOqBWe zg``t8$*jgoyRj@Gi*q@A*YW{y=NYD8^%~Iy3mFG?3_kn&kl_v@TCKr>zKqe2FIwY# znlM5R%dGW;DZvla+6Nq+wx^husP!|9CoD_SI)?nFrGb@+i0k+1=O4v|WMir`i?5nx z9~M=~ou=sw8$k4Hg9CeOD=&4YE!~Zf@~7r3xe>9tT_dDh5PgW(80n3SuXfiU*%ruZ zhqh=-{EW(OME%S30(?07Bis$-H#6VDT)t|?5C88#4@bCUDa_9h1I)SX_ZUkG-VcWc zr!}8-dV&?3yvJ>i+a9;Cj9Y$B^Pgdwd|w~fZ{GbV*pGsLoW905Pmmec`(APdosbM9 z2kWS7y>R{;eP|m?4fKjKClr;c=c;RoCmg5+=at1$L>eK>JDOfPa7+osl>)AiQDa5# zP?jRrv{G=CMv-0+Lc40}743v!opY8~C*E|Pd&>-0+;~(y - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..db226764e8364e284a88a5b2f5158fb53aef1f33 GIT binary patch literal 274 zcmV+t0qy=DiwFP!00000|Lsz{Zo@DP-2D~(1j#SSLxwIvx))iAGexxm{DLG0&EMB` zP!#A=bZDn61VJ8oyaNFTBD%%shc_ab)=?sIm?xr9Qo@T6`5=QMUSpag(FMc06_+Ru zp()c74wz#faKw-V&v6wT&YIP?iekN|ANV{|lm$`vlmE9@q>L=vNLq%F$%Vu*?dP2J z@vj-w#^A0K#=sP&3u3^O_ts78P4<`gLdGRuDZOHmBH#V`(Xaf7`)~e}*G0?5vT6b2 zny&WjT&E0MF&+2bR{Wq(RRPxuR|ZvQ(Ugs6qhPs$GTyb^mm5eGs_`0i2ix}CTg_f? Y`})R}mDajOy@AT&9fY%o@OA_M0OT5oIRF3v literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursors/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursors/why3session.xml index 176f32368..b26979f0d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursors/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursors/why3session.xml @@ -7,27 +7,27 @@ - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d15ef3aa81fd3447804fa3c53999ae08b17196e9 GIT binary patch literal 341 zcmV-b0jmBViwFP!00000|ILs+jvFxyM*BHMj-daMiUe?DWG>*ApeS-zz<4~6WFUL{ z)fU?aX&ew>K|FqZ;Mnjd85|F2d}3n)z=H7Io9ur8_;}vA;i!)T;Lg3{8v{t?y#PI1 ze>8wTaPVB|=UxYt+Nt%Mx^DOjcRt?6J4$U6+OZE(n{2Z1{Tv_A-|^%{Ug&}4B759RvUX$MB`P literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_first/why3session.xml deleted file mode 100644 index 3bb444c9b..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_first/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_last/why3session.xml index 2da19fd23..7803fb9e8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_last/why3session.xml @@ -3,45 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9a4943b0bfe58b30d33bde4ae01b13deee9942d3 GIT binary patch literal 644 zcmV-~0(<=*iwFP!00000|K(OqZ`&{oz57?}J`B*eTNo}=g z_vhc>mV zzTpkqgzA}PJy0N|aa;{^^m?Ya*gY$UU!&M31#Vzl-l;U*B14-oY2^l5!$9a91aRB$ z5W73)sJ~g#08`Pt((}e~-L>ffF@e)*%(=xWr|TZc$7h6m z5(-)Ub0ZqPw+p$)n_S2C8%=xPg1-C|fyH5g)4yQMIj7x|KQ16c+75h2S${y9{rf}C z?NWWr=&w`5f$4FkS1c>C|B8uUU$JKv`inyTsaphX?*`~E2|mF4MmGZaWp`6hwF6ob+mV86a_cN`pUCP zR31wROmZ8%vRrdiLWg(!vn{kTF=p3DO}YdlQShKK#OTRd5-fvQ;YmYTieMSjR#Ft; zjW;GrLh!_S28kk~V8Jk<4bvW>l$^y7k%IP-b2Tx^!fOcv6|;dyW*DNU=$X{PkkSM; zgH&M3KcR_VWnsSQ~_D80i!QP%pg-3;zsCb eOJ+=ESOAhjMzT^6<;1HDDvR&MwCIlk4gdh1rZyM= literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_size/why3session.xml deleted file mode 100644 index 2229c8bf1..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__field_size/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value/why3session.xml index eb18415c7..27279056e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value/why3session.xml @@ -3,108 +3,104 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - + + - + - - + + - - - - - - + + - - + + - - + + - + - - - + + - - + + - + - - + + - - - - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..97586cda5ef3ed0e215ab83cab016e48488294d8 GIT binary patch literal 1642 zcmV-w29^0AiwFP!00000|Lt2%ZyPrdz3;E+t%srjhu;M10=fhZV6>NFuZtl$Ocs?T zMOp`Oe|=|Hk{vrMCw3%9Nf!ZRYB?Ux$9s>YtaO){x(}~0-z@N|O-;LakLwl}9hP~< zzt`7Z@Z?nG|!t_@PozmeBP{3utEpW8!;%-Z+&R3!6?Sj?v~t_0TANxAQ!}1=kMlM+ zt2JdxT!7{JcJ|$^i^1b%AM#&+-sRcuqS<;_aK(l=`^5G(|Cb)zm4JJ&_d50AW&6;L zR9NpgF<#;Q>{Q|BARRci`!(wuu;EbJ)Y78cMb*q{@uquwTe17?xL3^m)LlxqvAk4L z`ePB@B{i~gyWVsM*6yJ+%x{O?vRTvWnUL77vqwa3H)*}8VfJZ6JNQ0~h7;&fwDr?B z>|6B;p3*G&NV9&wK#r!JW1JJ01rrS|+ori`{~g{=%{$NLeN@M71&7yo-Ojsq(R4Q} z+OQ1Xbo^u0t((2%HJrgUSGJe#V`}Rmv7F;0_%OrtcJwR$a<509A~B8j+dSIu-v5N+ zvqf;spMB$!PkyX8_CRr#rEG}%c)gmF7>)YWXoO?H z5zY^faPEMVPXVO*3?N-!)pn8T!+?k}2)YC1*rz$*Y=^_ABOIO$ad~ox%VR)Xo*%^J zxkFq%1>*X&hs`=%9{;>~QTsdM4dotVo`0NqJ6zpTZ{qUAKzg^%i8BzP!{I>SB zyZkzezYw`c&%G17&y(HoIeNpy@6+&`DKRt(#P>z-It-G6DF9z6db+v}=pB?%^ zkGcleYrN?jF${)_`)=!ZdqXk1Js7}nGML?61V*O6vx~nxzO;V0n$XOjdUz2|$ru0g#TDJ(xekOSAEzo_sP zq_&d+y`TcY2_y(ktwHkH8l+x8gVZrJNIge`JWnz;8QBfN>9ZB`1}+6A$4VBBA2A#M^JQ-kb>3R*_ z@)gEH-dY>ALk?Eh5T&%>m6s$S_sfM!XcMx@AjpeC#u@E`vl5LZP{{~30`X<8UV6PR za|IBMhfE4lyJCV+46hQo>roprzPEx(Q6XUyW`>*>6he-fVZ|-g(t1Bw$x87f69cz6 z6v`L4-NMX>uv$CNT|MksQzBpIDl4n!i8GxYUGZ+a`PJ$k2+U2&u? zTA7nj(y^IHNhdwfi`$5{{|8!N5zVzG{>;@k!-}f<5A=y_Bq2xu07R)g>Hq)$ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_first/why3session.xml index 777e291e0..64dc8e3aa 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1397576d97c06122493f9a2f2e4e32e094a5e50b GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(IyW+Q*%F4Uq2r+e{V0ZjV3<6z9t@CX1>M- Z{$8HGhJglO3>5qX88~;RheQHR003ZF7Bm0= literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_last/why3session.xml index fc4ad485b..8cecf9cd8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1eb8178cd09f9471a4a0cbae5d213f2965ecedd5 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(Y_D*#;jIV?Q$wFC&wU9!915qX8MfOfuZ{$o002l-6|MjP literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__extract/why3session.xml index 37c60e6be..52fff775b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8f9988303ceb9db94afe8a49ff6d657d26f2c9f4 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|LvAdPuwsNhVT9rz4cHb`D6Ss((WNWR7FCZs=Y>Idkm45 zU9=mZ^w)Q?2mxAXg#?149uish8_)YbNo*g}yriNJsa~(>Y$*M(x}?oOtC7~N(T~jq z(>Gdf`KCGD9?=@AG}5DL#b@W^b-z8Ob5_T<)n-(OOFE!0G=3g#YRP~piI%)N8Bcff zy`rf*BlD-66lc0O_esO5-_YuW>1EMh6mQ2c^G@7hLy%OaDhM{hPee z*?g*Yw38f7vmPF|e>{&Eg%1?yp@D^dP<~-PP}2G1QN`T{3i;6aE@N;XC*Q@AXXA0vd@>rNV&HCh*R0?sM>04X7%qxi{u zH=s(>+QjOCQzQeaGG+4B1}>xlji|J8hz_}0Z!)3gdnMmXl-f zIcRP|u2nQONE#P>wl##T9qOVh>fq5t*u5B|5*XKV3xYEl$E<-gQFAs1mxAX>WmP3K f$fl79Y7@&4xjD@m17~n;QaSY-tPMih;tl`+^3+jl literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__offset/why3session.xml index b2ec6a7e7..1bd9a90cd 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e0a25f098ff521b2a319188dc94d9136bc08ce73 GIT binary patch literal 236 zcmVK8DlqM$>4lJKSr#{0r8qJ4cras3-f@Kw>nPq zr(ln9kz2T$UtqmWx)V0r>i?Zw$#l-wZh6O9Dh#Qck=~?qW=tOu&+In8-dv<|4=vT- z^1K{xANAuOTCU3XzU`H?AVbkc%TaNlU>vh%8|o+hT33ztUP{8QE+COaXSpGkS`! - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_priority/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__get_priority/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b87bded0ffbecc10b8c2a97f1cd2ffa422260fb8 GIT binary patch literal 390 zcmV;10eSu(iwFP!00000|J9VqYQr!PhVOogK7u4`^C5>^LIXLLT*XKlw*qg-a!B63 zN|VwON>i7l(2LOWYi9mWOIm|JbkGK8Lbrn$piAJ=9-iWau!3g9Q}@^u*beDn#upf{ z0PtXpIkmBF_Qqg0wHP6VzB8u9afD|yrViM63gLPGmYw%5AoV8V@EZtM0AFIETeiA6Y=6$sj4gSKp#ax!8^f3DXo@BG!YI2AS - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d6822246e35b244078612a791a35a117313cd755 GIT binary patch literal 1927 zcmV;22YC1&iwFP!00000|Ls~$Z`()`z4KS>ZGjyO&{h2nj2H05*Z{$v7P=DEUkNd? z?2+go*eR<$H*m1mm;D^V~W@aWY>bsud z#YK}ZulsN9>N8#EhL$ z_P&+L1Bk*?kiHaAcn+lfdrbN`wKKD~!*#>uZ4i9bZO8LZn&-u*{__l@I2Q01Zy5Q0 z!s*vl=pQtvRnL$jD65<_%AW5aeO_VP3*RB^^CwV#!}#_S8r#+O=!E|=kl?^5y@|yK z$Jj1u@hQ*j$2BTb5$(3rgwU^8b~yTt{z1RbY=r2dJO43WHhCzskJMkam7O+pJzJ;z zb!Pt$S%eqTh$Gf86X>rC`aMAYBb9D>i_pZwFDU+ri8sN-lcAr@K&(0O11InhCv5X5 zDFeG(toVuiH$?vanNGEE%C)eQ_eAw+Q+-x}yTyws+@fM4{bWi1V~ccm2hl|NNmD+s zJ7ZQSrcayc%CQCOo$+AJ#P&(EeMXm8iOGvoW4{lo8R}_Ke%eg;AGgkva0c+9>nq`W z`BYLrJJJHhv4gxH`TperO5wX09)9eM2k-ih=G}jHj@Ry{x8QtR{Az8%V^`g8Z5;DxSkOS;A;?w#QaorRlH@^Ta2x_S@hb`$ER z4XfkNv|4}t7|=f+n{GINphGV96cKzi6~SL6BX9k9c{m{&*G9YLIs;Sbr#i&E505V^$iJZnQ-J%t{l$la5d!XZ zI0EMs^6+~~G_P*_HC^q8_7i26xdjwmgo6<}+_ zbvL|&*4AmX{~KLbOzr<}+ka2zS)3Y<;{PW^P?l{)Fj>xIM3lt=$%bDVit zA8Q`g&u;NORHHxd$Nw+nr~h9$47R&}U>Us#JKi5y4vlBiu#9NAWeCa`kSa-E*vK7nxWnP3Z8To`sC;!4 zgUmW{wNY?VNT{BC;}Nv*LKy3~A&QPN_?%EjhYAra8-Zvj6s6Ds76^f>QpzZGOdLW< zS%>Nhps~C@K;*G3IW9m0T!K+qBW=cDwW?OQr!Qw+&;l?~RwiZ_qRt@_I!S;^)(k;5 zE|(k}hg)=3Dr=dGaJD2vSX@c9hCwwBKq$=*Wi4#UsMv!ukP#fi;c5{B_d}6{JQ4-N z$SLlW9Edm|G%RCfK*BT>6=X>vMr3VE!4<0^gGWl)nlQv=D~UoOF)hg&ix#|4~#>XNt~g67+yTCv7h!AuG+ACxhn zFR^GIC;;m~hB8>mCKF~8SP@EqU^GZ812CG7L*tgIsG@3si7W*TMeD4}))$n)c;k^x ztjpC(H`z!JPAg!n2pKjHI&zOWBN%6ZYGpWjl^9VDrDUePuvReuwK*J6rdl~@_p}Ov zwLXOioH~z!0wXt^aWZm0p{iYtuE{|Kt-Vw^=43bzWe5t_DGM@_GN8%~A(tPa_gFY5 zUR+>Fnv2v21HnVZONxf&g6k?U^1xih#N=_2Xi!WVL_5qmT=z;Oiq3PDXBKF$GrI|- z0-#|iYxEKuS0W`{6)C5HsM$`t!XkhfMb=oYWW$nOvMijq21-H|ZZ%^0f?7;2>1w5# N{{aK25kR(D003*Wo?rj~ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialize__2/why3session.xml index e4fabfe50..e605e78bd 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialize__2/why3session.xml @@ -3,200 +3,185 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a42fbd4941daac7dc01961eae249099c98c9934f GIT binary patch literal 2518 zcmV;{2`Tm;iwFP!00000|Lt7MZsR%<-Rmo6H;cvvSbP)cT)>M7CO~6mGw@a@zS71x zPOhyqy65YsC_9OrRvagGUJir6lBE(^tUBlLA<5ktw(VrmUR?f2k#^_l>hBl-9mANN zVf;12i%DoFvmZF0;H<+bE;{_r{5s(&P8VspTRsMi0rOcJI~Xft51JDnRb&|+x@yqi?;Q@ zI@(-y^R~UZoXom3Z-3zQI?>npdgyxRsiMisiP>f6(O+Ip+w|8xEBZRSo=$Jd`xl;I z=%{+^N-g1Xw&>L&f}(h1s|to!pP zPSfnX`#$D@y;N3DKWkdMnuNDc!W(kyWDIN>n=v0@|LqIL$q)Qv>;eQEVDx)4i`7s> zzF~JsRx$k?yKl=)^K0L#00xY++JVs{{Ccud%P*^wqus#swTDZ&1P%_KKK8pohw2rp=&#%mw{8I6 z;)i(558x{lmqOvr723b?1>p5@{2D-h?>Iiei_5rlb(!A^>OBJ|P>p$1dEU&tg&~?y^3IcY5 z$`X!`0OqsKWxJZwqsu8ppq=CFJdMq_8@=C}W_Uc$@VrFBU4QeD6a9of;p4AF{T?xY zoikmu4fAF2vu<`)LHKD_C%TH6ikWBkQTE$vX7pMpg6%MZ?KpxVAi?eA?&ARISmrr{ z>ND5=LAU@frwbw|Q&i!4C%WF1rrGrcg}<9z&f4}OEf#p5`p9?bXVrEDIvC=) z+TuZf`pyG*rVC4CkqsDvGDHX3$^yxH0^{|?#joWjEI0fPqjXg$yuT$dT@eO_;7LmKT<9NAio`pRBKcmVXirC~6upWR z!JrlmN`c)j1!hPJ^kY(B?n{9V>(INc9;y^oDXLQRx>7VG16*#UAs1uL#~j9-4e`Os|mss~4*2YWWMDnV6(ssu-&1Z=N3 zS0SiEP=(;b3qg1G=$*|<PSGFHL+Xu!RO?T%n=>W03n28NS?(_=p&050kOBb8ZJug}B zo>T0`s~kh6+Wp=)9xU?^in#N@y-H%8hP|02E`Mv|VC#xSM1(p$RGG_XxT#3F9-_T~ zT}l({aomS#rLd(g7XhA5;#fdf{nQX0#2+}BqMs&;JchJ9`GvA}kg5+9j{X_Ke|!Gw^D*frpGUnd1eP5C-0xHl$)yDurBzB9*hn- zX1FVC-#fy~cJF`3dSF=t#_C|@Zo0cFdHao-(ZIc1*n0DJ)Q#4j_&AWqn~!`PCcH2C z%*We3^6`twipR|lvB5oU}47W)^z)X3jy%c1WD5-rCMbu>E8bX9tA$qQ&;X-KbV~(5$Ykded z7Zd<%vWbFl%?T>Pk~5hhLrl(F2$EbaR?z6|1IV0t3Q3^JQ3+KN?Ue`uOmQ9fj%9s@ z8i{%mXlMZFV-#A*fH8qZ143CMO0g16mMkel-A!VVCm=%EY$VxAErfzTL$Z-9#w?N( zzzq+Islb>_gsc!yMazqo+OaI1HD_KJkiuB5eU{e9AQO-{_~Z(@KsQ>FoiN1ojEbC( z0le~2Bn^lm6nKFld~wj$SOMrTMl>9?;p9X1iBu{SE89qCEMZ<4ubs^)S&uy1L~$dn zW2!I9HQZ1WokHR=dM_Z6OeyVr@KMTW3x7Ckq9WdFMr}4)Ny4H$tLLG6*A_h+ti2$zl#lnyfX%zDAO^M7-pXjiX|S zWSMgow6ZZt&cLK%C7VRlbjG78*V2ZQEQ6I^Q2;gZtyrl>DsYx@mPBBQq7oQa&Vow; zU35LOxo%K;q#AV!lqts*X+*HX`I1KCML{7qjg5p%u9!2FT4s~uGPq1GT2FyPR;+9j z6yc?W8x^^(DZfaVOr+wZQ%gj1N0?xcqpje6ekEG<($MhB}VG$eJ*G! zR;uxqqjA(@25Ew}nlfgM&XOWeOfr30x-p(d1W{b2UKTm2E{iTXFo>SeQmjlvJ*6eC gDyf)GIx*#e`bBFs5shfjN7Xj}2eHG27m9@d0J~(@5C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialized/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialized/why3session.xml index 5eb3aa3b4..f76e5493f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialized/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialized/why3session.xml @@ -7,30 +7,22 @@ - + - + - - - - - - + + - - + + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..64c7607716b9d3727f340e1904bb1b8152e883e6 GIT binary patch literal 551 zcmV+?0@(c@iwFP!00000|Ls=EZrd;vyz49a0|mG*haPkZTEIvyg|5WoqK1Ghs}d79 ze_u*=Yz1{(JBfn=$%W7|oHu-&p_G2WH%KefhYtGSi~$ekaqR16ZA@tImZ66fSFJJ2 zFbwc37~@uL3hT6g(!h}Nq@inKGIb1%AHbz`g|GG{@C$3yv7eFqIJka8jxxD_Xki(h ziS0e~5!y7qfuH?dfGcQ*u(=$EA}qV~V1`@hLXkz?LleDebBT&NJV6%Y!@IZvKW~R8x!ktm zvH7o3_+;@jf$Wl5pcDCW<>%JgtSXxxmve7b;sPove#rmg1po7`|0lOT8vuDU0P^!V zJUamCtkW}k7i!KN#@J+u~J_!WQC`` zrWynd0il{x;EGaBtyN5Z!QVw8n83<`b{czYy`Y3i9kk*#mr{F|L8!10FhYznO{w%m zdntIP#DXA4Y9ca-6qb`rp|o|xGSD1z>V;FvGERx0K7(i>kakF7jHE_77poB{;+XJ0 pU@dW-L9Ea=AX-ZfQWNDw$c&gO%`nKUQL+r;#UCHvD+Xu`008yf4gLTC literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__message_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__message_last/why3session.xml index c5dd1033a..678737c8d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__message_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__message_last/why3session.xml @@ -2,32 +2,21 @@ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..11522176395aba0cd51343e699857fc2209322c3 GIT binary patch literal 293 zcmV+=0owi_iwFP!00000|J9MZZo@DPMR$KiKS6KVLxwCx0|cFltOO-djRE-)OD>YX zuhJkv*Nj;%2;yAw5-fZ4<-Egi8FA=6^y3dMJ&xtt#;;{1e8-gOR$ir{VJ;WQN1Um_ z4IVLrTVtfI=l4Qpg8Z8{?W1%u`>%wmg4Z!=2WujTBqi z2~QT8L7}zlELs^Hd*dIfF-){5wIah+aGF~k0yBn(=s0H>D#RKLoFp;T1zks2K^%jy r - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__present/why3session.xml index c0ab5ab8b..06a1b1db3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__present/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__present/why3session.xml @@ -7,25 +7,17 @@ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..384507416c2b7959b5e1f5e50f3463289b75cb45 GIT binary patch literal 377 zcmV-<0fzn`iwFP!00000|Lv8{N&_(v$M5?TK0=b+>?Q{fUW!7&i|jQ_GP4@kZr3DR z>f4)YTTpsXafKEy!w~+Nul$CjB|K7sK+YIIFb5mDerpU3(~1HlzaETPQH)t^j9U+h zwkbPPi0cruK90Rlrt{Qe1ednZ^>_#PGQi3^9T`;v|6A?60gK-h{oM{wQpeS_DK)+W&Sy+j|YjtLSSbD@te z#FjaJKWB9IeC%SGrxqrcrU1R!K<}|-=Lpabq3L`$P%|eozwnehygw!2t!T@|-?Gl< zg?*0j|FmBa?KfxlJ6ztz+@y2dnL-LiO Xr?g|TL*`0QSyUFUBRiH^tqA}C+g7p3 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset/why3session.xml index b16b45060..2672b14ee 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset/why3session.xml @@ -3,96 +3,73 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..516227d0becaf9ee51ddde7ccdf09eb3480f078a GIT binary patch literal 1154 zcmV-|1bzD-iwFP!00000|Ls~$Z{s!)z3W%>)bDkJ zhQAJXgbQ45X!~(GT;b2HXkjtE^Oh|Z4Xtj+`)>0YZ>bscX&i4RCpb{(I*i%n!*NK< zuU$v$yA=&M_BZRUThV5N*VJ|4WK}bJw67f zc6{+8eLaLFXIGzb^APUqi6}H%PhM^ZihaP5T40}^Jmn9Y+hsp?vEPJYGx>H;=TcA0 zIG?i^?^dh(?Gd(b{I6oPF7VwtxAxihV{3H)8z;Kl0}fFT9P*vO0dGPFoCptb5FWty z-~-?r00I62Apn6bu3rBg0 zfA1ot4us12t5cxyPSzZ(js^$On~u=fS?xox{}IwV=LNhV27*6^|+& zRXqNwc+{Dnq}7aDo2WbA5WGw!0I1vevq->ujg@P0q8t6){ZI^Wd33&ASC-OFX^{a!8# zGKQDvH6H`pQhDmCmVInF3otiam-!@q!G4K;NqIIg(Dvd_cv0k+%hV#k6zJ+E;taKi z(^H_qZm-RGb?ZFnd2*-a@QjCf#knYz&hPVN^kbjH{)46onIo?2+~L5RzrBCRWqRC5 zs1>W7LG29w)15(6wi77mOH>7VR|SH-5_IhPUM1-KQ`;*+r3BzvlUl%4rGKS=rT+(X zASVkzk)^+``Trj2E9d`joIiNiak3zkXa#ByP&Xl}9Gr_B>};^^RH1GaR+d(lo(D@m zXshtB5L}*5=WtnyDMh@9(;uMi+h!@@t6XT$3s%J09NfXjRF~uBc>4Cmp~u-}{*mzg zo@amDDA_%T9MT-)X0b{Zi zdz+Cp+_|VUc^;DDJOze~Fpu!Yb8^{;zs(4x*9ayWoo6L_kV*>lE&+Hl-a$4JjdOyd zW`YaHeDoGc3h&W69hsDxXCv8g6`2kWxM0ysWJ&WN9D3pM2<=%mQcbd4x+odv6p%4T z3NTrjWYl@UY@{2{U34n&2thgNjYul1aX=G-=9XhNGL6XLXh{^4PR2q`GzlV?YoC-u zH)Us=D6Ix^jPa!M1uv4JXf@@T3EDu+M(%A!WRhnn4F(m6w3oTAEcqO$5$OE%bHJKt z9Y(FA@{~IW4-~Sw;!aYourg_~f?RW>yfaYla*@z1RAT|bwW7+0P7Pe0RR91 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset__2/why3session.xml new file mode 100644 index 000000000..a39fb3e64 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset__2/why3session.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..57c8bb3106873180d716ea78451d1315dd6961e2 GIT binary patch literal 1766 zcmV2`)1Kby2`jCt9258Lb!B?S37JG#8 zl9rXA^M3sl<;3lzo-D&099t|Ei?w{BDB6F(`{*M39n#GP)?IA7%{BBLYzA1t zZh-&wR|pGO?Qs9Lyi5pl$X)+$Qe>?VJ;8#f9HN0Eu$SF1W#n)z&(3GhkiaFgT;pe6P z=ixcW!Yu9lBny z)3*4r`HLz1iMHIj!%vwYpy&Ry32touVuE<033q;Q(-GnBvo;fw_2|Mg*JIvTT zcVd{u+#2<48jq;+9@g75f~HKuFK$1NUG5qA+rE)oZoM;}ThkmIeA#2_A`H0X>casj z^k#Rt>V`ITyV&nW#K^-Ek4mGA$FFJq*$qBt5e6`L3joXeo6=K4>7 z(3z&pN+J3D6jIMmp?Q*H1`N%V8pj-(N#!H}?6(16rU0P72LSUB06HFL`k{MX0aO80 z0rc_!G=&Pmzg4QUQ3e3H`qyO`)F{*_%aH86`B~*o zH;feq6$TXsZvqDUXW+G%Ycbbie(lBlPu@|qZMSRJ+iOgRWGDqE z$1M*N3Gl?u?v9K>U`Kg(q;9Whd<|FKYUnoYaC3<}a@);7|1JyG$lBxmIZGk--uY2I zx97Llu)4yc9x?`V4+V;8)~J$)Ji`&VJn;257&O7mqLw5&@Vo?`+b?}d1Ab%Go%X6H#b9SX5M;E zIFW4LU7LkaesTW&&%r?9X4oKhFm2pw59MZV)up8{k&hWs_LaglbSnreq~JruedDi$ z{aL!6$sJ|K>)jSuBHGZ4?4ISD2e=IS% z{Ypc<=so_T*PQqc%;>tq+C=qVoix-*!@q9QF!PjQMrE>6>BUf~Lg@`cX<`XzE*#vS z*Uq4;!l1&S!r+y`;4mq;`(k{p;99}8f?w4WowFfuHx;=3;facXihzoMSBHS3Mc6}c zbpi1u7Is}ge2bO+VoU20aJZOr3UM*p!^8bu$@x#eCYLllb1X*5CS|U4Ky9hVC_M@zFh@&%29(kiO{(!C>L7wt3>;=1BQhVDSCI#dvDYD;2$jS)NEIS06Xjq=JB_Z2z z@G>N@i9;a6wRJp5q02}hN|#8;HQFQf5|v>Ay)iyZNd*DU2Tx8OHTedEvzRQWj(A8c zB~(^}4H_|efkhK%kCZZ8MivzsnJ8E;I8aJ6>l6y|FfZfdyz!7&h%xwp3S)7bb(upF zHmMYZE>faNj2sxr{zTnIt(YfeE=wmw5E4z1l1(-uf{MYR&_dGLE(xZj;@W$QTooxr zx{OZ=I3vrgwuq852}lm15TrEf(v2>TN_3W0K`=@i1n(u7sJP8OkGf0)QAqk^5^~9S zlv+_J7zGa#PawuI+DA%p1Cm=ZSqUboR|bYLM@f?%_u7nJb&W$FosPyP@Rl-5a;Ln< zm~)1dbSP53ao|KWTyRL?i`nU#a*!DnZ1EJNA+4J~_B ITs>I;0P}8nq5uE@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset_dependent_fields/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset_dependent_fields/why3session.xml index 471b651f1..83f4efcb1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset_dependent_fields/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset_dependent_fields/why3session.xml @@ -3,185 +3,146 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..36ffc071ae1874955a134c913918a871b346c3e2 GIT binary patch literal 2391 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 JM2$n8006DRnTr4b literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value/why3session.xml index 5da65a7d2..a3b363582 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value/why3session.xml @@ -3,245 +3,221 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - + + - - + + - + - - + + - - - - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c868536b61838bd90dd7213f092c9040ca3c2d75 GIT binary patch literal 4541 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 bq8OqC$}QIjD8TQWiZ=fbfn_H6zyAOLCC2O$ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_first/why3session.xml index 32d7422c2..873206278 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_last/why3session.xml index e1e540a12..6398f3bb0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__insert/why3session.xml index 6e2141a50..4cb62e9dc 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_priority/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_priority/why3session.xml index 9c54effc0..3cd5c0d41 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_priority/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_priority/why3session.xml @@ -3,245 +3,214 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_priority/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__set_priority/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7895d1207575bf4ea4fab6d497b19edd89619519 GIT binary patch literal 4137 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__structural_valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__structural_valid_message/why3session.xml deleted file mode 100644 index 31077ba5f..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__structural_valid_message/why3session.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__successor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__successor/why3session.xml deleted file mode 100644 index d0915e59b..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__successor/why3session.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__sufficient_buffer_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__sufficient_buffer_length/why3session.xml index dfc895454..13635331f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__sufficient_buffer_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__sufficient_buffer_length/why3session.xml @@ -3,52 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c0db6589d4f13074fc55ac3e5a2ef832236a99b GIT binary patch literal 667 zcmV;M0%ZLkiwFP!00000|Ls>zPuwsNz2{f-URCmU>_ZQGK}F(Nu=V(CiYdVZp@5g8a~69XUVloY6s)A z%V=yz9L7f7WGJ=6xHSv%x%BEs(wpOMI|vhH(CuYRb1G=j$)!Qzmw zk^iPcEDrq}c-xI*@!$WBRuvi-qTz~ht(03jt+@e}`ME5SKBiWsaDh>U5S zLd_gAb>vZ5lR>P2jC4sTs)3l|HRCo|g-!u8qApBgKM*RHP&-kRwzaWAMDC(7$*@F; zEYBcWNfnGE1~x^BAtfVG1_+9XvBagzAXPbSa>8|T!bF#XwL)qU0kjrYS;P#|l}uK1 zEsYX78LM(=2oRAgfM6vrAX7<95^EM&v`%w}P=m1oYK#VJBV-2E)o+0{6f?0B001uz BI?n(A literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__take_buffer/why3session.xml index 67987eb12..7d0ecdd8e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__take_buffer/why3session.xml @@ -3,130 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9a8e79f8ab43b8c147b04f75bb32cfeae1cf682b GIT binary patch literal 1416 zcmV;31$X)%iwFP!00000|LvSjZyPrdhVT0;dh3qY;-ma=^ad(E8V#zh`QuXA-Y*v8DavIOKcd;LAXm!A$IIzZv#!W@m6cUd>EgUw3q~ z9`5?>M_f}k@XPoSw|%@Vg*IO&a&Y(52;k%po)E!;+94)r-hYnH`~=_ z%SrrjqK93b%*0qX!)i>+S&n$2Hk@HD-)ViTxSZCEJ&GfbaH7k@^um#^Q9e7A-5}i{{j(t54NZGZdrf<-L7G;u z`_gBuHj%Z463X8-r3+Z11G3*WbzAHjWhMf+jq)2PPlhK>G0}7=#P^ zuz>by@zhU?-L222=}XY`B}%#}`uY057v4l1L};qiOXbd?nyUtf28RZR*A9m&O+)Jz8W0)~E&~WP+Jx30 zG#oS>yc8T9Ze{-POv~$8cxiTu@xyvh#bPo>1w%jrt4Y8`W| z;^k;Mr>@~c+dDOU)tlP=gjI1?J#XWMD_mC(db&=YkB$}H`zNzMI9PP`zeg6YhO479 z&^6}Vby2#Kl#Ei5%;ZTMsX?Zktx6U&{Q|#9)kQ4`e2^N24kat8q_ojRqebSQ$X4QU zMr@H4C9P9&MUgR9L564?DxGXBNEtGyv|w} z3d(tzAp2~i$X#%wo-F0 z#z@97qmg}_5fubyg2E7?C|R_MoM4|4CVoGc*~oQ9WC~h)t1LQ$y2Ka*a;A#od73d# zzDq??!WcpNY)sCg*pN!`(ePpw32YR)1ll?>I*6P{%fu^SlSf`d7uW$Cfq0xNAxf46 zPH~1ZSW28w&ZAC=IC0XCuAtL4cq2>>;5e6_LUBQvf`K@|QpWf|KGK)>k$i!YoKq@- z%P~3&2?7)+J($r-J<^H;R|VK5*G9V^C|7)s(_3#IIXDt5FAontw1M1oZk z1qPK1>0q6+Sy&f9jmi<7cdQE;4D!64$4n7S3S1~Ufyrjl7j!Y%?3B-#B4^bB^1^aO WMyE^S$&K$QW%n;yU2=ebTL1vMTgSQp literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__to_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__to_context/why3session.xml new file mode 100644 index 000000000..6b9185daf --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__to_context/why3session.xml @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__to_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__to_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0824d935f2f22d2a7b1374185c1ac56a0a1461b0 GIT binary patch literal 1155 zcmV-}1bq7+iwFP!00000|Lt1IZsSG}z4I$_%eD9A-~hT9F<^Kufv!Y#cX3RNOvxlQ znaS6usLhfrOEWeTjE%ks6#MbjV|CTz((G>_eQ)5Qj%D3^g|>#Khq7#O@%zJq&g=J0dkAP!yME@OWZe_i0iqW@lY_prdCzqx}e2=n=@#7Af`mL((#y7_IZ z*|)O9X8C|E^!25&4=S`2_`mzkms=}7!m1VP>&C12Rrjd3P?Gdh~Vzu>& z;>4cVpzqt&(IgV;2GeTzw%!Q6hi=1oaPD{K5C5N1M}VD(CXAHPdAl2Z+)>;fMEG>K%jGUvFN@hi^ZfqI{Pua)-r=l~ zh!^y22>-YON_stmFvGH2K*XcOM>o0H+LH@mCcj8BUaXNtThH5?tbet;T$S-u-~L>E ztz$1+eBz@+y2Y&S%c{m%>NfHQCsaF6RQplRYWvd6|891asqSLi{YMh7Z|Z(%+bMs; z%*jnB9sLZ|Qa9uvR8#+8dX66e{e0N_$_Ag&S&-$tor6C~;jiSW>UK}e+gSGGh&OrP zVTQ)w8c*6`!bTzEhXz$#w4+n?chNSEI%%q>=6ZAs;qSmh_^)LmukE>m9(fbV2+c80 zS3I*3Iiih>!8M+=!-S1N_R`JNw&JpFWZTHLk!|CIZJc_1qKbQZGm?!X8%H*dY#hhN zu`2MVH*SYzxBbJ9`ipkKycz~0KWdeyAwDP#(Baf%6Uru(P3Xgz(E3$Rgm=ed_hjm6{Ozu z-HC!c|L)`Q1%y8MxM1(If@8?Zp%wo)%ZPf6rO2_C5%nl6^6j0sU!HnIuJNQDCTyHF z$;r?uutg1m4?AFe@qD&__<9AlR|uGu>w4eNJnx~&-Ulw9vERR->>)2a{MSu?=HdUP zrHrkFY!KNXvO#=wgSg}ZlYWwK6|xg#C-}HdP!ya;nVjdUa>`2Zh6PMA80lh?0_<=6 zPp*sPl~0w5m1Z)s5-XMyZGc1Phh4 zUK^!k(2^-9z!OLpv5JDzsR!o_ojLcK@kDdPbVXT_6@g3V!$DW0J1{Q zC1;XAw$MUJ>CrI}6eyA&DpqN2V*t*$7{a-tsvt_VTDzd>c;lItUMmWzrQ!hzYzvP7y*#C^_Yo8!Na2?r2VN$R_87HHJy8C3?ZD z + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__to_structure/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__to_structure/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c2aedca47fdfd357c8767311c536c17a10cd795e GIT binary patch literal 609 zcmV-n0-pUJiwFP!00000|Ls=EZrd;rz3VG_>s8z&>X3skK@Au^6}l3`;jj@ROA1A$ z$={c<9V2n<0?ksRfB}Kv@;H1md_zrK0mg?VxW^9G4VtFAhtNP5!I(h9*Y$1cj6>T* z;~Q$-m}cr6uAv=i*Zv68wmD*j&DOVw1Mqc5>mfdx@dgIU;0kVFG0<@a=;!)J^NOIW~P~%$mj#ev&cRcaa{Vd9wY|o0_GGZfaXI z^i2YW&1rZ0b63x3)$Dw+ikAQ+|Hl|6j8lNt+(X;ACnxv&7N>M{2F8iXhGflj{iv)?MRGl0?pF6gpSA zmO6p*OgdE*pq$MMlH^b*&rypq4Fq7}5{PFg(D^(ql@;?qqLQRt!5wPmSo#u3WCgd1 zP?pvzrHj1M+6q?r(n+nW%BuvD8CIn)JtslH6tU83DFjjJzzGDHIjKyFLR&0k;X$Is v%430O3BgOHJk6YntQ5=%FS*xDDDKlDhZGRyg=NIu3@WqVl1dQKNDTl0n>sH) literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid/why3session.xml index 288a3acf6..08d7c65dc 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3ccdb94e43f9955f7febb1fd99c41ae3fdb6505d GIT binary patch literal 602 zcmV-g0;T;QiwFP!00000|LvGdYuqpp$M60Wz4xN`1KPtLHZ)LrD!z*GXw(|K4=ioi zeEZ7TY?7uaX~S+wiZRH-{%dA5`e_gXh!8?Jv|}3fA<%laq7h2JS%L%f8KEkjmc zP&Q$t?caI%IpkcR(4C{$XB_j{B5&EnCB*ABta=Rn`U=J#)@AwwU&kH61q_)E-Klv( z%Wq6QC2nZ7E!QD`hb=YmvSg%wJTBllSMLPNHj(zo0dILLF8(2QeCBTAu1tyHw*zZ$ za@J3|x>eR*|8UTUR>AvLB43<@gd1ib&->JgapF3L0BZx-)*3e8jv&Q#A-|0h(J z%P%v)Gr(^b;J*B(FfX1vkKA#;DAO|+@_8SeeIG1d;WZfl^&afhNVKN4FP{5@D_nDe zyR@cJh(wD3hro`DY>tf}E-!yys+D zOqducVIbO0N0+KdHC^XLWJ02l2E0IUBo#48PH~|@SCMXnH%3^_>u42GRac!R6@d~u o>_}CSX|!@2L7T)A2&TbG-zB3=hmIVwDFwFq0j3p?e3%yi03swI+5i9m literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_context/why3session.xml index d4bd63422..5737e176a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_context/why3session.xml @@ -7,94 +7,86 @@ - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8f0f9d58f477a97e6a4b117fca856fc2e5d3c595 GIT binary patch literal 1624 zcmV-e2B-NSiwFP!00000|LvMdi`z&PfbaSha}R;q7l;Esq?tgITn1f5tuq3*?Z|RS z|ND88Y>&L*P4c)qg5apFS8uELK2?=$ir})$c#~yW5huS^pLUr~%6yuYuk*0TGW%M> zfAg})viU5ZmZ8Xgn#nT2pGEM-E@KSES2HrxS!s=(%_dp+vHBV`PnVO)dZ78MScb30 zzfR3d?y`LP(-gUxmc}iM#jIG=_sx@;EJAa6L>{lzpD9nwOIR$--yxfrMS1?HOQflZ zd2zltTZM3uN1H*%O(o%FUcP3Ff6P22S|$?MBm1U;q0^&e*H zZQdR_T6up{qpoMA?c|P?I@&Ic)C$k8y{9);eE7oZJ6pcD@+*hJ8w&4#<=&^!cHGs+ zxcc^E<0@2Q`~KLB)}>Mv=b?|SQu;hHfw-^O=qt1JW3f@^!ZQoF{KVyqsRNn2cbg=f8NBF z(&xrJq%tKNjrh1ma!Mn9uATn=?JAhyyU?UtE4SkWU&<45Ay4R4JfRn@qS$4tsCM>R zE1&I-7!ODokT4+OH$lQK2G*569bS0ZU?<6txo-rpp&FT;{WBmaVly zro+T%O%z%C^+U?`k&@DN6<1|bgn4^9F0}>WlmUh;=99e4e7cB zXt8wVvM`e>@Z6_lpy*qnsM;`39%r69#XQ-fXlGo0EQ(%>f+~s?3B-Z6xV}Sum%z?(P6n-10h81;gHCi0!`QK{~j z0ap{}st$T!;?SOn(~JIrI5!iggGIo-Rsa~K828lwm*Zxj%|M&?K%3?lt8c;6cfArj zyz}FmjUPL{@#ClVeXOBT zJ+XJ?n*M-?+$t^b{G(65$z!gIqd>Zkk=2h@dVDR2dwng4n>8Ofw&uh4C1+o!oHw=L zX?F6IcZHeL{mwV+ylD?`l4pF2ojuz+#?H=jdHZ?bUPJVC7D!X}bOv!cf3voYoIcb) z6m$AIdFYurA{DLn>=!xWPRJ2=Ku*WUfv$b}lh>E)f}`78Hi)iXMcqDOl@Gzey;*S} z#Q!`?#TT&mq54@zv%4O5)73|E+cM0*jBo3&Q?=Q$#lAcp!eZwKWZPKmL;XWx@oiF3 zrK;1F*g%W-M~iW9OTf;ZPi3mE_P4!tm1is@-ybo@9US~6iQz&s#J!@J39Cg=L@6s! z)P{M+%pdqqtP^jvz|IN9iNw?p8iH2T*l4W5N(GQYNtBvmCoCf>M#?#ikAe{wWDtT2 z0z%|GO?NgIyw;4{;0PkrS)sg_*4n^5Mh+7SLi9W#5iyD~U`!#0&M*@LwL%ILtfkZ| z5Mt*ES>zbeTq4SNbP^#$g^orDrM)$znirlx07wX`krOgdEexqVWD#-eB-I{-L}DEa zB0BCAHpD8%nb8DUiy?W=^C|^0v63S$;EpDNaQKIXqf9D7j35+O=2XJ9LON)SG|?eO zOSI&0r4;i5Qe0`$iH<}{?NRVjLIFtj(MC$^ppkr)Sw=j}0HGYdFi}QROUVQ>Oa%f8a)d#iQ^S~t WQec`&E)cJzRPry7V! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_next/why3session.xml index 63d0abb01..f5e5d47ef 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_next/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_next/why3session.xml @@ -7,22 +7,14 @@ - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b23f1332096a24c8be32526f82404fbb55dc701f GIT binary patch literal 318 zcmV-E0m1$siwFP!00000|Lu~!P6IIzg!_969>KnI?k+`&G>AwkQQFmHy#`D7htG+U zx5t+dBp?M8L_(rjudL5A^6tbnI3Ct;ja|VWJG7q3cY6enE>72Y3_HO+no-W}RIadk z61oa!(hl)R<1+@yu)rRTw=@K?!ZMD1IK8}Bt+3eS=g#{?$DV==2*O0Lpi2#|IS@&= zYb7B1z9VXr8lHs6d1);1E+ldK;6yYIjgMzyg5%GWx$mMJBE5-^p9J+rZxrk0<(I!< z!1_GeKRFtewwneNPltMW-}U-yDklCG>HJURe - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..67cbf5ade472ffc950a94b5b5dc0c1ddd0d5f914 GIT binary patch literal 255 zcmVtWjq{@X`&Y|UUsVmJ6{(t}2F#ySj6dFe;xpVaHn zN$`YLSv|563eFokokndaaPN(wUDS6IlNDzM64NWuY_%qu$OjTT5{|n_cVAch2B8xJ F003=2csc+8 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__verify/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__verify/why3session.xml index 9dd8cf217..65a1bf650 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__verify/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__verify/why3session.xml @@ -7,270 +7,166 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - - - - - + + - - + + - - + + - - + + - + - - + + - - - + + - - - - - - - - - - - - + + - - + + - + - - - - - - - - - - - - - - - - + - - + + - - - + + - - + + - - + + - - - - + - - - - - - - - + + - - - + + - - - + + - - + + - - + + - + - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..17db3c102e16b4113af397b883a4e5fae626ec4a GIT binary patch literal 3234 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 - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__enumeration__message__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..71e273259313f9d504b5b144f0a5b4b9045ab3eb GIT binary patch literal 752 zcmVd4ag!>emIIPttjQj>md@CJ zAFku|k$97gmtH%u8jWTIJwO276G)a5{D5WcM>@liqW754@2+EBTzXHdizSU%hV{z( zC2cnNg}jgJRiVq`eYnV(MxTdqQ+nQ;c`L*PUIXfTfc%MwyWrp+mUtr8O<1ZzrK=S# zhv5m$ zKGpcbdcE*;eo*$Rd+%2li-kX15B14-?ftx>pW^1m=GSPaW_aOdC~Yg?dM?|RpdyN9 zHK<^`RS_x{o1YA&rn25v%vkE1Sju>9xhW$KD@r$c|4p%6Z|^E}cbPQ`vq{6vS{0xT zm1a#ltf5}C3hZIFnrP$faVhThD75UwtwKNceAl%{VL%H4{Ga{*R9ZhqfEHNoLVK97 zCSdzGaQna9H?Hg&bpC3_r8fE4&P)3Q;FjQj5{O9vCIOfP;NKR2*EzGuqiD-hsrZ08 z2Z1!;OdGOH6`uSzkJfCCB++M{=Fr|!6MLX zy?q=BcTGm?U7I1iUVC$k$7bcA-53IpjWa?DmiUM2=aRmB!m%Kb=xHspm5u zQ@`LTb=N7a4Y?RHgkYUjD)X44vPeehnDjgTk+Y7)6ckvEz!X}rii2SxavcGPG_O{y zGmr?fK*g1@Os5zuS;Qa!B4RexNOYNVgNYDglq|=LnPdn&Da{p;Ow~yKoe{X~j1?Lv z5TFxLB<@^t%mr>TQZ-VY6+q5O5s+si1PF#)5~!HSag{_hf=*Ni*)R~!Faum?$_Oeb z3CJKCTa9$b6-dUI(@ZFZ0Le+x#@dW5r$o6LnGS1?tfczsI=UJ(_g@oSU- literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__available_space/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__available_space/why3session.xml index 5ac4134c7..a11d9e1c2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__available_space/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__available_space/why3session.xml @@ -3,36 +3,25 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9fa0b6103780fddee4e10b93092aa6ad7791f22e GIT binary patch literal 411 zcmV;M0c8FkiwFP!00000|J9RAi`y_1h4=my-IszMmLe~@=w|4^EQ`07>#M88U@JzF zhveT^c}$@pi)QFRtA)_x=$sE-sXU`UMw~~2F}`9NF%}Gy#~*2Be8MU7Wq9iDXeClP z+!Z%GFXae%hYL6O6<={0Jw!f~UiRWFc{v?^ImJEyCOCV(L3|t_ju8^ZE#qhW((7K4 zJaLpgBwjEv0iZ{C>rdEw|e7O3xVt;^-OFiae`Wp`P+iG1&c-1GX&S3#Df(e~S~$NWDO&;Dy) zp=lg$l<$Ieofo9FRi2f1N?-_XGdS@{e%Fm~ZP>JqoY5^RgPOduox+Xj+Ag@Eio~CZ zXy}4u5pXb6OQ@V9>d-hFP#Y&@6{!X>2<5F7j*M@$k=Em&bSJGHv>D`?=_ke$p|I8k F0013<$`=3t literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__byte_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__byte_size/why3session.xml index b0a4b0234..d1afa3b9a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__byte_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__byte_size/why3session.xml @@ -7,32 +7,21 @@ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b31b04ab671d98885090420373238d7adc398694 GIT binary patch literal 416 zcmV;R0bl+fiwFP!00000|Lv7QYuqpph420qy_bMwNhAA^!(Nsygr178VmvcS1YT#6 z)v)>Zl^dD{nh?Tv52bq%5`Jjj^Y=hyhu2u{LzV+(p%9QU{91FIjv+|7lRQfaA!gi5 z2y{OeIj-lFmr{kxVM--%S|~3_Frq(sCq3w&bUt$()@rq;at`)_$_}I+~Tyz({^1N*&oVdSnlv3O*zHTdvWa=cQE)F zIX%?h+mfb^^yW{qRrH$Go7GyHSt_NIz#JUYMsVaWSbx9 K^Pb`$3jhEhht4Gc literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__context/why3session.xml index 8545419b6..19404f4bb 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__context/why3session.xml @@ -7,34 +7,30 @@ - + - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..27deb0399261ff08c55761b6e74bf49d2affb02b GIT binary patch literal 716 zcmV;-0yF&|iwFP!00000|LvH~YU3~zh4+4n+09}YkYxSBbRe5DeF1O9m2{PwiIZTv z(7yf1O@C-=I+H|NlyL$!iZ3U}vd-s=AUtfLYrWm~7+Mb_HsYp*E9iCs#+~hP4?TKo zA%J~8_HlD>EsnR?Z*jCX_RyiVezzU*K8-gpjHzzeZ`#p@cJTes2(LX^y%DCTE628< zm!>QDk=ZX*R2eM|RWgZRUK zWyiQ`$Fz)3R`qxNuJBe*FCP&*anQ2GnQ)89enM6AGw%**~RIa zXGeOkm#Ehe?z-;baHNM5gEKtaM>sSbw$*7&#(4tfp0DZm+Cjx)RjXLw=G@XVayB{{>3aE6!U%;lEnWm7g9l6P`b zDjIs>?WgWwiTx7$CHDVU?2kk%c(=FkL9f!t_f1ObduE!Gi3|s$jr8pLbx5Zs|N1oa zylGyJsdL72`$z25Ww4XY@H}_2xqjhJKEre1$))}z$IFu^-wa=B`S0X8b9SfZU zf;UwXZP^02$zy!gNmIJMo=1?0Fr7&oMr<8u7zjQ@?%@s0jWQ_*6paF?81S#Rc zAlIpgRNVPGdY0Zq;2gzJ^Pqf)wQzz7&ma}C3XuVDi9vEvOQuxqB}! zqF~NDE(|c97U}f=>7=!ck+P7Ac%=gslz0;%7!w>(fpFoHA@mLj##AJ#K&Uh5Su{dY ylfvY@&@}K`N*chJR3s}Vl{1o2S10$J5uu$HE;wU|i(q6bQq><+a!MoU9RL7f&1^sb literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__copy/why3session.xml index c3c2d30c4..34a282e05 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__copy/why3session.xml @@ -3,155 +3,147 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..58e35f80a655f712f21f6ccb3285830ec3b6c97e GIT binary patch literal 2473 zcmV;a30C$WiwFP!00000|Lt7MZW}ui-S=0_{vrUY_y%qU@WvPeM($>yZKL=~1Sqzz z)DCXu>!-T)h%8HqAF?7@TttvtrDpN)oWp90Om|JO`{!y*>H7_R9mn==dV80r-FGVE z>8zs(@yqZQ=(e;poznM_pzgMv<~s`arQ~Vb&SN(&4qxqGUi8hbT&;2%-+ZI#m~Og0 zSNiYtKGP*lW_kX$f4OY(*Sqd}JNrU+xuK8rg=X#icB}7P(Z>JwH7{49H$_xm@B4K=H!YSY7 zo0M<5_8U#^`EvLDF1M3>^SS#nzqHZva~oJ9vh7~`M#M1VB;)as2{OHp-Tjm%eZ%84 z3~4XHz}X_a!7atEc{US?^%SJG4s zR1F;1c7LGz?15h(wRJ6vn;e-emPyH|PcSDx?_eZn&Z3S0RM2a_o7 zl;~43+x2kplM}{ zs}}cEi)&WcjQ~deivJw>k-dH;aMc}7&mCZkJ-`Y318gw}*mQ`qH;86XJk39Ys{ixV z|5D(O$^-bJ{}Yn`symzY0n`HFVS(_l2C&rw&esEK4RDSgFw_9H)&N!iwFWpx{SP(3 zueUypVDXbAzqwv5Gxkl)*Bkoqb|XYE*+ro$(*M^l zAC@xzq5I_}v+{@P3)L5@FT6)z;4O8R6Zz5A%?Q9Vtp)=_OlP*yo<)UXn}_Gg6GF039%^sq(sZ?U`jP_lYCk5e*Qxz<#eU>d`%eh>K=@ZbY+9r#vZhp=EcBfca!Y;2^H-TMFu@Q4NKJgB1qPoOhU1II9m|F>dc~oq5 z9HaU|^@ZvS=j983J~n|*)di{xR2MiS7Z{JX_`uUjhKp^_7mp3(;`c8_Y_pJyW3Zcx zqxG?i)7ad3cstw=FnitlebMbDsiu*|JC#kADO+>|vY?cJ#!4M*boej$kHW^1=&8mm zD*|)T>=6V>`d|paIp8SKBq~k|TZFfz_!tVR5M@jtwJtXFLD+MmKed?ZppwI_zaND3(kLT)>R z9@vmd?xSquBF3n>&zchgiv?p56r(V@7>2cva*bo6pf%2NMppKXQ!*-XAW62!(nt9Q zjK<)DFNoY#iy{Z+Q^tUNCvW-zLeT)oAypKN0+N-2|2YsN;h7y0z^pY3@MbT7>Ot$dSVJF=z?-5W8O+!VA8o^Fr5GK<8l|_0?p{t( z#GYS)8O`nb48CutkMfN(QTu3wL1}HF$X&(kObI3^2)Rc>iiXG9WX(BvW`PLV#-fE( zOfhM^aQ!$+<~{lxt>dmT=2B*6GC1a>SE)p81{*=Ph{8mYQUQj3Of4`Ey^1Ds3o6(? zN;aH4yHWyV9($8m8Yo0!A^DVfu!j~^leLCG&MJZ4qNa?FyK7lMl3kF7DBS>&OeTSi z!4h+w|FNoA2s~f{QjfhfjZ)Ge53`I;I#!BTij_%;Gef}+)koQe)n^zhHm*=O6NZC{ zMp-e`E|BOsAzh=;2j`T|?6JjTVVh$EG9*a(h;q0WdyetWC(HS;x07RP2gVf?NSjK4 n!BIsMp!kGEn38-b4zi2ZD)u3*gvx_z6*T_`;KClZTaN$$QYpe1 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__equal/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__equal/why3session.xml index 510dbfdc1..1eff4b872 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__equal/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__equal/why3session.xml @@ -3,92 +3,81 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..598379568a344685ad295df23784729c712cac8f GIT binary patch literal 1175 zcmV;I1ZevoiwFP!00000|Ls{zZ{s!)zUx=?UM#@(1855PQZzu&Q=uy{B!`IrMRp}Q zNc!tLvYj*!?d^7X$BgKqokjCpXC~ZE4eAB^YlS0#7LEk_(LWU9G z?|zN&2eboje@-8JjQQl`rN&|kyVtnF%hh-jh6`9>HJ-u=tYEwdY1!pwY?fWkYql|5 z(4#A8n;cd>W=uE?%l_`^KX*?%ydLjv|9t5Z&I=eqT$h3b{|U7dQhFv@uc^BX( z%Ilf>zuU}uOd(L{5JF$t>)mHuH|^MTVZ2%45JJ2e>1#FiA*_~7H)0^mGoC_P+~G4Xz+`h?qJgfOhyW(=jlHV+fXsgRUdvh<@CyL^5>0jh4(LTr&n zK*CK6HlxDO{JXhaz;7ooE<=y2!|{}+AI3X4xfxPF5Pi21HV=0p;Md1DAHhi6a_gP( z+?vH-lucYN+dwn;I5i?rA$04uz3s!TKJ1Eh1_KRiQiI*N^AK9>&c}-h+(#hnI8$V% z$RTR2YPmZAo?C|f+iD&^W}{zG^Nx)3J!{^P zOYsJpcT~jHwENrb$plTPQ@W0MP?JBQ)Hwn$cag#r1X?q&N{~^ljAA@1IZA{NLSjSiomHVQF}{?3L%wD zpuxw&qbDQtGEZ+D&Uy|y#cXZ#nR=Lv7og}V8mpm9Mz-Q5gJsFZsHFxgTu!pM0sGJ9q)fZL~8|Du|ZM zq|rh#&WJwBNwbM4D+2^l$W)BvntS525Lvn;bOE%uu~L;{J|$1p!-=&-oXk9e6qXv{ py_)#Kb(J}f3Yg83f&fc8Qev!d2cRA3sao7r{{hn5VKTNc004<2I)MNH literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_condition/why3session.xml index 10b8c5898..451d0df5a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_condition/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_condition/why3session.xml @@ -3,52 +3,41 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6fb8357a980c4ad43ba52408943f79d2dbf14d3c GIT binary patch literal 790 zcmV+x1L^!9iwFP!00000|Ls`IZrd;ryz49a34BuonnNx|0|f1*(3My%myH0&HY7So z`t_x3*L4jC4H{Fe0UPi`)M$rXac9R$_kij74sIYVeNQXs3B88^{^w^O=g;0#dZ2zm z$@|#DBjvA-=D`PA(IU_y`6rmK$Km;S(Xg6#$%k&het>+&`-aW#AiON#u|wZ2o}lkw zkznY)6MXI01T&ZqyPxC72{7MAdMjLv3p)v}=y8=^{O|xPs?r2&7qh!=_xf8hT=&DW z_kPt=AfzE5?723G0lrasb5L9^5@A~zZNQZN}6{C&ZvmlgRrExx4(pH^M?IX==g>V8}O zSzj87asru=v%AlkW!bmmyE~M zrQY1DTljd>=uxXb-XL%EePPnE)E{8*?K(#4_dWLiY3_yUd0)(D%I|5eBXw$2qi3(_ z2)`sDDL2_eB`L?kCt>-smK5XuB_?JsCg#30YbiB3mkJyFxK#$`sFYdkwrU!#M$jOy1Ip{Te!M~OK=Nacc2ru|41{+Tb6e#>K{Ez-MHCp zfj?pO&InyqbqZCT=vmrXx8v&%(>QB5KijT6UQ|^nB(fwF*C17hk{QF05pT2JD;4Vx z{8L?VEo;G!jv}DS`|VZv#c+ zELrZXW|(^C=ljt6Jc|C@NFCdIXuu1tBoRR@lG*(9{Zqh^TW+ U($TaTWZwq*0juSqJ-!|Q0B2{1q5uE@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursor/why3session.xml index f91e87ff9..f0bddb456 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursor/why3session.xml @@ -7,32 +7,20 @@ - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..da80a5ad6fedcb157f57823d235782f7bc59640e GIT binary patch literal 420 zcmV;V0bBkbiwFP!00000|Lv7KZ{siw$9I2$bF8jf&KuHuToShi5Qe3|M z$xUw0V?)vpHoc_xxzgZ49-CWceN!Af1Jbm zh~%M&nCpk31Nl7I(&!c!T?v+Qxka|($eugh zLSrk@mQEOOZa*IZ&F2AM^}Ay3_Gu6IJ$WJJD@of4R(yAJd%D}hRY3Xh1SP|vwyl1Z zcK_d+U5DdT&u)H%3A?&!Y}44LvHz~I`WEE-IJ)|lK=zBb4iS{8Zic8 z2v<>XD`YET9aV%fg%&h=Bec<0Gn>4i%G#wtE8<; - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fd235b6643e434ade6fb0da68ee3b96293e6650b GIT binary patch literal 271 zcmV+q0r37GiwFP!00000|LsyeZ^IxE-T4*$34GXKh74VzcCWIY4mcDf$F=}R&A%_P zRaL6gp+mMTaCbbtd+!OvfB>+cIgXzIRL_(rssJ(Lh1!*94B*#X<_vJfac#pTQ@}Lv z@{R|bvrBlyu@HXbmGE#9p8uL~FShcIuQOy?Fq8jY{SN`9Vx@*I%a|&JRD3R*l9M<- zkeoO2aGUUwJf!K0IpI{dr`_Rh_Qx`#%TjMp&bSb(&y@a1slMX#3qC4bCI=gX$Ib~S zyj6jV&c~nz#arJry@)r(xHDwEvq~d*l2Z1@^p+c;JJWY~2XUr(;6_K)Ytstrj2eP9 VLDC>()Xp@JWM3N-Pi{^G002cTf;|8L literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursors/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursors/why3session.xml index 9e06da006..bb9ddebd0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursors/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursors/why3session.xml @@ -7,27 +7,27 @@ - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fcf0f695fe4b13ba5aa594005e4c7bc06e67873c GIT binary patch literal 336 zcmV-W0k8faiwFP!00000|ILs~iX$-$K=*ZuK7#+B#SCN-(n=}GRpeOOrSm6&T828lpfX0*(WJq7RmF-_jJg(e!9x0UuH=d>PmJ>Z%zqge7 zfWedQ$5uzmwNvXCabDpsY`lMrE0o$Mv_T&v*0Pp`Z^!sd{R#&!4Gk*NiQ#p;-s4s-dMkg3u zMC+V);H*aqXb8QM=1so41=uQsx=06+1r`^C*D}mbM - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..23a75b696726dadfe3a19250ff41eb6238445f89 GIT binary patch literal 1644 zcmV-y29x<8iwFP!00000|Lt2#PaHWAzW1-#`(9k-_aTQIKpSb5(`v4*vRzI_noQ6z zM9IJ3@(iyKk^t!*x?wm#BMSTTS6@B44BK~9zOCugGWW~%7uqaoy`{P;^xx)!>6BLI zynk$;?y&{R+pqT;cl_yW`>j9!NN3y;73%wb|9MkaU;Cc7A9=IpZQs`oePa2t<@feU>)s9xc&U}12-4-WTdik%De=}5M={YMV_ zm(Jm__zYEiaCXRVRH(02`0RQ-mZ4`TLpVR^Qxxx2K^ij^ydE|mUz!Bs1z*-C7`!$K zH9PO>87F#k?bA8>x$qgU3$M3Vp5A^t<9@~K58IFZ_Do>kQos{^vs>YA#TZsha40p6 zoh#<8rYrvHa&y(uj+8R?$5`$j_ju)Lc^mqh1!k=knzv6?!vkaE2d@qnB{)2L3p^2O zAnUgy_9uhm-nUjKlMa*1R%N=%98j2p7F9f;GKU8~2WcKh5<`t7%{q@Oy?mWM-Kc3tZ_HzM0zqsFzEv6i5Q@_VJM5v8)k8z+_8wvgVf^BktkmL4m z&2ElwAManR^M9EqXY>a;2T<2&?fc7B*Ks)h%i;L%|DfYy#S4?cD)sb||N9XCq3lhx z4cbTg!kp|HMEB(8@VVTsPi7eG$Ge5Y-z_{WG1xna;jwZ1tchWS7GPmpVlcN8!(9As zCYu?icLU@0L+1ItNL&q>k7fT@_NNitbA5vxGJX=U8It5=X##%LN2kXFX=`$5yn zpS|?!;a~da_aEGN`mmcuy7;i~?e!ltvM;Xs|Jd8l#O>zfQTf@=DnEZW9xx+~2lT>> zF&>!V|It4xg}6H@arJk>r`Wcth4j-ShJiXK6ET{A(U{M^cUFERR`gQQ2$d;l z@0^f@?2Y0qWHc+GogunfY6vDG=a7SPvb|M4ax%=#%63uw3nGXB;*gkpRU#QcS<_Yn z)QAArHD$=}6tZ$qG$s3#fK0TOTvcXgCCtl7vO`f?F2JrRM+J2R%jl}nJ0?PxoJavV zsAy5_gF{l_Y!F?@u`M*K*hQlf3*kaMU?opjlZwoNAR996jHo)DcSDW)Jel_{njde>Fy9RkNd5)xUZVl^saaxT|QL91rvJ0}V!(TtK0LG84}P!@e9 q%4|(--p0_OQXU`~i5}xy;1`ENN{}s#b31)u?EVMt5*UaSS^xl43_a)o literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_last/why3session.xml index 0b0740cd3..3db8db328 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_last/why3session.xml @@ -3,45 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..983db5ced4d3c2803eb373595f0788cdcc9d6ce8 GIT binary patch literal 640 zcmV-`0)PDq`P!iP|a2(H8 zie|rla?%EA)(vQ}W$o4+9GiN0B%kRgZewSl`1LkWNR())9 zyXqTg*mmh+&oYb@DbO^n#{KHoJ;mi=uCjcJW*;=Th28Vct*LhR3#`Swaw82G*UROm zefWsy_m3k5=P;tXzmBQ9b&m2ijXh=O(uhlPvq-rlbgsiG7u+;-ZFaGp!Z^nM+ocJwC_lZn9pQAu1&s_fuCM5>N_b+Kkp}7`_1P8S*Cm`c1G$d+t1>*> z&{0DEOdTHM`t3plP@=~7n9H=~H$`Se46eIZIUH5~7fftl(_!Wh3oMYfL*G&983XOT zZl}xCe%psGer1ZM>ES0k&0n!&c;R*oZ+5&F;?0hKP~`R4afNN~M(oQhpW|7h8Xn;A z6n6BLpFOjw)18y<3Vg082OG_wt+NpU4lG2x=qWkLiEiEkU(d^{|Eq7Is(7sgSIQ?Z z84H%PAUz4NMxak%<2(4ID?`d~Q5zYIR)TS3G#cPWNWoAb77(i>j~LK0VGUQ->j)`I z!&CA}7)!c - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..addf24c560a42c5eb5af7604f18433877e9aecde GIT binary patch literal 1173 zcmV;G1Zw*qiwFP!00000|Ls~$Z{s!)z3W%>4;0|=n}FPld0-kTc90a2!Kc z7RkRaCDmyYq-f$uvb~jI_;WOxc{6-`q}1LZJ?-#rlj_ax2R0krwV1bre>4w_E8HG< z_}IO?VGEer$2W~DzT3A?_2E12xym=+@Jr`6!3};{izLb$w)b_zdu%w>H4@gx*CuZt z>zdo|-0Zlm>)hZSm$waXsZI~g;l8QseZ$0w59Lca=CI#x+QH(0x7@zlX}aIF{8+vZ zeh;sF4f&P8*J9O$`~$Zes(0mx;~)Qq%t$EyjhyU|gC4-^LJn444olHbDZ1*4F8kVF z7jkka`qHoeuYR@9pLEx`s&C-y!cYz6Uk2SW=&oeYnQo}*e#BiDa(XEG!V(KhEG+RE zmUuA(7l2I93D*UX8EU)m*urBAkDU~Hg&#h;@X-SgPS)=0n8|jz_GHwvlIvK>4&NuL z6pS5xUnx6OYFa{_CiGbdb(+v;A=GI?pM_9A7y1Wyf_Tq6;$3@WiuP&G^_F+H?e`bt z;lG}kWbfovdLvU2%+5vA%o?+B(IV~^aW|>V05OTqc-ZnfBrxK1N%h}k_ZsQ7Ux(G0 z%qM47VK90p%h_buwZ#4w_gzcuZ;>BNpdZE*4_F=Mz`g68k(1 zGuN79KGE=PQ4Nb~xX{=a)$op82Y^wh#)*`}d1z*l4vTcSDCuy51lZ!CJq~p>&9=cU zuR)ffsZQSyJV60KdCHMBz@m{Bjdal(slv^!Zg6+Y`0ED|s3zK`NSm4H_hZ7saTLLaTd2?}9+8k$!_%>dE0izsmEe_xzFeaJdG5cgHp3&A z=TER+`0bK5J^m7lXI^f60Fv`<1fNj139nZj3pYA&qk?8X3!3dgt12fwDFew+6ou5$ zB~Sv`C22%pBY%P4!B?>Wl7yBqq0TA=sZcu?mC6*Ab*@;6_ZjI}e#H!ioIkkMy?VFCb16Ql=84u%2}%^3m_?!;m(t>l(24o*ml?R#>tusVuySj)9Rlt%OAf^y(@(E)`YfupQ-~)A5P>}*9 zT_6ZCBn0Ovly5`poSy83~xNLZ4kqM_g{qRRkD6l|r@2&6J}R;ED8+C~hLoixRnv}DPN6imt_ nq3=Cg8HFB9WR+qzkz%Q}EZAh_$#O8EvvSp+{c?^)UO@l=TXRCS literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_destination/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_destination/why3session.xml index c56559207..4a163a847 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_destination/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_destination/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_destination/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_destination/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2b12e9f3502e1456aca244c243d13ddcccec357a GIT binary patch literal 387 zcmV-}0et=+iwFP!00000|J9VsYQr!PMfd)Seu77mA6jIQO=uv?lC2nNMvcLdjjWXP z@2k}9qM@V-q|k2k;%a8@8KksEdJVYmoaw>~#tuV5myY-p4~#49C!Uw5q2T?PUd^<_ zkqbmZW6V58-ye$T>^?(W4CIE8 z_?Y)|tSL*UvG3BHVLDapV2umRIXarR?9sflZrk~E>RKn*yoy+5T>#T$x~Ox%J7000iPzN7#E literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value/why3session.xml index cc395ecc3..6def97f87 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value/why3session.xml @@ -3,388 +3,399 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - + + - + - - + + - - - - - - + + - - + + - - + + - + - - - + + - - + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a9f2625ec2b844f51e2ca8327d0bc4159b4adc3c GIT binary patch literal 4271 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 RZQ~ll@P9|2wDV_b0RWV!I&1&{ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_first/why3session.xml index 4c4038ae9..0b4e84a68 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..819bd9adacec26902a7366b15bc0f756f531f47e GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&^Nv4NSfv7eW>p|Pi_fw75+x0#uVftjDF Zr?HopVTi#O0|h@ph8< literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_last/why3session.xml index 6d19e62fb..31fb947e7 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..228b200d6f5223e61d7329828cb7b78547546469 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%&!$5s=6Uo#IAUmr7nBV!|9V`FnuQ)3?^ Y4^JO6!%%}S1`2+H3|9Qy(vd(D04}W) - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a4f20d2557b6282f2aa595d71dc2e733f60e6c93 GIT binary patch literal 652 zcmV;70(1QziwFP!00000|J{~LPuwsN$M60Wz4cHb`7wS;yN6t=A|X!IUZe4N43U;y zv;-*q^qnjMN*5|2l>&Q-tmqg2A8}$I+y|?VaMV>NmJLVLV&c-%O+r;C+1Exo3DFQMR@8_q9-P-J@puzcihuosmKDOe))|M#8f|Q&F0NXy9Z^o(SAV=2RQq#$yYk;v->l0=! zAylEXqE^5Z!==^|2_wqP$+^T<7|>QAtBTe*J%+{?=Kw>DR!0!P+MII|NaWa?>OC9X zT=7{u4;m0-DwH^ABM_+IF_oIhrIswXSjgBKnyWfEW%PJ5+xIz6haLxNRyL(&=X{|^2H)s08G9yvS?7y(u8L6 mGUACcsxmj@P^ah - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__3/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__3/why3session.xml index 19ed0b135..94ad58acb 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__3/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__3/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__3/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__4/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__4/why3session.xml index d923271f1..ed1650a21 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__4/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__4/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__4/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__extract__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__offset/why3session.xml index cc3b908d2..63d00cc5b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..39236441559d4ef59b43f2ddca8a4af0b7276d17 GIT binary patch literal 236 zcmV0wOU6In+NmUC~vr7=R)+B91L`FIvDMREcZ6W m3hCP*E5x=X3T>>r$XlNxOt7ex-lV=lR(%8i4$ATK0{{T}#&aA1 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_payload/why3session.xml new file mode 100644 index 000000000..6580c80ef --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_payload/why3session.xml @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..18797ff36f323929fbc6d38b9c4ea19aeb46a684 GIT binary patch literal 1698 zcmV;T23`3diwFP!00000|LvPiZ`(K!hVS|nd)}e|hu;L6LoUSz2)37nt^!348v%~v z%5u@{uiw#!oj9@Eq;axw!Wzn;Q z?F#*8KU?B>*uNBbx#+H|<%M5h(VhM6PkeoKHLLKOZ!uJrkG@*JwrTdGs<6Ajc8*gJhF0Wehw(}isypGK>v`haLyT=D$>~VQF0z8-iUyi~} zMibLaFAVTQOak^wAUmq$Z-0Fx^9nU9L4ZjubNrc%&YEtflI2m*B$*^bQGGYy7u0zaHQ0M zD)_#VJji#Sdem@wJX(uK?iY{xm3ZWHWE&hl-QIe(y;+vOMSbULlB>zVs!6HOb3w@k zB^Q)qT)s8k#{ETmwZOK!p7b-QxCO;)|LNpb+n3?<&F~(cHkwk8{l5f0;1~RW43Ikj z*`4>d2*NW$9*+=OQRbA(DVJ03-Bs<<95m@NMKVP)MP7;`harG{VFHMq1Q@gGX#g-| z_nBzFLA3q(ITDR$qP+p46&tCRZj$KPrU{0LK7XQSUkE3BO^hv|OszLa;m3rOTVvvT z#x!E)XsD9+M<2(O{p(7;N!KSarP!`jr90bhfFntNSZDWE`cJJl>3>Ywe``p5&yXe_ z98LP?k4dlY0m;@1U}SKv|F47qx&FWR^ndpHKLKDE>>#UqD}W=({|7Drj%rKc4Xyw( z0A5-BUk9xC>9*D=yb{<131H{`DpkI1{dM2PaIoG&;Oh;dPwSdHk>&J8!_#7epWZEN zcdgbtC);NH)l&&Zcg5hYxPzss_2{s4e^7kSpz?O-@sX+6dhAdFpB^hrziK)u0d^!k zF=71pFu{TTe?I$ZL4$i2JQ^mqDX|YFcWmAVNZuqzGDcnuBg5~4N)XNX7g)2tM_gTA zUN_rs{l~|8unFzf&Bx!95^)Ybpo4xDx<{h+tFQQ*k6t1!kmhdQt)I8{%B^NN|Jq%Q zO?U3de=`uf`Z|0h0--|tKYd4v>~ctkkXXN(y+3(O)Q|(#J`g^F33eCN$Yd|p#(~ns znLwF9nLux!K!vBpTkGef=5_8v=1As9=E!RZ$;)!2-+S0V;3kXx*x$1G7dKyx%-axo z8zOH*yzy;_2jbwgJKeE}I6dgck<+{-k{1$rA@NEV5=G&Jv{t5C^XM#d0xb7Y7;wrd z#9IFWe{oeXZ@~l%HY$Ni2_mso(K2J4z@!yfu>xu?5*VRFG8jXYn7H=Z*eH!~jP+d= zF-a5vQP#{xWT-fpXc9`65TpPy5)U)tz!K;f(I(D<6`o0QU#gmMVdZc;Sp+7?9~a1z zTA~3XnQ`E15mGHZb7Z6nofL8}Rgjz|L(xc_b2Kul(0QpMW6Gm+%1Bg3V3bscjEX`j4RvkN_f}9OKpTUB zAY!z@YwaV&$M_nYq#O3*1DY94_X>2WN>XyK=qe`+MVYY_HS}(QC`?o|E*@C2K}+u< zSc+*~W3L};hQ4H>P-|67%SjSS1jN_}97An1FwOh90aYj#(1A+9B1FeM!~iv;&K*RM zIP|59KGMlLhQe{uVF2V(1m~22T7e%TVTxp>twXe$Yk|Em6}q6Ar+7%D3G1zFL9*2( zSs;%@t(me?B*tx0%5cuya7R~YB(>5sgA5^Q8lgziqM<2pLRlDu%!;6e(^A=*gP>jo zYTJ(_AvcDJA*vh-Fiu8o7_AbFb0+vuBWc8V(g1UM=!+NHd!~fo+*7a;qftd)lb9Sc sB68c$BNq?s%aJQWBa0+&gC=Q2D@>mVh63zjZzYTW0QDb>18-CS02I + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_payload__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_payload__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d6ee10f70b3278d7480aaef6d8a82aebcc3f5bea GIT binary patch literal 3117 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 H$)^AS8nF5* literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_source/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_source/why3session.xml index 78d025dca..8bf82900b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_source/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_source/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_source/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_source/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a9c633fc9ae7caac9e15f0fda68641daf604470a GIT binary patch literal 384 zcmV-`0e}7IHNH^6OyLybVxX`e z3LWcyjx|;3H1=JYGfW>92fo5btU0yrB8@ae8p_Gkv_IrP-z>uVYI{F$ zI&*kuU~n&DU-vhsyN_7*F4K6U^@}{uQNV^T@5vVK440q5g?~qP@rPeR?bZ$D{r=x` zsoRUPC^vPy0c=rl5E?in$uzU*z4cmv)Jh6?fG5?kBo#=ZnIhAo^_=P0+E$w683u|~ z#I6&8N+7@jmt1oLf*TnraFbGKgEXOvcw-_ci&jfg0%8mp6*01r8zGZWqKZVr1RCu% eYENe*}MawJ4Tys1^@s9=Ctbo literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tci/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tci/why3session.xml index 9e3843f22..8cc9f610e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tci/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tci/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tci/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tci/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..762aea6bcd169779b1287d4f15403b02a9a6940e GIT binary patch literal 384 zcmV-`0e}7|Jh&WtNF$D(|KW4S)HA$BVsv z0O`!$jcLKHaJ}Vk)m!czmVL-FUupewnCBc|tL|?J7H&*dosotA3+?7#{Q&BmuITOi z|2JRFc~ds!s#!OLh>9)S#L)SqB03?~V!;Tvtbf2y(}-7&$feY>>Qgi>)&A!nC4r6|bk6m}0KElOMXHe`(Tn(An@HMQ?KzR61RiU)I#tq57gcY4 eiV#_;R#^eI(X>W8Mh9{dbKqbc1^@s72)rTy literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tpid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tpid/why3session.xml index aff9d4b48..1842f52ed 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tpid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tpid/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tpid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_tpid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5cf3a7be711e06550e068ad4665028a0f415bb80 GIT binary patch literal 383 zcmV-_0f7D=iwFP!00000|J9UDO9L?whVT0;{0W(4KazuoUc`b&=`~DdCc3cQF4_u@&O;yUhocwS(fGdP|0@6uYP{U zNh(A}@BK2SI2^o}{48md?0rnQl`{1*u%~^Rcggz~9QNgKO2QlUfKQS!34Mh)8Hjdc zmP6SuvF0M3r=ibFhWWi>s@HgnB}dQ8_M_yB?456kWs;F)%wMMR)blrk@Nl-dA1EF9 zyD~1g7O&6y8~u6r7W2+0nJ%<`g61&@*yy`!l7%ay)kkRIpRry2**8!+bwP2z|L2_Q z^eV6NMcu9%rwo;ligd8p2^eE2blke=w3B!P_e~X4&8BMJ3g>Azo$%006 - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_type_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_type_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7a1a36af2eb994d8db1fce7e7fb4db196e635291 GIT binary patch literal 389 zcmV;00eb!)iwFP!00000|J9VeZtE}%g?B$iAHkF*%NjalDO#XokyW5bsxja=hO89H z+gGXEp+V7`0J*@ui~ev#@_dAppOB9uZhP|m_=c&+F(c&zzNEe20}it+%hOQFcFIRT zZ*Y}jgq~O3Aa+FUIzBGPxCH$|Axc998O7iT|eWiWK2R|A$|=+ zyD`h5?3Y+`kTXOx5P5Z$TH?HQ~5ZFA7p&Zn{Phh z`C^Yhz&f*eV`^|KY@hen>htbB=ABP6U1|N#P|tb5T0PtnFx;51IwK7KC*sw={xC}4 zuBh?v|3|;|eU(@Fs@_+%*1$orGoU+Q=K?tEg0`WF(vrG^M^kl5u#0S)ARH~XMt3>} zrWR^vi0UG$FB3^L1_2y8QKpTND5B+H#WgG-wun@vO<*U~G673~u2ro8uv#f;3^k^R jnkp0x5ZTytN>gkZ8Dc0Z>#*cM6|SpyE@4@Of(8HpJRZD> literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_type_length_tpid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_type_length_tpid/why3session.xml index dbf08d9b3..87a68a584 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_type_length_tpid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_type_length_tpid/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_type_length_tpid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__get_type_length_tpid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..20708226d8e9f7e41836db02cc91f2728a5a416a GIT binary patch literal 390 zcmV;10eSu(iwFP!00000|J9Vuj=~@mh4+1mc?6(P=)#2?GbS!4Zpnpv(I&Mv6pg<9 z;8Yi5CPtIa!Ze|UocnV=plJzs?qJt=+jK{W4Ri^7I>A>w5GB zDgY3ywc{8=d$N|&mSRWA+7Mw!`PER1)*s@qkJcWcJ>_*P?QNv~Me9$Jy@$frVlgFUJ~3u-hnc@I=lNUQle~j3 zH2VMls7EJYp62PLQ&4D4ER?1Sp4aH1c7g??D_0vGf~njG|5SypWnGfuGB^mpkU7PI z2dTlJBz6(8XGKm+tQ_f5N#7sn1j&?gj4D%+p^6z}SdJi}(3SF% ksVoczp}q8|xmG4W3_~u2K^r9r>nxJRH|SqrFO~)X0QZQy@Bjb+ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize/why3session.xml index c491ae98c..18460d562 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize/why3session.xml @@ -3,183 +3,168 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..03db44a9c6bd60e5f73587b89c7cb8717c1a61fe GIT binary patch literal 1958 zcmV;X2U++ZiwFP!00000|Ls~$ZyPxhz4x!!+X6EffW>bD;{|*%CP1*Kg|3YvSxg!$ z%O0s6B>U^Ps1I9mn^q3mf!$^(vNaBB{cZ63sp3&m6zHE68HX2?&@ZDn@(g{gHuXvi#5Y`TE<_Ouko%M_uZuJzunTTZR59||K0Y}w!OXSCOu8t zFF3vEoI!#_qYLGsC8exEOgY#Z4}>~Gr2P8++PqceRS zxu1|l*po(iz#3)%{dGZq04RLK(oGi#4LrPo_y;E51ryJvelY^EHUpoMeR!p67De()~R|1LbE;`JCMm zvpO(+-b`1H9k}3a0A~lb&zkKEyuQgyUK$Gf*PxoA9v0>2&2;~9?L0}206uhmC7dsx z8`O`Ev_Nz2pdNaDc-cZJJj!AFV;9_c*LOJX{Fl;0|yOGdr+b{hAwa4&=y{!RW?hP=Q!wJmcF{&?7&|nU)eK7INxkPik#qSb# za~>{nM!Q7YTw*YZ!6Y8WcLW#M5Zd4Yg9i*A@auTMy&%5FeE(8Z7|MSr|HmLT&u_C2Cj`SL;BZ3l z>zojrzNSvMYBhiwKK=v#Ql?2M7$r)!B?LmBQ7S{+jTex# zjh3TCqm&C+(5oCF2g6MW?*t|iDexa~kZgiMA|cU7GAW0gg4aSR&?u9Vxdy4-T9TP-M zl9VnsLeb0;zvCc(#O{uWlZ9lZ1VPrDr1-W4n^6ZRgmy)7P-uJ%(d($umh4by^4?0M z7z?X2U=D##9Aqsz*X6S z+_9~ciVGzeSI9{Z$_NVRl2gul_MdrPTr$>xg2;*uo_H7*$r%}Z@g#M`3KrI6Cky3ujWUfbT52`{D^t*ApP zot#KJr-R8RS2ciZ1S$ajTzFfejUpAu85NI2s!Uj+2j7527l5SEOpUXsv(+giC1TXl zFM14Y3uKeg><-be?#QQ-gEdL$5I{hvw!jQUmx@S2<=|yu>&RTusImad@d9fUG^RK! zHK5pjc*iSA z3#KT;w&0xuO!Fw+pyojnD=D%c#iWxe(HNl2y+>_CjbiM1el{UixAI9B2_7@C!Xf)4 z5>-7*7PMdwby~4ze2fVVO2=$gsb)6u`54`fQD`$uAEI!D9lrp}Pa7yijEzuc-XoVa zi_QlN#K{7eks*-v}c&K00ti=v%z)heN~}imt>zWi7DqH zk}qUUfm s!$fMEQdP84O|D5H&pgGO;0&;T1&}s*5Y}-9HA*-C2fjQeL)KaV0ABUCRR910 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize__2/why3session.xml index fd151a673..4320c423c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize__2/why3session.xml @@ -3,200 +3,185 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..df41ca94d36a97a93529bc9b7456bfb380cd37ab GIT binary patch literal 2551 zcmVhwboK=_p;)O^65s4 zu?Lr1-TUb`vI=8xmoWzX&S{M)s-iL@BmeQs2LbsU)5Y%QxT+k+d@RPe>y3QF z>*Wo<-F7loV}4p*VUw<>5wbS{e{dJYD zClmjxrI)LAF_~OlPUme}On$i8O`^Ap_0Vti#x4rp*?kLD- z(c`Xz^qnA|OONmY1iAAZ;Em52o@bTPal4~2aeTBl$LZ9qdU^`1X#MBfmHw_fgszKb zR1~n2RC+l+BACy*mThaFez-oR2uv1kexAnq+b!?6b~8NQ&#+%d!`*oEo;&&pW5WC2 ziTXWa{w8O-X`AND`t^*GgUKtk5T5^a%J>VDuV4Yg6%qjAtAwParb_N z^ikG1gY;P_|Dap|%jKd7>M5#leGpwAN>lqiE#|46O!C5Aq%P=f`bqD*&L$`EbTGOL zxux>%@?GWd^xAtpQS~rXJvB~jsh*X~ch%$5t6%2YZ4B50PVk4Fu;uD8e7KE-9rj_( z(+7Pq>sDvGQ3)%So^4{jGi6pY^JaCe%x0&-wP_6U+p0P`xW1ZA+ew^WhsAaGB#~I1 z%+oZB{YmcP&Bev9{x9?|cqdc3E0ly^WiH(j%#iY)M4vs>e?0HD~KfXK&)W2Ch|8_Goc z8+_VyaWyIbx%2ZyI;Z!OnDPWcGJ*}|`&ynN-)Q;i`lXFt*+^zwGI8xB7WeKMV)5>e z<@P*0K%X`G;qR@7LH@y`0Oa=xC>|srZV+(ThXDq{qY&ixDJVVy1z&j;_y!<&7y}zB z5ce2LHaU9s*kYz)redaI<}G5T1Hhr1SvCJ_{@46}m-+8H0PNqsn))^MYwEwx)W7qg zg8hrLFdC)LnNIdoDCo#aC&ap)whPP!j%I&*%O zsDoWd{lzaNnM2!rc=WqpKwCZ^PpVseZNT8*X}$m+n`oq zIH(nWb+MneQ}XtIsl>l?^u3RtjT`vxBwA`i8CeIuzVzN2_;x1(b!Eq<&o*?6x#G-ojw{)k#?iQs)jI03h#c?f_392t0t0Be39hLD{`l z5>ygY61;_}1UzjnaR>-DX9JZ0l>n6hPbC0sK>$3=fFrIZ4k5t$9H8cZ&HtMJFO>f{ z1b~73-)S?U+59A=ZWY$8!jGEWb*pgat-?o$Fgnt-;jWwmKF#f8aL{MW1G^e9md7Y^ z)5&F_+dr8Z4Sa|TTR+7ewWGBsKMr?x^U;rkWn36o(G zlJJmuU}S`i&qU9tbJSJ}#*;9f(LW!J1CFe#Z?}>h&)LfCq}5SICSB6#rO5y$D8T|5 ziH1onrS;k{g+|7RiYW#t1EQhUl#=8zOS1IdcP)#Y1@JQHK&H_LW;8Qoq#7kDz6_1h zDp1HX8mc1$-#qe66JH6gomQo>Nh|ScyjG%xzGlFyUQNl!G$F!nbq|3|*N+r!O&?F6o^MU**8HCtK zgH{vUkXiD@Vib;hpwj2fZl`Z{@C$})}gh^0?rWImEDFfB5%Tu`S4kvcHj zMq)6edlMt40fpGAB}q$Z^3fTZ1{cN`PVfLZhG3}^xS%0LMS&@M>2va_M3uviR!R#N zC1zuhQ&*F7${Ok+9T<%rEEOwk1W8xPz&PX}jSGPV8qSnu3ap?Q6)WD9Q7C8(46_w9 zEIOW8B1tEqWpuswq5)rqCu2;oNTXTy1__9YI7>>jwj0M};}iGEOUist(h@dO=)FcN z(K$&hC{~I%L1Rgz)K@VpRKXK~={V|CMwi|%-9%?N4=&`G$U)C_6eJ8F)Td|-FZAW6 N`9D6M^ZuBH008By2NnPT literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize_payload/why3session.xml index 228279524..47590e072 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize_payload/why3session.xml @@ -3,253 +3,188 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - - - + + - - - + + - - - + + - + - - - - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..be4b7635f658f3cd0ef5e89d00330a140d5044f2 GIT binary patch literal 3311 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 p?LQMT-YjJGWN}0`A){6UaxI21E~knUgM; - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize_payload_private/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialize_payload_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..dc7e53ccf3e3279ab0d2c37820ae9bcaa17f6575 GIT binary patch literal 3971 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 - + - + - - - - - - + + - - + + - - - - - - + + - + - + - + - + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..eb20c0644fc7d4db26bdd851fa41fdc0362a4c9b GIT binary patch literal 1061 zcmV+=1ls!_iwFP!00000|LvGfZ`(K!hVS|ndtVgb@SBGod`Phcg6(CYt3Z*%M1bwM zvQi}feut9nI{dNt&{^O*AR)qnQGP1EDb_ZXVSN8fB;`!v668XT^% zU*ga-srL(PnsBom@Q%g{T(A8VHgmroD1N<~cSDmpoX52f!(9zueyYREBepy z`bn3OZoFUmMHiZG`NQ{}Uk-W3|JUE5|KjIsoZjY_3Ky&4zFA-U6;_nb4?pi>v!q+p zBET4OnJ=bXYd#Kh)+;|;=Tu@hbT`XdZX#zpfmM$Y1MR>~znlHOlNc4h{Yzu;pK2E1 zvfJeK^Y%G}F5HEDfKt$g1RGf1YT0f6wrh^Ji^aYF`^8C)t8Bt;PnBqnZom}|FJJN` zxIWN=T5J;JuS{^yH|NbW0GaFd3OD(R7v>vrh0BP`p&`fK(#OO7iu{GkD{74Kqk~(% zc0-P7oq8*D044Nn*8(LJPk*Rhcu3|A8n-ZhEfpVZz#g^anP@0R-NjAx(>kZXaV>;B znC*YV)cOE`a6rJfT69%N52-%@{J9l{0k9grcGMzlbAX_C-TqnPb8VVSeOwCUfwegb0QB7cvxW1b2cQG!2(r+33Hm+gvZRLc8EAIs4T>R zx(puccg|yTHXc{Q><s-mGh3;Mp;0MJUJ%lBcodl!Q>!WS)b5@H#B3SXV!u< z3bo-aQ(Cf?f>f2PHxQCbG-p+7W5l398XJ)M)#M;uF&^{PB1BJ`NqHm%D?$p%14N`C zQ#oZg(||5%00^KAXxb*tg0PVZPC>TPQU>%aDq|Cu7DMDhh?IHJ fl3+px2fTIVfi&y4yX`zEDqwkQAqb&m$W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__message_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__message_last/why3session.xml index 0fdde8af1..52275f0dc 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__message_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__message_last/why3session.xml @@ -2,32 +2,21 @@ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1301f2eaaadb3f266bbaa10743ec39a9e73eced0 GIT binary patch literal 292 zcmV+<0o(o`iwFP!00000|J9MdZUQk3#`io$A0f%*-wg~b6-cO4#cDZ;BTfo;M=n(G z_6?;)UD?{j`fUB|&z9>BL%nP%fH70 zEOQ - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__path_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__path_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..03c602c522958da0054a0b202d0ff8818aeee7e5 GIT binary patch literal 756 zcmVOH?G(Q3}G4spE6WcKsM`|0QYjN*MmSG!Q|np^62)by0q?k~A(xG&4p(G};n9oMl8H{JfaE6ZD| zZ}Nw2$8oFA>4JOeI6SuaW2120^n91cW3PQK-M96wA7|JP#6g|W*Wo&Y&L>+nj{EDf z^~Iq*IYUQ7s6(+}WVwK@Bd(PfaULzg2u1Xvw9jOZeW)uD^cfSmW$Eu@QG~jb^}CixryBLj}GYXTP|yEF8a%|Z!`T9H@tK0A3D5PsEIWLi+g5r`sF+` z5BegWnFoCl&&-4Vif4{E1K44$Pif$k22N>U&NT4fXMjaLb4mlJG;jpy^P~YceHyTj zyVMPP(~jd+Dcz2Di3w(P=w?LM4`N&wx*pL_p>Y=UsWQV;dEoh!iD6n5!Qw8ONBfJo zXdd)MTr>~*A}(4}u>4@m05Ma}c-Qs)U2rc~cZ*xUnbLN0;p7FA-@S6N=(QI1L%v%J z`yt^?z&=Cjm@;xqtR-05OLB5AEuF%q-yh4xu(hx+ml-k|I{{KwniD_5(TNu7x)gM(9y*pyhP(H - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6ffe0fde9dbd5aec2facb8324fc496092f11c410 GIT binary patch literal 374 zcmV-+0g3(}iwFP!00000|Lv5^YQr!PMfd)SeuCbz7FlFdS_pJgycJ_<)EFGcmE@58 zeVsH3v}BRex{%V1(Bm?5M>?atfEUaV(OC-~>}ial-CB!ziLt|MZHTZ!Yu&obxEfuo2QZ|kfbXhaDB0JU?qpa1{> literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset/why3session.xml index 1b7bc4d3b..beb96b0c8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset/why3session.xml @@ -3,96 +3,73 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d8a248d229d06ab96bd431868b95c6d1b0fd9bdb GIT binary patch literal 1177 zcmV;K1ZMjmiwFP!00000|Ls~$bK^D)z3W%>)+e%ba-Y}cV%54PQlEVZOFhsK0Pvk+ z0RE~P00LWFeSLcnqrfqoa*rm!>_PM<^!yjH>cXXZ4 zn@FkQU~EQEF5>ap-oX~U5nM1My7(Tt#yl8-7ZiM*9$$0!{9yvCLH$@58Y|&K3WXF3 zDI7xzqaD^B22%~@Xgp-LdH1E^pwN8QB^$h`K?j)UX$>}uUC8jG13DoY^4DxA zPRxe<6&;FKba(_=9H7JFtqrSQ^}97ygWI5G?78d1$YC4{h0A^v=ocIOrvvF46d>YBYJ#RPs1aX!D;cWV884%8RK&WP$4(2f<3jfT;KQKx_M|9mn zK<5?EtOPUz1MJO{)2tNy7yK9epL773LI6{He`)%s0e!)I!TdKLI;If7#MWPWe%W&< z@IQw=hiZQpbSF_|XRx5Op!7UYdg7hI!-R18(R0J)4A_}!Kumg{HMW5=(abCk?I&ld zosCNe-#T6Pm;IzIibHRzC;vy`|MIH(?B7&Z6(O_6NnuEO@JTxKQ3)2g5?=7&et|zg zSLj%7WE!oOO1)%1!t78%(9e~WEG5L)^f$X=0S6j zj6&g^V91-bl~Uk`jrd r0w!V*Y|xUGvq@8o=xlab@gy~qA*vt~k4hOFv{dyke9+`y1vvl!3pPCw literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset__2/why3session.xml new file mode 100644 index 000000000..e37f2a127 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset__2/why3session.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5039166a5436c05dab4744c05b42fce94e469bef GIT binary patch literal 1807 zcmV+q2k`hGiwFP!00000|Lt5$Z`()`zVlb?Z4N!%KKNqn0KuFVx)Rl|gcwP7 zDB6hk*H4j>71^N@TcpQPrVUu4x{LL$kHuz7f8s^3f&GE;evPXp)Xn-1+XmMiE^*W0 z|JvJxSGe4y?P32iLd-EY?eob2>$*)hzpegS@C7?^*2O|B_*MT73wCu?rPWP$UvEC) zO{%&NgL*WH-F43j+Z5^=BQf5+wt4xbu2c6Zwd>T?b#8H$>N;GnyYz)V``esTTlZ{8 z33+u6E+Df9Av4%L@FCG=V6X8V#^w&+FI3=^5d896jfrSX%MZOK%{rzp3-ymgg}*2) z@UpOolfu#;y1fhSaTmHDxzLsf|C|y2lT7y4*ULJ6KGkNDR@dv><+8rHZfK?*gncH) zpK!CI`Bu4-Tfcm6ja+$J5dP@-oDcK!d5ZJV%U=ud9VOT>KVvd+HXg7R*l{)7F#S~v z{&F>TPHkvZfX{8M{&Y@A1Cw}PN*N@gno(> zDjb%^UOX>2RdA}{)LY=x7#INmUNKHhyQw|{w%~3I4(xMpHr>i!Quer(f6`dr79 zYXA;}jRa2zumWt`iamxFH}qhS$1J|z^>zFR>>a=^|JK!f6nOa$kr$pquQ&?5@CbUx zbr=C({zLSIr|>K0g5MKr{uSW&bS-}BJJn$s5<^EEu^(&3+i?YUzdzhP!7hbd3b_>WIT!N$ zcL#OdZ0gnZU5fkY_r)cK9SS26f4Q7h+HCM++IpQGV-!{vxS=ZhDP1=yN z?mK$B=`o8GJ={OD0NDEErF?eh*LS$QO+A+vn-p%_&2_t3u&WQJgUugJH>owdoOWk- z*x@&2#hUA}JsKrKKHsGxq*z;Aa@ z%6~lmSEVm1U|IU2wwiArIf0E}vu)Mvq03!Ox-r_T1$Nrrt-V6SMtSV-?UqekfDUFz zq|3*HdTdaQ4a%`WF*XQegM2@Tci1e^FB7E(hP0i0N0+OqHc$6{zf<;Mhb`sn!?=F< zj==>E_S9=S>#;4Fl>EiN!4l6znzHhpQwEchT{lEL_!>@3)t&V(sWiV;KSaE)K zl`f)m5v7ZGUKdf#*9gqRM-+GeZOG%fKe(RE+STa)(;h{&^{eVQlgMtSI4}JkWI9N8_>sgi--@4Sx(&D+-`cGOi z-{$NyK;UwwzTt9?Cx+Wwl1a~?MwdM%@)2`r^kj{8Dx*QC?>{=~6Mep)O?dj4d2(!C z={fVi@Gs?DBGzcA8X50uOk`;2$CS{*9Ndcb{2N|VM$|fN|_Ttp@h>UkSTNDsg zO2(O}NGgw7GVc^RNkqC*&N?YM*9bvr$O1i&9JmnVo6HRnnJSQ;hH*WKwu%m=z3>8%h5HxCLV!7@>*CRVFcx)`>u_wgMOzDn*t+Gp)GxiikLS zCY1#Yfk!2Lq6isfV&u#*)KXd-(Dzil(j1+#3Mtt|5;j`jJHtx~cgP0&bm2g}dZjfN zI!6eJOl8@4Kp`Rqr+7~#D$JB~o&uU!1P5p_XH6OkAH4J`^;ELb(X$~s(t_ogQ7#xq zNhO@kkWC*PuBvQ>wGce>5>MvK6`4dGEDQ0NI0($}ut$Jdma`^kL+#aw!@L zwg8o_(K)J&|2JB006P#an%3- literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset_dependent_fields/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset_dependent_fields/why3session.xml index 7cfb14d56..81b94ee92 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset_dependent_fields/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset_dependent_fields/why3session.xml @@ -3,1083 +3,960 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b70d26f17d005eee74bc7f4de00880d46d91de77 GIT binary patch literal 13951 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%0D_K)j?Nj;k?eGfvhs~+ygA+3 z7)W|1a5vpfv7Q6q$u#MJYs{Gx0IpSfU_ X&~$KBVkEN#PoGQ{Y>6)cU_k!|L?jFq literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_destination/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_destination/why3session.xml index 93d50f7ba..ceb7aa468 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_destination/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_destination/why3session.xml @@ -3,290 +3,259 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_destination/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_destination/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fcef35a936766e3994253a6449649cdb7176bfc1 GIT binary patch literal 4667 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 x7Zk-@HaPwZO);dPd+=Gn#Q>Usy2#fiXb - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - + + - - + + - - - - - - - + - - - - - + + - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b9a05b394be6c8e9d03ada8f8c6773e36b1260ce GIT binary patch literal 10441 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 dk(>--QhxJA(BA}6)-2wykzW_u|yz2k} literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_first/why3session.xml index b88121f16..ff7ebef79 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_last/why3session.xml index d79feb072..c19be0bf2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert/why3session.xml index 2a0960f2c..b9322f0e0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..78d7aac08ee8e24d2060c01c478462e793ac4a73 GIT binary patch literal 567 zcmV-70?7RziwFP!00000|Ls>zYa1~Tz3W%>UJCjceL-^Ai>aaHRQ9@zMw({9vCUd> zaDRQZHZ3hpLlQ!18eaw>z0o|qH>=&POU#Eg-i$Pi>pe~*t}AYs@$+WFqp_f=U!&J7IvEneCkiSeF)8_ExtjhNgSGdR3 zFx<<1Ao2+=~%d_*ObGHISln~Gi*0^Wg2$l*Rnj$o*jM_4%g+?*{;`P*NY2ww)#J} zx*O}WZt?H8LifxUcK6p?tb4H!=B{=R|GL>f@PI}4hB{Ojr`cy>V+%(`mSmBv0kLQf zCb@U&qmm*}Xw%JtoY8s}*kw$boQ4FfO>QVD2$W&xRP<0vD8)Ha5-b~?d~P`nq=kg! zRr2IaOs%#LN@A3y_{`ZVr5ebHoCs`CK4CO%Lq&uvmCV+$PZVbm2!IkYLbMj6@|tqw zWE*vpm5iLRfvm`dI5{8%T02!@V5<#h*PaDQCe0uxqz);2OyG@ghhU5rtS>oBQZ~lY zKwh{Iw9ly6Pyi#z5mUjyp24Sx&_F?$Btf!tfG#J_0W26Bata|81Ag8qif - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert__3/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert__4/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__insert__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload/why3session.xml index f778a788b..b2ed554e6 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload/why3session.xml @@ -3,372 +3,307 @@ "http://why3.lri.fr/why3session.dtd"> - + + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - + - - + + - - + + - - - + + - - + + - - - + + - - + + - + - - + + - - - + + - - + + - - - + + - + - + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - + + - - + + - - - - - - - - - - - - - + - - - - - + + - + - - + + - + - + - - - + + + + + + - - + + - + - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4f45284a6b102f23018b36ea3fd3f0a4e68d1342 GIT binary patch literal 5492 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 BeQp2% literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_first/why3session.xml index 8fb94a19a..bc0c2c2c0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_last/why3session.xml index 14aeb2acd..49864a7f1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_source/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_source/why3session.xml index 5c7039108..f5a858389 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_source/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_source/why3session.xml @@ -3,311 +3,272 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_source/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_source/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b6cd86a73e13d91075c9018061dc97ec0c36e185 GIT binary patch literal 4934 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 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - + - - + + - - - + + - - - - - - + + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - + - - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - + + - - - - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - - - - - + + - - + + - - + + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_tci/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_tci/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..26731539cd05f8ab82e448f51910f1c4b0c2d33e GIT binary patch literal 5539 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 hF9>8<-xs3_V>dBV8@<> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - + - - - + + - - - + + - - - + + - + - + - + - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - + - + - - - - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_tpid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_tpid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c5e7de1991f582a1f7afc7e3355826d3c9071f32 GIT binary patch literal 5359 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 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - + - + - + - + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - + - + - - + + - + - + - - + + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_type_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_type_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c40e53d8129adda09b766fe40e90a20509df82a6 GIT binary patch literal 6047 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 Vn7N&1QxBd{WxSgGuN+ZP{sY~i!iE3< literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_type_length_tpid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_type_length_tpid/why3session.xml index cc35b9f79..4ba961bc6 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_type_length_tpid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_type_length_tpid/why3session.xml @@ -3,360 +3,313 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - - + + - + - + - - + + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_type_length_tpid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__set_type_length_tpid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1bd7db05750b0ace87f9629bc7c516ff12c12764 GIT binary patch literal 5637 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 XN - + - - - - + + + + - + - - - - + - + - + - + - - - + + - - + + - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__structural_valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__structural_valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8594594c2df824fd47840aaa0d588dd79f198bdb GIT binary patch literal 4038 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__successor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__successor/why3session.xml index c3e7e2696..5ce3be0e7 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__successor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__successor/why3session.xml @@ -3,86 +3,75 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__successor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__successor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2f4f9c5b9685ac5156e1ecd22aed43acb025bfc9 GIT binary patch literal 1218 zcmV;z1U>s7iwFP!00000|Ls{#Z{tP`z3W%>UKAM4_Z)i2WzhgZdnt4kI5V8YfY)&) zd9mAHU&>C5-PB3bSc+{#KG-AsnL|E4a%j1~!PI}f!LrQPn7^&?^CC5i)fa3Rxax-5su}>c87?@$kT3vA=IxT4PJ8X)t5+_}rG| z*QTNVj@lLVO;cL@O#HH-Wp2`@?e5#AS+|raQO6hjoo>Bc^gBd{x75GdXu4nZ^p&r7 zcDpCGpoUr`cg5azeY;8hrp0CR1(%CF@;1rs$h#m~>_E#TT-XOL2JSD35j7bjYRkwU zmqdoylTr28$2#8i*wcQSyy#Lps>`*iWrCymeHS;yUkBRJ@X1yqFZEg&T{bXkbk8>1 zk+*r;Y%hVAX}axm&2|DtD*WHpINS~GjMn02%(#alNor_ITqwNw{b42dE4Y5-`-h;0 zf#-2TIye?Q1>9lR#7!yG?uVu6rmojhoM}y~OsoEpxbr z!`8@C&5fH%`0%+rR4!_Ya$!FC{836s{pJ(>mBKqPQpitZs!+}y<%At&%yu%a)Zye> zm!oTa?zr#JaVKae_K{+{C)Vs&dcXRB33#!xE^Bg`lYHX2X5f9Zq~QjD5n`HVf59`& ztj}Yc(76vgrz(I88Fc0X_^(uyMceh$jX`eD=bV9OGO)yb0^}44IQGW)Rw4g7|3nR+ zX1N?Mm&K}Sadk_K?rVL6KjSa8s$mz+QF$A5^|Z&zT8*1Ecq+2D-hDo#vhhU*A5&%Q zeDe4=wfEiithiZm=XeZ$KZuw~&cSyTK8&yYDTO~D=;tv1xyzaVOl_x8_baOOt-?P| zna)*uhE@85%EC@%zP1w$L9X_fGz5)a+i;R2c%D5!W^q6NYiBO>xzNvm_PNl0rRTU}Qt=t{>aV%+}&rf+ITD&olhpQ=hp3*;jO zEwoD7gPlw^axN3Nzz_ z2L&2J2~J|bkc$W^A%k3{1V+UK8Y=@tv_l+_Lh|gQ6{HyCt0KJxA%%sa*}jQZfJ`FG zWFcfD7!)ea@8+Ux$vG8?iTK(Cg&?y{*+>R~sC>Za+1bJgRG!gAN*ObINhTx-0}41k zXI%8kpfo8Ulgj(JqIGsmg4^1XmCk%N`D{as$}r - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d1fc6932b70850959b3b82e7b506335a328f763b GIT binary patch literal 677 zcmV;W0$TkaiwFP!00000|Ls>zZ`&{oz57?}ykda9ELn#gdMQ?*$H7;DlBh<2<9N0_ zH2;3GlLncaVQbKJEtVXNSR@`FDLzV0ci_^)9fZc;g5S2Vj?TpPJM2boBPCzG}3tV?;YlancSfpF{3>~DEahul16gO>6Yce}tXVZ6RqBmWS9vu$D zraxG}9jq-rq{H%SB=Gyl#||^jW8f*L6%59XAz*(9@mgF(&7X3uS={{`iI6s?#}53s zUT@>iukh*dwMSLiT!xMxY9Nz-G8t;aT*T>ddHr)`I(!S+7) z`nRFMkC=6y8BVg{&Mo|pk8T)nWq1?;$l*bnpM zarFA>=*odl&8<7glw$+7!HfzHCxFY;x=gLh)H=5!%WF$6(W#5exnh}RzEH~qTl6I=B0g^7((;=e61^|N79)?_u-go6|z^>(7`; z(exi3z;FHpz8t|vmAIV2PfPNSJ{^iY|0*p6EkSc16w`zeM`RVKWXgm1K)?CR~DKpQVAJ?f2LQw6kbj$$>%1SD^ClWBwpk?Wmn(Oof L<`t);UlRZTRsv3Z literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__take_buffer/why3session.xml index c474ef94d..ff45af9f9 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__take_buffer/why3session.xml @@ -3,130 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9f19fd361d0364be9f06863e8c0ed5b75ec7f8cc GIT binary patch literal 1414 zcmV;11$p`(iwFP!00000|Lt5&a~ekwz3;EcE!XLu?}HDzsNyPDa!GOBnvb5CG6J%! zT-Lu&?*cZCC0oG8LS#xM7KxrW-97yt&Fo11+wf+l!k^te{lU-V`0Q=S56f^jPwjm9 zF?92=>_gjjwEp$(!%WW948v_$Y-sm540&oCd>#lhn2D|JH^bh{%nWXatDcG5+lKDe z{X@HXAJ)|L{Oj;OY}$BV3Uyx`*~1+h0h}Dd5fMD<)0-Jc2HUI`^S&)}TI3C*hK^F( zhRm<*9=o#m)V9>Wr*27o+mi?bWwehiCy8c>doDBX9PRkz{P zy*qyJwlHR5D3pFRB;!;JUX+eg%B4E4<+*6%`Y@O{0E6Sv_D=Z&m=kim^Tv%;YR_1s zn{PS7c#rYoUD%J_4gOjUo?tc{OKmt+o$w@e>MN5glPi<2fXVFj2~4|NeWd(_YIYyi z`K-0OT%SrDkfSu238KO=O`s=`qAij-Ta0e2?pED>Y29u5O3zBqO3w?W=TB*in$NGV zJIeDEdM*n0?qHu_auSTZI;`c>!vk3r?4=Y8s)Sv!gza_){AIKM_HC7~DqmH;UQ)iA z^AgaG%sn8i=Az~jnowO)O{lIYr)dxoC+QGzy9b2g3>ET^HHrB6#?$vV&%j^By9U&^ zjU(PRwzoAaS6>lVuZOCYsjslXyWEyx&s05y3RO+3{YULT9#geRT87HiSIgDwq3X3W z^`iQZX+LS0DVbhHsESY(q01Ga=JzL$Ui0#QKGR$);p!{l@;(mN`yD^we#a;PakW~s z^!K-02mdbds}Y2&|0r1%;Z#NVe+xo0S-T!~S9KMFQT3wgMeQK|8^PGJA#5*IE~;Eq zxu|mS+IwTqMqHCu$#2 zC8A2i>yU{3tTYQmX`138)fqss!A;bQ^Lr!6C?V0S=rv zVW}S5<2e&%5{JG{&bc^K=4iNZ(W)t<9Iqqj!HJ@;{x|G*&J^AJ@EGDve{*ok`D}NG zW6n3{$;$T6t(qoy3C=i3E-PJpqT)0{^rVxsB=8sb4P}GHlpF*)6yS9hHUf_c*+-(N zTwyEmJfrLadY7c~SrpF}S-Tt!fZ!1A1`WH=GM9spyy$a{St7)S%Ie7;=nbGC@2Ks*s4n z07}O%2`H*WX^_7Yrc96qC}^bADe54N6Ig5p$>CBmu5fCN4daCPOf0TE@&zqPVL5zJ zq_-(6itK!`c1Q!rXIjakvyDdO?6|rlTVwV?b1|k2$qso3)ey;$_9j!ek+; zRHW9ZMl0Qrgksrut`sT=XuU$qYp8=ss-PUKOk*ip>jZ&7o*XSGlWk6k*VPGUM!#$m zbSCG51}k`0uugH(k(b7~sFd)7m20Gk$UKJVJeG(u@?2aC#Be!!s|PDyY{!|@Aahg# zDJ5O_n^(HHsFMr>7V=_qv15?}h1QCK3qdJonBL%pi8%O$(8TNv&*Q-n4OKy;YyzE= UwN{%nvJjhp0E-qr_Iz6a00>*S^Z)<= literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid/why3session.xml index 0b8f4c02c..834574bb8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5b3df2176723a2fd6b84e914d4af1040d00858cb GIT binary patch literal 597 zcmV-b0;>HViwFP!00000|LvGfYuqpphVT9rz4xNgx1c@jVM7;6PsLX;l17ce*(|m; zZ2o=aY`&VNZQAUXEj0#PwqMPR-+2&5hzY&-`}2_do%dAEX;@S7J`Z?7_0mzFeB2J> z<=}mfV|}$5D7Ekrzfi$};$4KF#)+5fLc4mu4>eZlxaqsHPcULEJIsAr;ro_FRxemC z{Xm-+C-}C|v0$P59H|>)O?iZRTXwd>biKxlF8XeLg+qtyGQGji!GX^i zZbCgLZs=lDuKjq98*1>kEy&$)*Q_IT>UAxeSb7p0T4?#%-vJB$XR^v<2i#7qqbXT8 zIdrS6qwevfcdf*?t%$IAZP#z8eEP`;v=8q6lgq`coBa%<$0=4UtLHqjhm!e;^7&9R zUml&%nai2W)8exFFqUB(%XYxtUt!;+yTlL6>AbMc0G}|x^_Os@8gS-z=JucAwyZwQ zh|Y+fGNN7i!Q#63)nCIs*^4qA^I|-cegM)JC$nh;-|re7u<5OC&7XYiquoq>&`l?3 znm~}V)|{ly!6YFVMFLa;$QUKn8~9)w>ySjklvB#!B5-7>&ai--*UGl$D5-L{{i5uOi+!qqLEXTPc~cIWe>$8nh~EXPk3YBwi*G#V*<=Ki!2}^tX^=Ll0AzFI&Si|isz^1GJ9J7V23&I$RD|jWtJ2_zMJ}sI jHz9)!SRWdRiXmtenv|Boy6RI7Rb-m4 - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..747eae94151e1868097586389af6cb6de82105f4 GIT binary patch literal 9216 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

@Mr&BE#u>YwLpE!7=Bk)sd(6QIVe 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 - + - - - - + + + + - + - - - - - - - - + - + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d4fbd28ca58e32a25cb6f601f502a88e31fc5030 GIT binary patch literal 3993 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 - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..74f85b5be1173c901cc8dbf5d495b5bd507addc8 GIT binary patch literal 320 zcmV-G0l)qqiwFP!00000|J9MPZo?oDhIcAXej%?8b-$Ai=0`V$6+eVVTEBaDQv=p!xZ6z*vG zWOP?t&|ydyhvr1Is1ONa7s+#`* literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_value/why3session.xml index 6370fd720..0fb4726d0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_value/why3session.xml @@ -7,55 +7,47 @@ - + - - - - - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..95c2e189da2b06a89cecd1365e11ec09fd90a131 GIT binary patch literal 666 zcmV;L0%iRliwFP!00000|Ls{lZ`?2p-SsQ_6Z9===+Gr-mQF=hffA|4z@20Gl%VEATF-Mm{7#A6JALAGXw}W_kM~P$+ljbZW9@n3bl~wdfN5$PTJi+FB50mo-2L> z$Zq9#uZg`T-m=H;;@!pj5yd+!NBi~}`ucS!&OMB8SZdb=fA;&rhPC@<0=kG~tHy8@ zl1ty@H|#Z6#ed;jKY<(wAw7k&uFkP(zU%RNu8PDj=7bf-t65>`)<-#t@_dA0s$M){=r> z+<}k|IVr4v=O7-;Ff|0cA@k^j=$%jsh0s{yR7KciUKe(2$zbG640Ba>n AivR!s literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__verify/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__verify/why3session.xml index 1cc843afb..3cb2453b8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__verify/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__verify/why3session.xml @@ -9,805 +9,499 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - - - + - - - - - + + + + - - - - - - - + - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - - - - - - - - - + - - - - - + + - - + + - - + + - - + + - - - - - - - + - - - - - + + - - + + - - + + - - + + - - - - + - - - - - + + - - + + - - + + - - + + - - - - - - - - - - + - - - - - + + - - + + - - + + - - + + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - - + + - - - + + - + - - - - - - - - - - - - + + - - - - - - - - - - + - - + + - - + + - - + + - - - - - - - + + - - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9ec3132535db19fa2b5beb4550673a8761bed604 GIT binary patch literal 9011 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 Ocb6VM7Yp0%v4b!cH-GQ5LF5V z*Xa|o7t=JzgCv`-)K<_mZ!NNMge%Y+7#M;f2Q(wF$Nh^UA?el8NCVA>ALrf|`+;{# z$kv2J0H(_@U*$J4nN$0w(QxR#Mrs9}v5m9v3+1Lrd$VJe2p>3{JAz6H;d+kQF(j8j z>U0>dYR2JZ>zqmognXa|AWveVlwkq^El1Xj{fXH9Qm}%%su7;UU%>?wwM6D? zTL-9kut;PW!U-Yc6?yX<<}%$=q`t7JCT72Ym|0i^jtGNbW61Qi$}wIUmVH7}uv28~ z0w4r*QrqUd2;<by~B6Ensy*0$SN6a=02+mpqU~>@$qF4D-l{AX22mDW`=B@lzD=c`+r3 z8n7rUMFK1Zwi*VYMe9|@7A^?iq!2jiTp29Gcm-}FFt1}|5&Pj7W@g~{;4WrU~Jm}JBJr!d6}TF0yUuUWtiM`m}gM)T%4$VPC5|Q=IG8NI0}f3+p<#R${g0A zZLVaB)F2Rpav|rD7A6Y=Ow(Zqp4yz;@|2YE@Mthq4z5B - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ethernet__frame__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..be5a426b6ac6173d6c28450f0e51a7112dc81056 GIT binary patch literal 1204 zcmV;l1WWrLiwFP!00000|LvPSbK^D;hI{^sbZN2pMv=k|=iH>qsO2oa#+t~okEU<# z{{1Z#o0gqWjs(c(^ReMbUkU}f40&NjI7rT2Wn@y;GYQhRRr@opZ1k>n+Q z+v4>)bnERG?AN#*XgoRn{rYb*VE9*mpRmQvUHa$ac%i9RVg+LeE52fF+obE;;ahii zg}130F8`#^{LRg#OP^1bi)QY+?fquc-QKL}Fa2)f&*b@0);C?re;L`*T9 z4w-6vW_Mc6Kj+fj=fVW8Hr4u=(2)ed$>Z?eYG&ge)~INTZi@Q3oE&rq`E9DTjAg^By|Y zL1FWhcg^y+{ZWx}Vo6q@K+Qr}7_cy4VZcwsfMUUa$+iE7>AY+xmd^jr9YxW0pvso} z?GUiMQ&#|fiM!}T4cxOe@QfE6$>$2m+U5UP$t! z4JiqZDJ>QG6%vdU&XGtFj2^A%IgcligMbuBilop%LhqEPdv+x8&KGY4kO%F7StFgI zq~xq9Ia~tSGPbi44U?Hsnh=H3kdo3ENKfN5dK19x>P0q&Tt{>XDb>;-pmIpJm}TTi Sr2wOqYQ6*EONt0*J^%opyII8m literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__available_space/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__available_space/why3session.xml index f77f3dd5a..3071a9ee0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__available_space/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__available_space/why3session.xml @@ -3,36 +3,25 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7549812667351f41ed72ed5925bfb3296e001248 GIT binary patch literal 351 zcmV-l0igaLiwFP!00000|Lv2#PV6uch5I}OJwl2dCr%2AZ4gM5S7}Gbo-tU;W+TTJ zEpLwlm*R>=;zx8eqbWY0IWtGjH{iz^`{*go4@ePnMwl3X(qF+9rd3|rt(;&Ld_JCp zE7>pkk=A=GQsEL0m?G0G$2_XBenxJ$$G6+KoBx1k%~umYXAp6wg!xWzj*GDwwO5;u ze4r!?l6WF8=(VOW9f{<)Bw5#Zn2GkK!JQEK!<>t6q6up*?7B=b6UWu3b(=pnS4DZ$ z|FqTD#6wJP)JL^@yK@QO3TyA+9UIN93|5ReQ`e>%JX>cS`;Jkoz}z-=s0~>4FgB8@)`-PVnkE@ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1b71c52adee03603f8e1da309718b1c641404588 GIT binary patch literal 421 zcmV;W0b2eaiwFP!00000|Lv7eYuqpp#qa(UxtDJA zSB)xvY%dA|9(;VOEm-Rq^jGzO}Py*s3ThT;4yeDowQ!oXjr0n=zRjyKfn>zdMK zuX_3W272`r8oVBwdMh+o30ny}5w?4(`HI_$+o$5TIX`=wul1ZhZ+GSIqxfr#76J@G z@Ii7RI56EZX;4cM4WoF$zpF-d5S?MJHPF=nL&r`1v~aSeF1A=jtZ{W091<5%h6u(1 zN292XE+_;ct4K6XNzOHR6}&XsNDZCwon)Lb(&!eEY`k#FR4>U + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__construct_payload_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__construct_payload_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c8d238d96a21ffbfb7dfee1943c530dc3ac392e9 GIT binary patch literal 324 zcmV-K0lWSmiwFP!00000|Fu!QP6IIv-t!c^K&8a_bEJ0Yg6P7;UO90BC$*=lcOdoc z$z6c9LJSqKB#!g>`;o^D@u{bMm$qI1M#ql&k(frJr{im;d)f`TmD3^e{xF`l!wVg< z7&o+{UGAU9mw6(=ZCtcmQR$AuNIM!T+2>QWnW@>z-|DPrF|##Hlbp-Nhe(q>J2)Ho z6a8hQnyELB|CY1668cK5E@G?8+^w~~Uc=As*5CI%wQg}J$VQ*6)G|enTC?#Id~%6n zv?wv(sRt)07c|AVl0enFu!D+F5mQKtf~_Da>MwzlzzD&xWi%eN^CoM{rI4;55XL#w zCB_ICf-L9)8mYY0St;;rDo6{*!6E=@a3&%rt~@1ROxk;8g0CPW6zDve^csqZQprTF WNX{`+u^Fj?tat}`YpLT*0{{Rf$DgkN literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__context/why3session.xml index a38bcf31d..43bf202f3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__context/why3session.xml @@ -7,34 +7,30 @@ - + - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b34d90fe3e7e8d0845fde250a37aaba70b190716 GIT binary patch literal 703 zcmV;w0zmyAiwFP!00000|LvGfYuqpphVT9rz4cHE8cP~U&=mGknm^#H7)ztA>3(55 zko^0~`6P)6?P7(NdJo=}HT&w-*z@eHDc&4t-vxi_Id*|YZuDhG7qmY{8jrr`6ZIUt zr%3+c*r(mK_k5kdGYsAF;Qc;-pe=hJj)#%2NAGtuj5&5V?Yhy&ZV3I*=wO4`JQIiW z)Kk~b%fp7g6z~lOjI-##U|!&&gn9Z@!uNyQ?hyHU`33G3>+>YrtCYB(SKiRqSH_pk z_Y&6UrN^}C#(bNfr5vvM;n)w4qN(Fuy!Ffblb>F+-S)iAV;?zri6+P9oqXK?eBop| zb4=4*s9)$kO+l4)#~VNVpc7Z)TKsGAuf_l06n~zJSNr|V-4Upw?%;bmY?(ec5a5#j zbPEq>rVHzD+loeA7GjDj%M?|LDe4`Vq6#oYm1c@6#uQbWDa%-&m(KOmh~<-=E2n`4 zQjxoc6%#8aR!ppzcoP%!>S4nh%}ax?yO!JtJ?mC(-|7h)ckUVt^|z-Xi!W-%Nm~}(~>LPORD!l)3O;~!ulI%n)-ybRM%2nOZBfW z)dJbh)l=oa3Y&5BkM;qR^Ab--W-|hfdGRQA!E0g4(##a2nRy4AnG!TJ#c5`W(abDO zv#P3-Od<(DOH@OxV`4x;C!%m|wDT6vti>LMNBLrn2-{-Nh(gdoq}W)O+-1#S%pp#8kd|U zPzI7jtX&RLRS*zT;2@LBKTz7L6of?-ARuZROb*hOb|HW@NG)3HY9gmvR8|L_S_B0- l2&=%U7Htc8`=JHLjF^(vhCpl1NytH_`UNG+VfddN007#GUZDU0 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__copy/why3session.xml index 5821bc5a5..37ea4cdb3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__copy/why3session.xml @@ -3,155 +3,147 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d9510589724320b63e0ba825a2034e5374bf6253 GIT binary patch literal 2388 zcmV-a39I%WiwFP!00000|Lt5`Pa{1NefO`}_thu4e7Cf-5-(_x(0nheytc|WCQ=5N zq!|tS>$kddAtW7!fe;e#hzW_i+Af#RIj(kW+DnY>uZuCJ`)m9@j?L}#<~C2;do1JW zti=h^OaB(|rZhO6;{AwYd(%wwErz>N^0aB@wi|{0t=-Fu?rh7&%BS)5Pn?eNy6t?$ z|4#2Rp5tVe=Wn~0bC$o~w)f5K8{TGyU+^2wnt64rdoJ+HNX*}TC5v!#GimYb(>$AvZ?2o>JH5fH+%)m#y3N1ZW?6O9%x)*+mU@vVX*L2XxW1cA zn%kQ(8BY7geyp0kT=QxKA0_Z@7gxEAFyc9on_C9`&V7u&ljPMV)M8K=I!WiaI;nB>ymUmt=yUbwb-?{f6|E}ReoU@?UK z2k~MIyy(t9#Q=`4n<-vXkSF>2s{J<7Bh`UnsJ)RsAGp-DI#TCDSTcLYlBrlaW-PT8 zI2AZA1J1{oOflROIA`Pk&CxPf)MvLigxp8yTf%!NLpuEcuJdTlp#C-7jVCQlQtkb1 zo)K>-!n5YKrA8JU=>l~})FQT}J#w)p*Sa)~jzG;PgmcR$5ooyz@*jZl4V6R6@XieOW8|yH5xf;eJ(zMyjvAvfyi zdGX7MaHzbv!mh&Z;A=wrn6>rZfm69qx$v%QS}z*>Wl8V$HUviI{P(~XgTS5#@pZV? zeeIR1Z$njhf~)X{WQ9R&!@=k(cGC4Zp6z;gc+R~Cr|jI7B?i)X7N>Krx_+_R;y*Es zf8t-=vT}40&bHknqao)mJHN))DHHG4p-`2jD$5@!i+Dm=#2+e)804Th0%duQXWPoM zpZpd0TMV>cX@}db9sYOP;i|$_g{um;OX1imJ|lpUzo3sJKeCsv3{F*q(^do+kOVk! zO@IMWfK65SjH1AL(&Jnoph`fMfYp2n16ct)NWh6Hz^Y4|X#srpyx?&fV5nYY1~{j)Uak;ZH)(ALGzrav!a_Mrtx9IXI-Q2lvbx7ODb%z|j>cr{gUn4#|W=ofjyuAz<>h0 z#Rly|N&pOKz*}t4t{U(r8gR@Kz#db5{!PqD3&3hG^JWUL-|g84PXS;c2iW)a>?#09 zmINF|09GjgoHFt2%wLIrWW+z_nZHl|Bh(rH7G0*ttPo8OeBmx%?60z8< zwLFt%W4~K#^U-0;>eLq%wl*NyH$HWB7?s)TmU-(_S5;_^YAeI$DK_41x7@X%bTEE> zko@3&QoA7{Rc@->RJl1uxq0+gZkF4y*AAYzd6|26u~?|WF1c9Ofn8#;Ve_e^;)5zh z6^gwJ#oF;Sw-SNn;k4DckE#(>BdSJxWQ}+@nzlyzua)(c^_BG>m-SC(2IKL7COj`) zI2(G-*cOws_g|G5l9RJzke;)n)wHwI*(7>+Y1~h6_P(9`tlf)aj5!~@NA5!4(qs;6w8Zwehn*s@9Fiz@}!Dnj1rmniIeDUaFW)vDrzX?32i31f0d7ofKZ>lC7r5aDz4>#luSUh`kjs;W95C zy}`&q3hliOA(4$wIccjpE5QV!G(|-fyc85jk$Bct6vt)EF{aK+GLAZA3ndFheJT`a zBd9DEK^+mscUFoiDHRns2_lP>Wx|Ld=8zRdCO|iUpqcdmir`UzYXgy-;z|)3wDf_j z`??I{o~~zWv<4RhHHDTttuxO7H5Xmr!LlL>cRtY-!As^CIM2~|Hhbs-W1*1jPx8j-amV5(v{=DkLv3 zsUBQHGVe7y^g2T*pd)1M0B96w;Dq6-Lzht0A}30q4KBqjoTo~7i3UQZyOZqe>M*ae zvYHqO1XCxK(i9vO$UC%vyfBj5X3-YjLC(sgQdD%6^ni#Z9La#{qw1N& z9Kh?OfQXa5H<2q+0%D)!UgXY7aRxbip^T-05uwm{aZ;u19Sw$##){4g*#7||dmJWw GiU0sWa*U<` literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__equal/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__equal/why3session.xml index f1b4d6e68..0ba4d1d93 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__equal/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__equal/why3session.xml @@ -3,92 +3,81 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9b31a3771304ff3ec079ee33e4276e4a0fa54158 GIT binary patch literal 1112 zcmV-e1gHBSiwFP!00000|Ls~!Z{s!)zUx=?UM#@jn?SdKE=2w?Gh6-gGhSlb-^{>0uC0&hox4*w|+0Qc^V!Ei6*!@Rd-VbAI<#yQivz~VY zd`EG8BmZwUvJK@JdFUA9ruJ96-*nOSW4Das^_qql)Ah)Q^|*;~z3P@DZ6b$zL2*mh z`!?=dqAPA42IhH;=X`>nxC3*4WjV==zXeQ8C2(*V46OHao1z*mDnhABxnq~0AgV}h@sSNF7!`yS9)ze+y z9&b#|e0+<1grf*4k0GQwbcyr}w`Ym8JXfW=#19LTA^ZK*v|pemlc`%4x>}egQ6FaR z|G?arM{!>r!+re?F%Hi^<$hm%gs;-~h6r4K$5$S_bm`5NH&@;>SKf1MH!T28Utr4# z#9hsWFRykWzEyMK6~zT!PF?18eO8wjQI}?#m0g}B*V74K^I>66pC%5oEX=Yn%fefb zh32N>aXXhFX91W6U>1P)CIJ6F0@zsqW&xN5;Jpa|^JsnmnCpM8|94pb4+Nn7{CS}L z{Qp7wavKKid)SX`U-Nax!NSwN;tR<3X>Z>TRiyT?uSOn3{`l*pXJO?tGqN53cdwd8 zCuyxJnv}M}1ZR{mISE;+N~V(f34RCHxaxyMBfSSfLRd&UjL8ZHnMQa}B&{h5$XHc9TTvoc9TW&5rs3>? zmR@%_rHXUafVJMMBt;EY2t!U6p-oCt3S5&*Qbt*oD+CC(dhI>>YKj+AC(j_?kg$^T zFS*$nnU>wxqP#GywO+iUAr5G)FaWA^a z38fk)E`XuJ*(pI3VhbD|Te2ZRz%7S$<0bPvsZuq&Y%v4`Ep#!#rYbc~83og5&{UN} ePpKFmj08(wgVaff - + - - - - + + + + - + - + - - - - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2a89eccea7dc21cc125b02af24b68421f0f51187 GIT binary patch literal 457 zcmV;)0XF_0iwFP!00000|Ls;ykDD+Mz4I&j6Kre@NSi}0Q6sJPwBkA%>~Yr;0cx97 z^6zV)jjAe#R;!@yYA?nx&-3x-8BKgd9nVMHVI08Ih@Lb68iZe~x7`_l&ZDOg+|UD@ z(gwc~fOXUvFf>wcsE_c9-86sh=7VAETm<8S_5qUxpkaq2noEx-r@{5F=pFWPwc)d$ z2oKl=TDS9Z1I_1jZ-O&Ajqw8E1xL!_Miu3UqjPTwr6(T-50C(cbg~Wp8fihy;P_9D z_0UH;NBHSG{Nax`ykVN}Q`RB+Nyo{jQc^k2+#!_aYlq$;MGSW{QE_>&@2P}^q~G(H zaZ7z4=N94HvL5l$4QQ^fiK{iWM9!>+jX2_mtt>k5!KrDf(qO7DeXtXeb zOKzzuT9m3FrSmF*^1lOVM9rB>VI&z - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2637e6067cf23ce43e1a5b9a50657dc6db6861cb GIT binary patch literal 416 zcmV;R0bl+fiwFP!00000|Lv7OZ`&{s#dm&+Zdv(HA~j^lV$^$~l{g)b4H3x_NIHnW zeW|1_n#7Zhw2L5s5cnRCzZ3W<@TUVz5#5r=M}$JX+{aMDLo9F)iO@Ol;Lc+T7b1<`;W6boIrj|Xk?M-PjIq3FxtDb!(Q-FE{ZV|(nDRO^hgC!Q zVbLo2<20S%dJgy6UN7I8D)YM04ZV$!%cs_mUkA7ryTm7M01Po*A{5sVzE-=0C~rVq zs}WXhPM<;Lb)bLMJmc>6VGs8`|4poJAg*7u(1&x|i`^d15sHUrND&UDZucYA)Bk?h zF`AZga`_P!Vr5I&ma;8nUy!o$9_IhDu=21zu>EGY3t+nd{!QqZ_Ml8a-*S$o10xAE z8Os%NF|=LyCcZa}RHwW$99wGwhqhB~FinF>a~zB?)x_B#ed`TbAN1g<8Ndb|8VPm~ zs3l-ENhWp6I~fpAdW&2(gRq_8CQ!>o!*w+&R_)w!@;-pH0f-M40IaYLDH3F>NwZ%V K!o{kN3jhG9xy7ge literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursorPredicate/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursorPredicate/why3session.xml index 4bb726281..ac23185f1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursorPredicate/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursorPredicate/why3session.xml @@ -7,20 +7,12 @@ - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8ca02e2c05c40c08eec8ef83a89c0a0b8b3df43a GIT binary patch literal 274 zcmV+t0qy=DiwFP!00000|Lu~oZo@DPM0bBhKS8u*%N{ax3DUjDN}MIC72w#0qy)*| zS4mJ5=u&iOrz`?NKIwP|0S?T3Kck<{%yM3%q!gB!`A`bH39}C}Ikv}`mdJd - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5e2444812af943f0ed5458d61018e1b418d30a4e GIT binary patch literal 339 zcmV-Z0j&NXiwFP!00000|ILuiY9lcWfbV{aeT0$!#&c*Pm(Y2ET!m~&tznW3V+Y!| zuY2fy*-I7+A;BlAcb_ZE}0>AEfmd&_=D7Y1LJYT=)Kk?SpnP`aBKduNz%! z!Lgic8S@udiACwLb*#7AD{V-vJ%;bNeE~Yt*5v#=<^I3>nST0t|NONlJ@x158;am( zF3v3wb6D(RwNRS84Ul7U@CV+a;mD3S!;<|xO#%T5WhtJ#I8PxBXfn);BcGB_V3nMu zVq*%E&)ETk<^fr=a3mjyJO_!6QpggO#IqNUQSE@7aZ?G(c7a))SBT!}JO|P=nj|t0 l$p4+wl7sqLSS%=~Nf~%VkTh - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_last/why3session.xml index c55b4c695..e8d93bef9 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_last/why3session.xml @@ -3,45 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0746f8e8b3a489c2186e055571179bb6b2c7bc7d GIT binary patch literal 645 zcmV;00($))iwFP!00000|K(Q8Zrd;ryz47^FADHY>fi#t6fKZrp)0W@mx%yHaU>>i z`t@BqvFfOZKi~oejNU^6 zzxfWiTY8U6%4{4dY45LT0GH@}Zm~-~-VKzk-%g$Ojf<`=kBAkxoJ33&E)=bQ;vRSS z_)4e9=0De=(R+(PC0>U*w%>5I_btfFPtjK#*0=l%zMNv(KKbJe2-0>CIwbue;$+_+ za&D&P$9(=eIUHyn=Xt|Oko`AI{Q8FNIOs3x_@^!rw7nmozeM-|?;G8S$k*NRC7Mm8 z&FwIjsj#UX<1jYr^scq$+0(XmjK$B~S^RBTOPpdYdG6MlzoeD@FOHkP-oI*Ij=FT# zaDJ{Lu%U~;CyHmUB3ho8qwk`_4Wp`D4oRk9 zl}j>5V*-!BBa - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value/why3session.xml index 3cf91dd9f..33a5d49d3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value/why3session.xml @@ -3,43 +3,101 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - + + - + - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..566df802716f749e4155afc3908e2869f8715967 GIT binary patch literal 1511 zcmVr+iq@-nnzk9UU#EH~MuTHmW`3UYUZp*#D8@qCS6+t9S@zj52*y2HGR_~-UC z;YVEU(y%Nq6S7crObS=&>!v$zcE`9$Rrl#LF3_KxteW%EY%lXaDZxbss04eha~Yns4BbS6<;aNX z1n+m}1pffefqc7~vXcKDxzdI&}q>1w@0MQm>aP72Ky* z{FYk%wm|ZxU7=qkN(+Y6S8ND#*Z$LA&b51$wY!wYA%Xp?KW$fCyKcJkP1;ctJn!hw zrrS3AhSyL8r!w;!>w-qa~qcndmIzdfve#b2(J=zAQ7$#Sb(%U$%(7=Eo7?q(+=O- z9zFW}UDW1+8-2E?$YE|L$B3$t9W&i#y1h8vJ}idh)~+_6=&ClgK6)4lpND>vvwG&= z1NaC3ML?Jt_#_M@*!FdDZ;F7A&%a4ZKLP=72KK-}cr_H9N8rnjK>el|IFG=21iljn z63FHeIFG=21ilCXyCXcw4Q{u1UNYM+$^+pz5BJ<$UKy3k%O}_6{2)2AcpjuLKS;+W zI-IKZmrw&6078qqa2+l)8m_VZyUn-7cmDW%pH%q>e4mEx1>gCr;rq>=j(q1c-=Bc* z3#xrzCgS%P6&r8Cq0b&B^VkIL*aP0{yr20$^Z&i@|HJU<%J5+Hd7k$(-)FwRW4`wv zegLPOP*Q*X`q#DO(489K8ZC<0j{Hv-?7w_i7)brG!lveP-@6bDw!7eFml*%`FGR^5ndo(UE$ja&zvV))CcP=VKr4WU&8nj{>1=rRa?xe_`7LKG?B^+?8 zgGeINc4jG)EJ+H^la10ARh2McV=~SF2^$V1;Fylw`7EunnS{t3<63z#CxbxEGFnFs zz)9t$h(;H4veF?~PR4E4j4^GE@giy;P--i5Eap_@dGd~jn04YYMd374(ksy1p|XaN zkgmW<>AXl}4feiBVWEA~{PF$diz(thK1o3oam}1YXD(w6#e{BTsga?#PPraw(Pk`Cyi#bC%S>tx7Ep4ZoXb{< zlxRiODpI1#1fmp4dk!k;6l2uVvB0U^CTbpwl&lgXusBb+L||F*z=TB(CIDm?Fcm3P ziQv7olF$$|C>(z@OP+uqV*-_tU?x?;G89gLtAzEQ3yh4b$QX|*TNj)o z;A=F913?@@6^buu|5Nx`ck1(i}FTb^P@^wdFo5FlbUGArT%GE<~@ N^)IMzO;F`R006!4>s9~& literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_first/why3session.xml new file mode 100644 index 000000000..2d3d3a06e --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_first/why3session.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2ae4d2d5f60d2b3cb395fbf851c3787ef0f63aa6 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(Z%~ua~KZm$8?hm$Bzo17nY^Teg^(dKnuV Z_?Ve_d4(8!F;MUmWboJ5tBC}f003VB7B>I@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_last/why3session.xml new file mode 100644 index 000000000..bead58dfc --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_last/why3session.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1b47b1714e02c7eb7b05b2655ec9b5df4f2c8d5c GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..14fd7df86816e1258f4622117736429d8d2664a9 GIT binary patch literal 1668 zcmV-~27CD*iwFP!00000|LvPgZ`()`fbaYjdmk*&)$azz2VH_SU`#FxUWw{gLO_u; z6dl<6>$gZsvi#7*b}YwI8ZacfS!~wxt7c2;uQ2pCml$ss_^l01yZDY>i;I33#{YKL z2|wX{ouWaXu4_gEi|hHkSuI-dE z_mJ(Q_nQUDZbC5VJfjl_BD6hy=aZe~zo67cFFlH94WHiJWAN);_PRux<1UZH(emiA z6;ouMvV&Y$^XdF__y@-JJN~;SpamOX_INfDdTOStA%WUOOgA+gEuG*v`Sf1t1jjDH zA-^70ps3{$EAS&F8x(jwGu!sBfUL*J&cy z8+QFeZG24ULz$$;)6>y5k>ue-Qa?&0d8`VAXxh2^|zZ`8ne2y%Hy9GdqbbcN2T$9_&I}WJx>2#P=Oy%1qxOU zVC88V>~Vz`u)GK?wEQe}SL&|RU1{jCHg8^tg)N0Gg)Q&h)87OJ_Wfa?pM=3wT|dVH zGtOS{_G-KxF475ayx{GF;jP+bUhOs+cexvaF=$smnS$?#2)@O@J|s4ScbMQOhKW0? z)B&p|bes|?%8u#lIB|FZ$#>=ZB2HBITTksS?+?HUl|O9Dd%yfQgLmbBV%2|VlsaJ4 zh6krq{^dF7Lw#g&Zxt}{x2yp^6a~r}pdjFAYk)lnj7E-G^=KtSk9(J^c zQrjJn`(peghy;_$VpLh&N782S6p{4EEOo%FvWpKD{T9;>9~`DY z=a!GW_txKJ9(fhmQ$7T7z=@Nx>-K+Xyt;tyy+8-&NxJ8o^}$iMA%PtE^amACFu^`q zTJkWT=4tVz|4J91B~_qcrC{YZ!b*iC)8XPv!fjzgfkc5sfkc7C9waXA=x|rwd&$20 z`eI4+vYSwL6V7)x;khW7^|L2d7PB{f0GXZV#>Vqk7qefswL3c`V5R!sa0{=-$ptkx){wGdgxn5^+x83oaE%Vpvu#VUYo ztl``{rfhVcIb#gVB1-MD*KC-olH4R7P%?u~2UsNr^|%GrX2AhS@~XeL7j=~U)iDd$qQBxEZC z#^eyam5GeXAPv(LCFu~-AVqGMip_Fj|aF)K(YgjR|| znt7&WQV2;7iOeePr7|2t;zoJRWz0Tg2jF}Zf~R3F4izJ#I7&2BV^Z^+QnX$~5j@>k z@Ifz5zITkOk2|DXHkS0aRDJ+fDycP(L$tYg=3LGSVTLO36h6{l$rOT@!*>qIzcA`0 OtN#Psw(TO9Q~&@{1UCNw literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_payload__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_payload__2/why3session.xml new file mode 100644 index 000000000..dceebb111 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_payload__2/why3session.xml @@ -0,0 +1,160 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_payload__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__get_payload__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c84f85a255fe6c4e55146233b9d0cfe98c35a8ef GIT binary patch literal 3104 zcmV+*4Bzt~iwFP!00000|LvVyZ`(Q&$KUlS_Psa&hj#+o1NbG_07cKsLazd^t${Sj zv7Li)4GQI!D&ZhQ$ zk$trPojpZ+WAEm%`0n z;jF#)-}Ylo+i#!jS36%`TEnGBba9J8T(GVi_@~+YVTSQTPvSa`VLJD-Y_@pW zuyn1?cgKZ$@bK3~xl3}|uw~ldApG@tlSb3!V9Xb@C%<@_*}LW+dp8Z)&coX7;|+GzD?7hiMq!gPTVt>w~kvTgu_9iqoL zKg`x=|6Vt-8ECdW(3`ujhnTHzdKo#bE=z){NbsyAm>)K^oO>$0df#1>(i$p3O##)0&FAYLOecWreI-k zx$9{5MFZd7ydy=XppBJw+5_^p3nwo5_p)Av4#e|WpS)JZI57tq< z;Nd>avT5hc?y5jdZ%&>HFqR8Pmj=!~8_s2I<7EKIcUtP7znT8`yU}%es3W)Sn%T)2JbR9<6rI1Cj`mXFf@e(rYHcX8@!NpBPoB&dtFZC{FoD#0YdmjQ}^BM)LWtHDi~naIFU! zA%}Pgd)6P9-wyDm;HKcF;O2F>sqDX3Y68|t4%lt)AXy$Hg%pJpg%npuiu{(_A1jS- zM87)3)^I3LC{QR+xMC<^DX=g4&qeh`^+om9tNN`{pyy8KNc-uYrgw|!eY5!S80Ssn zek|~>$3=c&rF)epuTnh4ZddAr`}?amOhBy(v0=s>Co^$Fj$Z9j1Fu2WAoiuXG?8Oe z8oz|!+)fAh_}t=YGBnK^LhGcg$o%$jg}0&Wv*6mjYg-go6!$wRu9P!BQ_h^EPN+eD zDz!o(S0UFW)(U4iRhTXgZi3E?bZZ&4hyLolyYRXWAKwJ9he4dSV5m^u;s+& zV9$0#Hdvtz`fP(0+~8g4w)KL`Zsx%18Qr1cQs0OfE(|u1V=sqXe*3;Ct|+c3?!6Ru zd1b|krV8fdDlgfe4v?UO%f)nH zy_gX@(O z%?nWqQ3_Emh$y{ZN=6wkvykJV0|bCo;P)+hzq-7n!i%A>eBpJC1z0U)PWBcwV6s#A z?pY1*ggrrXc$|xplZw?Dm#CUQfH{d=uL#4U9pU}HhJj;2=*$S?9b$dYbtOQfBW=< z5v$=^r||EJ`S;3hZT_#1nvqXg;bv#DKRiE#^ipn= zs;N-pS5-}U|DbTAaHDXeaO0=Av8h%WuUT8E;$JO7*88ELYQ}0tM~02Dkzr#4JEhA@ z@<<=%)#yy-IlwA2q%uP)%sK_LstyRvPsKU@k-2Qcv5@}Mv0^=x8@Ad`1lqL^F=izeHznoVATrpZfRb}w)m zg45(`dp3&QstP(1;xuJIEKx-G;8~zNDW^C%Vg3dG;kCW zI#9GCm8T%B4cfZkSaQnv5MoHuIGH#j0gY&77%@V{2%H+Jgk{X)hj$8ymq7?LVpVVu zjZ(}A?IP2Ha3GNdFvi6weKz8i@x)olqxX?0&_)s^lnx9JYb6awBT!^3;>N}Wgy@W(K_ladgld?!W-kUbKWNB&`4F-DND66Qlq!hIj|4{H(VuS zxeFSNbmg>m1bZLRZAl2XoD*wllq8a%boR+qBJdDol3GW}tqG2c2uZr=LGh408Ud-$ zX%aZ`!h+I<3PN2{QX8)s2(-*rP#F;bM~x(-686GG^vD`Kz?h;|X0L!&iF=^NB@jV{ zK(zpkOV_VsIXjU8QJ5F-u zP+0{ll5rlr^3EzHTw*G)hyxoHrgzQ>sw!`k#N@@uN|3fKS`kcArKLnAJ0i5^RuFJ3 zVC~_is zWTK+d8_kfSm^om%aymjx5|cto#%&%UCM%^O@xTI(aIoGmtd%^`47H+@z>&yS82cbi zQY2aIfHxHHg|&fZ=$eQm^2`aQD-F>lBN32ZM9nmjkq4xW1yCZyHeRN(G6s+$#(+6W zK}m~bi;@zNWCWk%#YyFq!pDY|$#RM6ipWYp--X~H3?VFAK}A^dh*J>wJiteV$5af) uVUHD+A?Td - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7d0830afb52d4befa76a62c8199500a5282e411a GIT binary patch literal 1926 zcmV;12YL7(iwFP!00000|Ls~$ZyPxhz4x!!+WbD;{kjzHbAhafv$}rSxg!u z%O0s6B>U^P*tTpbkz?5{IUc2f#A-{`WYv4G9_gm~ci6Vws=d7WM42y_bp6ZaUo)7A zcbLB{@Uly7xA=t14j29X=P*+J~jM z+fO*ZA^vr_S>2F4Pt@HdvAF6Z#;dD&OMibA#lJ3Y=JWM<|HU&*Jx`B)oh4l@R{avY z1&_W_$qq!}DM(+6C_D$!{%0)uINF)H+v&RD@-_*+>NfNF1Lw5((0`oCB#s6A#T!Px zpK$td3jH1Dxat{F3EF9|taj&HNS{~O_QH2a`}_%%-!Q)YgvO@Y9$oNX1`-??r8lwp z;2hf}Ep42p z=b8HlvIsAvQI6QdOrXCm=nnve_gK2+EkY9yKS2Bw6K{fvCsRM0fw-Ue`XV*8}oKEuna%;cr1v40M#8R}_Me%eg;?>Ekq^TUrFl)_gz?7r=cC-3?W=iUFdj@Rz*s39x@et+|@V)Mv?K3^|s zwd$@GZF|WV_<@GXdivbAgL>+4{$U_^*+{p7u9=C4vE<9fiZ`Xua-H0rbPqM^I?;6t z)^R`L>h9ymK>qf~bj|mU?zq^~K;)}Ai2P9&^45=*htr`^EwnAx8Q97`)*0p zSif^y3*198x|+YYJ(N?v)BOo90ps+uxdx1ceQOOk$`WwE72seF@KAlYcy}mLz~3$= z?#|-DKE6u?x3|ZGoosKiy)m{2FZMn8#(eMa1|ZeNf!j;U@s{$C9t@r$*Bey$&Y!sQ z85>jxM|IK{HpNfmq~j1ejJn1;=?iOk%t^;o(>(c?;Yn;8rzZ!~lY{BW!LBC<&8}yn z-(l|%cJN|1falu*On&eRe(*KQ&r#Im2d{k?u{B?Fj0X-ga~eJ|J#Lz8;`D9eKo+p2 ztjPc-1DFipCozC~_P+&qTpxXa7{GzL=(xLtgDsH9{)6TytFJlI z>T90e+hFQ*(B%%*X&2#FYDEX9+O)|U{4wvZBm zRq|i(A7z>VQkY`M2oWJ_RU(C?B5Bmxd!IQw4Ig4HiSF}Zwr3yMKVP%j`Yr{dh2~OLbRg$(~ z61Iq-R7rq}TyVt|4l;X=v=0O+Ipxq32p0+@=bg%ttR~Vjg(1i`CGc%F>QICZg2-5} zqO*oavMy@DL2kd1UU@ndgVi=VN7ki z9z-Lh(qOm&I4Cql7RAI$3yQVLa~qj;)FrS6K~N0>(NGRK^YGcqET!{WB;{E^=mbcY zRE>hh1{WA4X>(ACf(gn8>sh|3L|?S7QF70*Gz%42dQxaF6clfyj$l-w;xXkRN;Mg| zEN&u^N&r!8(Za}}p_G`U1Ye^xcRNL|l;hXHNFfJBtuea5fi{I2Wg0`y37(6q;Fb{N zWDMM|!gKEyazpmEiDWVvi6Qu)tP+sDLH^hlNme+lQLeF!I>wNr1gDGP0y(XKDuVT- zv#U|QagkXQ!fGy5@IU9gD5_XPNGTYoQK8{<6>$87V-;|MHHsM$fk6=3l+5o20M5;(!JU$lP?3=AFG!;EgvD67yw zV5`%Kqm8rV6C!g85tK?pjlRLildHhprkpC7The2uWVsU=WT?I^Ljy6gPyr+(4oLwU zctDXAuP;13Rplt|q3FHCY%QjcFtDrz - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..01cb017a10a1f06feb16d4deae055c7de57a2b17 GIT binary patch literal 2519 zcmV;|2`Kg-iwFP!00000|LtANZW}ui-S=0_ZWh4>SbP(RFQCO3V<4E>476<&Uyd-c z>??JGWWIiiEm@ZAwk%unn^{<`?&@N(>YPKeA4+$IZ97@C7neU%q|JG{`uoLy$1rAR z7=O?3ViMZP>?h7AIO}kViw^%Y|B>(%r;D`QEPn=!0rOj^kkr1@T&ECYPsMs_3COykDSrxLH*b)o165T%OGfLvKh~x zI8C$j?)#Vr_FPpx{j6o}Y7t()2(QSklQFPmZpM6s{kJa|CqMCzu?rAvfYIG<7OSC* ze8cXNtYZ2#cHfp>fqdHj;AqlsUdLfy9A5u;9KPUD0OQx)ef%`!Q3#XIO!JC|Pk{%@ z57m;o`L*v=00YKZ?ZD^}emz;K<(JjL(SG3h+QX%s0!If=pZoowL+y%H_E%wubr`^R z#33Gv1NaKX#VOo`LfhA|0K7boUjoQ)9mgklaT%APF6&!?U4i|Mf!*y1$Y;UhzJv4) zAfF45@Bsk1_Z;Aj&l#R)mD1~Wug0X~qbKV)?Yc(KQU%s({pZG!hND5=Ubp}+hYKR8Qq1WwQXN;3Y4D?W_Yf4 z1kfM82>_lJ!4g*#0t|&fos>I5VCC>l2>fXwtax{w3wBQ+;{HHfIeM%(t~26>d>GJ*xfQ2qY`AQ2ncJdP5EkjgNE4oPwq zfhq!31m3p@bY~CVy{s&*EUqkm%PfBB>x%dOyb8@IRNwIF*`zyoela?HoiaMsWslL( zE~Zwwt#bSR<#zeDer0=Qdu98_XZz6Ps=49+ziCsf4|B5{w*6zwT<=EjzTiErGW7g1 z1c&HQm7xzRL#ru3WqW0NW&4L``_U#HO?T5%QV-IG(ty~a@m{a>USES)zl^c{O!QJK z+*90cz2Y(C)gJZ^@}SRS=;+>a{wkz(_4ZbTbop}}$GSRMBt@vxBe`5Y@J$}&X3h?Q zd2uFAkD{c#ucf#b6`xMxSU_0)5)tjhpE#MKpC(EpnSZqX#?z|A4d{^>s4$2S?OQtU+Mqa^dDkB+?_rgDgfI9)Htk(lS3$g3ge+fg^#c;MqW0dGI?ag^LX z<0Buh_Qb~rc;Ew@#!1JrWLgL?3?+(?97|wgNM0+Q{|5gQu0g4+02Up$S~!S|4muXI zR+um*M^>x}0j$(fgOTJa3FVCCfoDO!gRqv2cq5Iqz=dEz0)mV#`2^Z4<2cxuRcUWO zPeJEQ0SafB^dhq;g5W$W@0C=6BN@p?N#+2R;ADXgxaTS{AHW5sl#q;!)G<8;YlSt6 zq6aCt@zx8?oik`9`HN(v8QPEr25+LnOhf4-XAP4!Fay>RyOpMR7zrOwCQ)u<$OX~7{4BgI zZL;8rXEGDjz&j%)IkJrD-ikLYS&7nUORPoCWMeE-^EHcItZ!h0OYKh1Y#QZRQ`xEaBh9yqH3H_ED3?-|6~N_sHMm>iDt6V zatOXy=_aCrKs%HsQB6`iCn*L*$r+J2mV9y3C>NqPImVzVXv=hR4iitbU~`I`6)W3V z@@ypOLx@ys&Vz_TQDT|VK+r9t1$PZN>U;nKm)6uXA+lmr#F*)HO&U`)o;BJLQal)f zIMKsqEuN6g*OYSilBeYC{E19s!Ia7co_kuS`YZ|eFWjPQsC@bJY zb|ig@kdkaa)``ZE>I)iyNDHl3$wVF%>AjXBk_tn~s*nwO6O1D`X`>4j8Rt4Akz5Q$ zahZyhYP^?`c^b8lm@PBfoVm(LQEFM@xwp~{W?_h2gcekU49yC}F(cJP3C(&d8W9vl h8zkYLgq%VS+}Vi6XhYHqOcpEK{2!LkvoWxR004~}(?0+J literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize_payload/why3session.xml index d2021d319..d3b24fe12 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize_payload/why3session.xml @@ -3,198 +3,152 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..717b0a22464d497d7b578d89e5ae6a6de6d75ac7 GIT binary patch literal 2666 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 - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - - - + - + - - - + + - - - + + - - - + + - - - - - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize_payload_private/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialize_payload_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9529cefd4f508930d137aa12413e2ffe2a5fa049 GIT binary patch literal 3370 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 AzyJUM literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialized/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialized/why3session.xml index 5bdb271d5..8dee573e8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialized/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialized/why3session.xml @@ -7,30 +7,22 @@ - + - + - - - - - - + + - - + + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d169ea7812fc85e5c0f00363f7b4b1152dfed80e GIT binary patch literal 550 zcmV+>0@?i^iwFP!00000|Ls=GZrd;ryz49a0|oe|c<4cwpaqQfQs_#o$YmoymQ;xi zoWCz6JGO#4uAMkVf#gC^KD0w%A8;J&uC;cZ zI`9LnbzK{A6AvQ|j4`bl`=*XI)Y$kDT-=oO<`98CFGQ$^1-Gw9H*C2{;`a9~tZQfM z_6~*`+BnU?_u&`94KyQeyHk_lx{vpEyoDaKr0EWt+S@jTD7m9EWHl{LdP_EcPRe_T zx04iK$0V;5J7lpZNXk9BB)S{+vp@F~Gvl|f>6^mGk~q4mce)PYCrDbjhrFR9Nr`c} zBU8%7i}rj>P|1rwwWK)5l&oM*(3WTN!{4nSPg+4<*$U4*s7t)?FRVbH_QIo*+$G{6 z^)C_lXzL4o;uXt)&)nT18*R743WoiIFThiI70jc0~1 o9;8Vikr^W#NP!?}U@rH(N(0&lM?e}vL;}g|H)k64K2{6>0F(&`HUIzs literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__message_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__message_last/why3session.xml index a943460e4..0d77111f1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__message_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__message_last/why3session.xml @@ -2,32 +2,21 @@ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9454d6d7f7348ac0dc783b09c4219290ed842ac7 GIT binary patch literal 294 zcmV+>0onc^iwFP!00000|J9MZZo@DPMR$KiKf!v~mWB*jiUtTe6<-s z#(Cz@p=_;cowvGa-o%HlkV%BjNiC!$fn++-+Exm3wY6<)3RG7tG^$Q0V;D))q&wGO sFw9bUtXoweSsB+T;}km0!F66Yl035VPI=9B(-lZnzjyZ>o<0Kr0AV_WXaE2J literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__path_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__path_condition/why3session.xml deleted file mode 100644 index 16f725070..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__path_condition/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__present/why3session.xml index 2adf27aca..bb97e674a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__present/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__present/why3session.xml @@ -7,25 +7,17 @@ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ce632c2599304f2cf009681b9659eef1ce359326 GIT binary patch literal 376 zcmV-;0f+t{iwFP!00000|Lv7cYQr!Ph4(&1k04o=B`>nbCbSUfrg$sH(x??UwkyfO zxqX#13AAL5cRW#Wg%*1dm!NFrZG=+jde4r@>##KebezDp<^jyEgN@V5bzATby0~A4CqE*rpbhxm?#l%&J@{M_ zXSf;SPK6g3FoQ3KK4d#4R;q=N@+X<8^BE6dQPbmi3y8h)IDBiLkC{V+i07@03)+X8 zX! z!Tlfe8^L^eW#7TAy_99V!ncyKQgBIyE&z2&rR0RfSaO{oXDoBl89tnR#hnqZUrfsriIQ4ZBSGu7mN~Vk|@tmP>zOy<|`o3R=I literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset/why3session.xml index b49d6b358..8f5f4cc4c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset/why3session.xml @@ -3,96 +3,73 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9a39728e123980cb07c9302994be8d9c77ec161d GIT binary patch literal 1149 zcmV-@1cLh?iwFP!00000|Ls~!Q{zSuzUx=ymP3lF>7Mr?2QE~o+G9#rRnLo6#Rg)F zEy%A=OFUx03octMuo(`rJZ^pJ>Hhkg)`;Ph(#<(7``Gp8-)Pm-`9NK_%9p<`|7xKX z^ylg-(+Mrs`Sx@?oYL>DY~f`5#8#Y~Gj@*HL1~yW^@X zuDdQ@U#{|c-Cvw{-I7n}EO%YJI3M!$&~@Rel)UOnzgiFMgFTrEa6uEE*}#MS0PkJX z8&J3()SXjmLi$SUJ7=FKVWvzyps-V^k2K^K#FqyoK3QKb`k_nxI2FTN8k4h)eF2h3~>uFUM`^)>_HX4db8K%@oKfcSgrZ`P5xRsYQaR9@0ky#^j2B?XcPN^vWQQ0 zQT||E#3#Zip9tfgQt@0En_-g}E%=H0+a9~#z3R6UyNXp6s}DG_PbyZk@9m-PZKjSS|Y0qKGi{T*o{}->6?uSY(bi#eDnYZ*(-rjb{l&gwf6AMWTsz zcf+Hb(cS(w&8j=+iylwypcy=>NM3V}W}3|3QzH7IXQ%(kV=^Xx>q7U2Za3e3_TU)b zZ$8v;*S@0m6+dZT(ahR7%m*c_^1PYyz*gzmvmL0?^RXxPy7bH>0gpP{!;z{0Q~{_0 z@F@gfj>W&O`tMWpwdVhyHUIp1<4_ftVg0WQf8BGa8t~22*s9Sy;eS>6w#TaoP)v_8l%`s z>}F&jNAQ9rG8FLArs$(^MQO}ZsNmTMcQeu|7mtPjB@ZfDJV~&rXsLt`V!WMf9FYlV zZIP5*3glFj#u<|AXEZ*sk!ldg3NNHX3`U#C(U6+36d8qUfIB*!6af}Z$lCiwWeqjj2RY90055x zP*F}EOjxSnkaM + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9e5972b6d5ab17ef46b2e7a85cda246f2dbc8d00 GIT binary patch literal 1769 zcmVhH)~vVq3zb!*mt-daEZGC z|I=S3yu{@$?GMYxgfL+4`p1iNY}-C<|F!z>0v7DVRqq#K0hi^QFWBW}lUCc|rrrIG z+tdsnM)jx>hfV1U`xM$1BXxZH+2`fwwoRY6ecJ81&AM$@bbudI+lI}0NS}wc^;bEk zzAasmBJ%PzxPeR`2bszCu`e3lj6-Pr9bZq2h;6&RS}xn|rlXdA z9Pkr${x|M!WxiIh=GmLcvx&P>&xJpEJ;2yLueSguZ;w6a-%x~&?K3A9u<5|{oSjz1 zjm=*)fv2f*>kK!g0mmNPX$|by{6z!)G!5>&V5h?Y_Ou3OY@RnQ%n3EjX*KlNJaba$ z%b7b=b9Hz`oAzv??$+Y!^zyGW!#_S7_U~VoBb#3zxWp;>8ikwjHW{46aTxlsbvN|bty6rkMp1cDc~N=s)_GAD9obnEvI?9E zoC=&*4xGXP%BnLS4J!sJ1}X+#I|lZzxN9BPI<9s6itG3ve12%#Zr83h*C`${p%j}K zw=+yc|7m00of#v*j&km(w|zh3r@!i!L$_{+n{C>W({2X(+7_OXvd0^57M$;W^P~OT zUf*8h@+y^Ho@7?I>UW!dw_uka&V$gO-Ej5{?&ADs!HeNysP~W8cmLo|zJKhuKmPPW zuXX;5)%nD1p%(f}F7#6q#j-v9aO3A{!Q}`9^}^%3-)&%UsdH0bM zLj;?3D`ugRyFB}O=b#?9=WqNvC^l}I$MWd5?Bas!0Antct)h61-4gvWQP?r0edF(h z`#DCQ#}{P_>)oDKg4o@8eYf-fJ&ty@Yr5*bac9|Z4|zoKcXL_uX^cfTbfoqFQi;dy zA12gW+#_#s&56Ha8U1!xf~d}`^Mg7+cq8+Jd1nXn^(88aUId9Mh<-5;O)T!r1cCdL z*Ymro2&f3C2zVU`I7|TU{&u|pP6SBc7w%8ts8H^h#kRo#QW zby4!AA)zix{%TBkp(XVQBwWlmUV0=j<0~lglYH^d;uf?7?d99G#82ef!l^ zN%wjGYs160*|Ws!C%(>pwzt{O{W800l!$_BZxqvjIx)pmwpM3|);odmH~53gMqA^R z3#%AQ2;^07jpf=gP0n{&8D0_rpb0UNX~3)`FUthl2l54G zGKUOCQKTq-LFRy*#-f-YWN?%d!O0lObChmHN;EMj9c(bng=lTio+lYn!02;|Eb<~H z8*~sok{&GCBz4Tpi4;Rr&In_8aVe;VqUNM@(P))ib}?zNnrrKvv`J&}Dd;9kCA8Bv z3m!Fv)KT8M literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset_dependent_fields/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset_dependent_fields/why3session.xml index 74c766349..a263d4377 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset_dependent_fields/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset_dependent_fields/why3session.xml @@ -3,185 +3,146 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3f414fa6924516005d56ef923e45557fc9f90fba GIT binary patch literal 2397 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 - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - + + - - - + + - - + + - - - + + - - + + - + - - - - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - + - - + + - - + + - + - - + + - + - + + + + - + - - + + + + + - + + + + - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..abda71b8d2033efbab0426becad6c6ecf3125a26 GIT binary patch literal 4954 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 DoH}Gm literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_first/why3session.xml index 78e27b960..7b22f2e74 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_last/why3session.xml index 915967059..826c89fa9 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__structural_valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__structural_valid_message/why3session.xml index 0c023ea0d..fa441558d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__structural_valid_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__structural_valid_message/why3session.xml @@ -3,40 +3,32 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__structural_valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__structural_valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0bd5023248b77bf5ec17fb758b9b6c3029a3a94b GIT binary patch literal 439 zcmV;o0Z9HIiwFP!00000|LvB`iW@NyMfd#``2@Wmi&=ORW?&$j!CO(1N|}ascSlkW z_TP`X2|FZ;DzR-MW-6LiGvaX@o-`TtB`+?qRGD>JeV@g76uJg5TS - + - - - - + + + + - + - + - + - - + + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__successor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__successor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2f011e2e7df5194c2eb1d574a2461b258ac59edf GIT binary patch literal 563 zcmV-30?hp%iwFP!00000|K(LpZ`&{oz57?}C+OSKp@&?C1t_pfk*h#S)M~)7Jy|J| ze_z>YgCNL&4M>W*yU2v}Og=u5Vtxdl_m2?Uu!eBxVB2`xbT5z^=<>7;Picqn9oi9( z=CoYF(#g?PaE03;AME%H16KJgVAH?@6UJF@f_xIre>*ai8s*@A1MP-Ovs3bX8c7IqiJj zC1~vnv`x4}C{K?PE>I!@50g-N{*d1#g;}I?9uscP?;{E@uWzB^m?7gS-_VRc-CVy7 z-!M;qE{g7a!Iup&om}4US-;b}R5QJKet&HEJA}Gy_$6ud**g9N9#TJG$_I!|Djm_5 zi#(ciw(0sB)!FYmk*m-BCEyuG>vl0>I&r#Va_8~RMO}aOw2zd#QjJr!{ojeNZcqlR zPoUc>uNE|)#fC3wK2LP7&*yUTCjYW0G@AzJ$4qFplnGr`l1mpjt%GJn8={mXk$F@x zGG;iZ-{_CJ5`Y?`6UKPZU<^mafJp|y180Z@L@I?Ma1)7?+9PEqc%f@aNXY literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__sufficient_buffer_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__sufficient_buffer_length/why3session.xml index a9f7b9306..94ff0c464 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__sufficient_buffer_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__sufficient_buffer_length/why3session.xml @@ -3,52 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12fb762fb9c7499b2f5ffb0d37d25f4ccebb9939 GIT binary patch literal 668 zcmV;N0%QFjiwFP!00000|Ls>zZ`>ddz57@6UR44N1`a*!C2FJ`D__wtKx4`KQR76L z{`wA^WR)gPx=vPUqUK`R%wrhly&3R$1~_idAobxC!qp0v9lCCH2}1{~u?)la;UdBb z^f_L?md6B^7e|xeDlRwUmCNU_iPd-tUtt5|xx@7;bYr((wY+6J;DSt-(09RYh8QBo zoY%wN`g3nx#qGEsevJ+MedW7=ouAu<%bw05JAaW<9QI4RR;;qEAI92>4jJ->pyS#N zaRWm{=OBQ)eGaMLIv2M@M9##Kb4z-GAJMtg#XdN^7>FEqmnoW;H+?r=BMNw&<(LF9 zQq1ngcfRM3m&7AmJj_NbCR0J%-G!RFU$M+RGGBZSVd7B2blXf2rrYAF&j& z_B<2mH`K?ghJ0S z`KU$ml1m{4=LN(n9T*46$b?DxU?>JtTjq_el}TC>NE`-2W4TfRp~lpBt!hGZBaBTR z8PjMFl4OoSo5r9gqgTdiZ8$WZ6G&E&Y|Tw$gVvyu1fiS6d@Tdew-RMJRe=#m zan+1d01Ch|mW-)U(STr~cxoz(6o9gtwk{>b#k8&kPhMCLI(knaUHt}%sr)RZ5&!_G C);=Bp literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__take_buffer/why3session.xml index dd5a21bd1..a0370aa22 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__take_buffer/why3session.xml @@ -3,130 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d07aece23a2dbc28eb6234626378adcf8420bbac GIT binary patch literal 1405 zcmV-@1%mn?iwFP!00000|Lt5&bK5o$z4KS})+-i^&qEHrc$%3^d+F%PS$s8`%9bk8 znfTv#NlA&)*r_ccV@t+`psB^*?UU&w{$a){rvV5 zt><(*P~Wff>erjUXE;+cN!PU4oCk(h+7b6I#vUN;hsAJIC==r7{P-+y_*3t*k-ku4}F>EMcObbt#j;q zO8m?2xGsy&eV;$C)_Jp;FK_$)hEM3P-1l*LJLJ#9*DDL!4D8k3#Y3LAAGlc!>%O0F`rEt3qF*iNjJ%$K+z#uxIJ^G+CtBR)5#^{+#k=)px!!OH zKO6_JO_G@ylV(_sK{*A7Cuz;$<tEm>d3h7ymC_p+Y{&R z>U$0`=0m*sK>Oai&fluVBg}{AQXh_0FL{)D4UOrI>5b`cfa&b@5iGn}e#+@94efqd zr!(5_Vtops04Mn}6-FkfP=T%>Ra+!=vRGX=ZEo6JUz@w3k*<-hk?w65MBSIVf{oKW z(!lB9J{+tc{1ggI%sR~E(-IJ{Y1vC_88k6FM={&I`up>s`StszS52>)URBhq?lk}V ziHHaM)0~%_1(j7$s>&)Tv0h0hWwn}4Zr5t0I8k8yL+f1f;YFe!FLZ&ws0ReJC&aU! z5ZjNLjmc-utOgs*4hprYTKR-c%7%NffqOPTQtQLX(6h32$8z z_H{xvDAQ!6$x4%zmy(sbl|n6~CJIdynkbyDDAXttT6NHbpb5d53qgglpw$CS2AT}K zybSC=N&av<%J%cYv|#wSp_%DJyNmmT+34NqeOC0Yv9$P8<>BhJlp$A@b|uyTIdJC4 z>3eAHrUFzo$G#0#4XoNR8yik+ReQu!I{_c;2KwedxBg&1(AEF$FuWSB4z?**aJlPL z!VsfL1VkFVGcJNuo}5Dz9>Xv2o5apIOU_~e8&M0&B|$=?r8n7YS&*&7(~MLUHX#L{ ziw6=CHQy_0@IeLmRvXOb3 zQMO7aOyiB5K+F~~lJtD4AV*1TWIHR1^Dz*IAVr@|EJcV=DCj)?D9NmYhk{w4;h+@ZWO8B3Vo+T~fj*2Fk|z-}a(=o{3}jazP00Ydv#D58 zqD1zcECr!GJDz+7E}9bh(aLn7MIq@>YqX%fL1EEquaT72!J5&^cE~IsAH1c)zZg)N z8K#UEattC(R<1M3xs><{8J%J=GQ?m)$T=`ayc469?_{xBbKXRh*#)u^m~P%VsZF#c zj($ne0sqOA_8bfLgyT*Em9)$wr8$P<3`ywN8xaC!k)7QLd literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__to_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__to_context/why3session.xml new file mode 100644 index 000000000..e3be3c440 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__to_context/why3session.xml @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__to_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__to_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ec73c90edc5274fe9891442cff69ba92fe4cd94e GIT binary patch literal 1669 zcmV;02737)iwFP!00000|LvShZ{s!)$M5`04 z*!0tPC_fTAcAiS=WVr{MHiyH}pEJKmrnKD|gxe`xHNI}9KcH=3+Cg2nasK<&KVv#3 z@OOI?;S?r|xNPQ^J%cDLy7tC*d+krFcs1{C>%}F^W7VB~gA;JG*`$uw&_-X^5OC7f zYnvuN>pK3Nw{fv(X4AU9!UkN#y7sea7k_qj?QT+vEk;+@)0@epp3fTWY5U2p;bhGE z)_0u7cjyeduI)!-jL=MD=)2FGRh*ZwSb5w!^ly(3{~+Zsh#xR%LOsPJ-I1t~;;h!gfnl}@0lUOh2;Ny<&o~qH4l|6c5p3#x0u^upQXY<&0w~(54(ZK|V zEt|A&)3c__IXk9r2%E3+Xy+wM)l9K`P|$y4cxayux>^4Ab=jQ{0L$&oF6dn#^mT4} zMK__m$;rK7*jtKzTb%)14Hnq8SVQ=thpKX&X{Wzh`JccfPA|Gk{L947VU}uWTey9Z z)XNEOT5QhYb~5V+EasD@L)GIXEY>01k>%_Fc2=ypZ&|QYuv4(}0od6-F&eAgvr~*U zU#-Z^H*{0xp;`ELfnQ~SV5g@$1jtl~I*BU0AD zsZo`iI2Ip5F!m_I_*+*>jpb&Ak!@( zZ&LXEcj&$nk*g;*R*rI$J``rI$+o?3I4tEMOY|{cooa>Yp5?D5d^O{g?WG^Hsn$0QQ{b7XTCh6aai}0IZ&M zvRT|^yIl4c78Dj7W2z6%f((G2#oD$!q>n9I1ce8M2cMq@6?)0ykNF7S#F+Iy@#Et@ z_h@>zpc17&uxcSMPt2Xa3{>j|~p=%%2>>2_N*CKRKMM z!2;VBYmny$N4Y{^ZMFTgne3tS@aME;cAmf*2QaCZdA@SZJpo>jcFv@6Ye}jv?9+lVoVreh*yF#LUoXiaO8Lfx{{X3xmFgnYV*AD%r9Jr}uOhH9Moe)7JhSM_1taXH0ok#*SvXxN* zlBY_0Nw| z1k5Gy%o + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__to_structure/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__to_structure/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5d7c77eb77d381668ba4268eb4fddac01c2523e9 GIT binary patch literal 636 zcmV-?0)zb@iwFP!00000|LvAdZ`3dlhVS_m+_-vd$FUEKluJdWiWAD!8rx$UkxkOX zTkZ1eadx*$TUu0*pdj|*jGWi=@x-wwU7=6gOANan*R8j0e~VL#eL`y|8sDxzXJa0_ zHrd!x7v?|7qykrXjk9%|7->4Kxx`h& z57vjQaKq49y1|LOwHR_@$8n0?)>_(*6U}ow^wzGkfuG1)KlF*V$=8bYNPW+Fg=tvAH{wuY0~hxu`M%&hcZEZ=I8C_ADLrKIG_}J@ z{?BuJoNpsNocX<+-yz99pAKhoKSS=_3OnjQrR#5$PGquie76s4=k^ONbkAU4aLJt^ zy#P}EOZ%^W`hTx~bd1)2$=y`{q3>CzXFv3+QNOhfEuU+{)c0*zS*O=)#0rMe2@xU! zaz;S}qd{;AQB=O-n!kbfz>2_p$x5xIltvm|FDko6IfvWOQ@d11hKVkTyfiVNwTAW#}1a#-St0tgt(VNgqQ=paV!1Fr&=k#lZX z7RdsDD(AUI5d)!AS!hb&vP7dbddQ-(;KBhhrWFxJuLJj5c(1irl6eG`MXFf5`#_>n zngYa%b0jW63Ta|2NoG-1IHfeti-9KNHloz8tNSL7s=t}G)ur#w?e Wxa=-e+L(otDZT=T_%FPp4FCYPKRWXO literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid/why3session.xml index f0430bd8b..2a74c64b1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f89355d2815ef1899253ac570f320bf17d16e5c5 GIT binary patch literal 598 zcmV-c0;&BUiwFP!00000|LvGfYa1~ThVT0;dhbP}Z$W$T!J&cDQ`xH+NuzdQW1C$$ zIRC!dIA2Xu(j<0?VG(ErdNnhec_bDgCiLF#`yux`?`gLgXdJus%KM8tz#rs&?x;^b zZijI_c;Dk#ysxsT7*SR8_aYg!*~`@m_0yFAL};vmI;g5Bc-(SD;MLdIjf?!XvQ8hU8Jo9|=JeTut zGrBXnr-*J>{&E>Fp8NZ_BYsh)HecTJ2{_^jSiHN(E%@_w>%cIyx;3xe_=6W&{q_g4 zreR19jBsQzDkVXa(aHv=P)L>?eSj~vu@OlkS21R$DF= - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..742833fc71835143d01f30d9ea45bde591544983 GIT binary patch literal 1626 zcmV-g2BrBQiwFP!00000|LvMdui8iufbaelbB`kRzDOYwhdfQBr{ps7)vDfREb)LC z6XpH;Y1_b8#9d+`N~U0u~xUG=#apzt=!z(JN}MVS0reVS!HDf4MozRvw3%gk#T zzvg9;W%F4+Eq#&wgvrv!pM`f|mLd4!D~w<|D-D?0Y?ApOtJ_iYbUB%<8^T}3(tic_ zI)#_qX8H6d6gf;wu*+gGD;D*0c!J5oHc#hF5 zmbP3LFsaS34e;b~;Hgu>=#?C(oLFH%9H@$`>(lwUkAa$& zYtn>?+bPoUZR%lc41(CnSi45JNv^l|uLbc#N@#j`ab zuLMA?XGH+jB>~!m*)3I($^)f(Lj^r9Zb-kl=|la1n>UG@+h+h6^#Op!_nqodsqU5l zSL5cI3VK}J(0*~#hx!3GUE${TDZriH{}`nh_f!9u(`JCp0GoFMo96GTZ>!JmbUwDf z{NtO|A3MJK^(mLFRP1^9?s|Sp}Sg8QgG|ay5MbmHY*Nz z`d`OV@g*n{?mqT*YG zqDoblbFhID?~D@TzUF;hcRiJ_;LYyJ6N@0wMx5Q8x;vMQR#hM3!a1`PRCBY$PKyxKMHbL7!tdY@SX+S6xg+!t; z$4rA0U}K!Tp@5L{l!0X^MA0ZD6GOeC6d}(PP$Ll{nju6nu>=R|D@`h~K#9OC2#=H^ zQbEw(DHb(@vZfZ&33aqeB;iPOj#>uF03%c?#64rQiW5c&QcfUg2?|kKXl7V6Y&3(a znUa+%j1!BbqXK&!pAtRz#rtZB=Vjf^?N$jdN+6NZn Y%AH_A2Oq2 - + - - - - + + + + - + - - - - - - - - + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c949434dc0e3c04ddcc6386f3070da74b378823 GIT binary patch literal 479 zcmV<50U-V#iwFP!00000|Ls;ikDM?N?fDhy)8H>`OG!Z!<)ka4ZLRTmoI_%P81HHK z-^Z{U6s3r=x=R!#G^4?Oe(wQq1o;8NWq@Oct{a{qbueVWe1=cyMDPLnnXc_pDmqU2 z;^rrqsLGEE?g8Gz6U@$^Vx+X4yo+_iPHCJdL{C$I`%O zaxQk%2ZyILk7>DD96C2oeV4C$3oPG7iQ|yzoZXFe{(+CJ-rwHLvKP2rpX47fi)?uX zSHJuPev8{on?UGhOuxx+{bkF=BW!_ry=Z?=ao{(dm3$BV9{PVa^ed?wijxCJw#R;t z{r?*K_7y$>?LIa8)cjpj)Bg1Lzs+sFYj!Hl8B(LXP{^37EmHvkXPQUdU@gQO_OYqR zu!vUGO#~l>MH2xuYU3MEP(xEd^{;`DThcyg5ZWjkgr^{lY9a+Jaz+*qFP?}SgAGLv z7)xt(AftS+hVj~B0g0-q6$medP%;P}rLtOK2s&CRNE=>2vJwKkwdkSTNsQ8iAz_S^ VQa3zAs0&C{UjdnVcXW#l004QW - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cf8ebc8af6a49c333844c006f206d743c970cbb2 GIT binary patch literal 328 zcmV-O0k{4iiwFP!00000|Lu~&Zo?o9hVOZbJp!a535OnfnO3RCsaMM}WZJ2iqj5lYqn@k9UdHk>yGFhc5yz&XFoDNVjFl#=WvCU zv(QyIbuBOgb(fTO;7ISUXa|RSBL0F zilfIC&foooQY4oa|G^fCG~?8$cwWTY=frnEy)pCm@aVrU|9yF@FE{ZX&dj9BjV>B# zu~CM~QZyD-U6Cy{>s3t;@@bV>Ajs*EaY7TRiQnMoHcbEO)UAd%Td7Q(8kw)Lv8 aXi*ALX)Fv0mG)JF^6VWFax#V!1^@ux - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - - - - - + + - - + + - - + + - - + + - + - - + + - - - + + - - - - - - - - - - - - + + - - + + - + - - - - - - - - - - - - - - - - + - - + + - - - + + - - + + - - + + - - - - + - - - - - - - - + + - - - + + - - - + + - - + + - - + + - + - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..13e992989d1316b42b04aba6d7a949f8cf25b830 GIT binary patch literal 3275 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 - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__expression__message__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__expression__message__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f706e30b5a17514a3e9c1e0b842915074ab5dad3 GIT binary patch literal 738 zcmV<80v-JyiwFP!00000|Ls}1ZW}Qa?Ds3urR9ATDbxsYlPcJjc)a38ba|H!?7z>G zV%b*W3lbyC_BIOwoE<(5IU_Dv&fp7_rR&oQ`V^dl2yXlA^X$sGbhYZ!Fm%g>b8~FK zkK|lfE=sy8&iTunQ}1%u52dB8o>n59!G=%Wf#ZcCH*sMvl~H$@3#iq{L6cfoaw zU(k23D9C}tpXWajK;V0SnP3XDA^mBtA2@u=Te>czWi6Rbn>1gQYd4(3DmCTo8pz_3z5imx;7y)l20%}P6LI3$*Tk!Fl;v*Zsf*OZrN3AdQ<0Qv;8Zjovm>lmc zIZnw{{8U|4t+4v8;*Ys%drK?THbsJt|D*xYg`0L$?#j z=WIAekDV>y#A}a`iiV#2>&_Pk=IhE^Qry7$ZXDkYf zZ=)7OG9rD7GFZw%iGU#8plsArlW4SFNEE|j0fYvyDxwG)L8h@3m + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fe3b64d4f76d26d545c48192589c2d579ade0c41 GIT binary patch literal 428 zcmV;d0aN}TiwFP!00000|Lv7QZ`>ddh420qy;qSKz&1JLu$QQja*Vj50frRG_FBM3 zyZ!aWPPS5$J+xV+QKh|%jCjoZFg#K2&>tooqcd@O!W3~T7zU3IX-9aAL#F4?rJT?L zy0SkhZfKm#!Q}5aQ-e47ghTXZqJ7bz*($kT7T+&+cfSeNo=1p}1H?F)gwrG8SG>|f za|a7Y*_uQ%CUVB0M{}$x40~fj+>{4DZw79JXn#cHJ0_b<+c&PsGHw}>nZ`>~BZF=RrPA#f()^47A=T~h(!wWS(AA3&Z z$cj+955YwA0TMzhVG1$CKmF6cSRkOVQlC|4H_uhoV-$a~W zB7TYZCE}kH@y!`;`=)Hl2d2LX79|&O&0E!5>7)!mRx0ke2X6&^fp4;bRscAKu49}! zDH-{`Zxxf&b0Usa#QscVgFqoV*-B)#N6&262Cq6LNL{03Rm2-B6ao<}oiOw(p literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__byte_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__byte_size/why3session.xml new file mode 100644 index 000000000..8992125e2 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__byte_size/why3session.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..33950569a215dd2387e07c9cf66a9e4bc0e7f3f5 GIT binary patch literal 425 zcmV;a0apGWiwFP!00000|Lv7cYuqpphVT9ry_bMSUzQI!>}Baf=&ATB#-mXx@H)m) z!=}H!azoNU6VlRbX~CC4(u{aV^FE+*z)LJQe&HDxChswze~3#QPu|CL;^1@o%D%?q zJhDG>&Ujt-bTbt`m9=QerQXT&n2HZ6(~^9)>a5|AU<{oHpgdamoMwaYXGt~S1vbH5GBU*qIV?|K##c$pMTlV5PU=H6aa z>n?iJtMBvZ&7+h0Whc#RPU?-mjlN%@@9?;W4aE(`e+I?f`MKQvmtXYLt~WN%%4Rb- zhAwmjB7!oJky_M)427i%uvRV$iM9t+CG5M5slgK|v0%RY3;> z7F0CRD$5R96NNTyEs~8iopCl8>S7c_JE#aGw33XS>nyBts=w06=YAll6*Y Tw4o~2BHergWmKsL@e2R|@@m(< literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__context/why3session.xml new file mode 100644 index 000000000..758095aef --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__context/why3session.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6f43ad3bb2fd6421a7b5ca6b52b467dd08d7ca86 GIT binary patch literal 689 zcmV;i0#5xOiwFP!00000|LvIDirX*{hVS(hz3W9O=zM^-kej9Z0=^X^X_T7ANwB?; z?bBD@Q`ucp$|f?jbpj5OC;I2NJRgG~-R_}lqd)eT+6W^y>bix`&>a$t2jAlndW_yf z0{?jJ^X}w*Zcmu}(EdPQuHA8mzQbXFZ5hYIe#F!0{SJn){AD=q+R>+Wi2cy0Xd~S` z(_m+b@sl*eA?h7)Q#T@zxLD z;D}^gA+SPVg}{FYff8GMz3;vgX!pK{{TAV4!y>zeHzx5oGwqkZYcm>oU6(C#5w^(6 zY>~^cMb=}BT!<~QHe2LEY`LhBd4*Db4ZYMxlvZIy!-|F#4J#U6p#ffNC*YVY%~Fx7CbnuI7=~N zP!x=zLA_&NElJKeAw{qht&o|ja^G-8lTMlkX-W_!SfX=c%Aqp}TnaQ&4OCjt$_N`v z5GO!W%qeP%no3Rqm5rKdN>$cDDqDgCp;nm?95Skv3`VCEiVAm@bD$>C5+q4xQDo_4 z4xuDXF+{~&E-5=x-nYz3kRpyL>o_nfST-VLErXMefuV^z#iztI;Xx=G&}L4lQ`BJ0 XAY*0%rIw(kl??d_c(0IX^&J2JW-d_T literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__copy/why3session.xml new file mode 100644 index 000000000..fa2d14853 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__copy/why3session.xml @@ -0,0 +1,152 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..00b7a3af20c510d6f66e56b1ce77fd9244fe380d GIT binary patch literal 2357 zcmV-53Ci{#iwFP!00000|LvSzZz4MqhVT6=_I`CFm%lCTtdyH*BSmv=R@|cU*BK-x z;Xr3J*#)e=M%i? zYG3ic^Sg|fI9=rB)B149^7mPHKVE#pS!VbJzu{uMJl*CqSNLTlme0OYM7X`3j`N>5 z&v87)gyZ$&yi9-Aj{VGOyqNqikLmIIY?{a4^J0O2(Cc`6)8(Jtc-;a;%%+o$K9i?u zF#gvsI>G!dc6W1}j(^~El13^nM}I+Y zu8+VbGjf#~I{)uqA2Kyrwe$3B>#6Ab(`NN>vx<|O@f>d`)6;zONB3={N2*TmPF#HFL9U?;FUGTu8d*7{ChCriHJj(Oe?#^T+h)#4PPY60 z@Ab7!j3DwMa4nf8b}|hvn{xJ9J+=utxe3~bwMXi@xx0zyq^=8-?#1lRB?SD}m#ss; z_f^6w>u(y@NcE?0p4f{gU^ypZrRq1@LcCMW+|<|9cO>=g<%+HkrJv@E=8WTU`60V+ z(ZKph-}~oE7@5mo%Ule~e3{F)sa*GGZ~lD`|H2CfhQH`w7!*9bn}@|t55J~oyS{Y1 z=CjB0@v=v2DWu6F&X)#u{k?39|HL%;fxp!o)zL+`c-~728tUV9?cU@jWrD%BA{uoX zb>2=L@d9b$0B`zdyTA8>a4h9Yh^Mf|TQ;u`WA@*47nk;gWP7y*p@ z6}=q!k-dIn78(}L5DPHC1vn2dzyKNGDH_h546HXlE{h*%C}=2n`9cZT3PU!%L3cVf`)=t7JT}$;MdEpMzH!_lb&2}ZcWznE$>m* z+YGCU!ma~J@*BMN1;@q1SCN6Y+ii*lp&_e2xjX&{L#u-yxFmTtI@mF~6JrtUuD5=n z7=a$a?)_4*dzTET%R!!q^%oVfs!_z%i{%_Vi+>fS9%1Myq@KO`NfGrn*S|NT#Hlmt zJP@^gGr_FvVy?Ch%GE*HK+!4C>RZa@maUBflvPd| z)!+2pdKuxZ_i*2z3NV0$LoDAu0vBKa42M|0-N0~2Fq{Y%*kh|Nf6F-s0Bn{vKdlS) zyJ-7ZbpZ?%2K!#L-2iZ!mBHQtuqgrH42<8d{LT0$ZTu6t@^5`3=!*bo*Z$KdK)d#z z1p-dw+W!avF9_}t4z3g7*Fz4cAVRrH17LdL_6Zey&L#;o* z==Rb-#w2K?Vg!>^@j-H#Loikci-DIF3%Oo$+yA0CiXt>r2W5kdW6qTs=f`S}V zGIyvnfDL`B|{|0 zD$*!b)(Rv|sM1hGsZoy66eN-joedMUg;fUI2v3~J|@y$QCb(WEf!NHE^Uo+tY9X)*kCCU8Wasq+vKE%gpt&% zYm{e^%OImIk%Xq4tBBzcAaluSrfjO#=gjD0$zza@j7&xH zqKiNT8Z884NJJn~4kZc7M~xDU6atjWQY`t1><7B2OamcD@|;}Fs-)Z#>TKcyp-7&9 zav&XnfYJrFp1VdVh7Ne2+`E-BhYPC6l>*C@vT zf%H;DAelJgpp3b2`Y$LW1hrnHJfms!j_2%^ONPd3yeWY=M||~Wse8qlpp24ZQt;OD bVn}92k$i~JF;% + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..68269da1d568cb3347032a11304f74d7513024fe GIT binary patch literal 1162 zcmV;51auI|?{_Fw6XymzIIlA2ouIO?(+%)|KE~y$$@dTGRTr_Dh&+X7I<~7t}1Dx@x zE9~0bELW5%QQt3CcW3{)J3FWA;qLDrFI|rF0{bSeOCb*bQIz-7*jTxBJNs(oor51J zuP5sNZZlg^Y8rOkG|j4X*Sp`iZo8qKH^a@6`lg9D18++skD~%_S2X&-s`~VBk_Uw{>B}vTFxkLtXC2c*mM@j!E)PEqAH? zdV*Z&w!_HA`XwgXbYrt><7qsc;V&mRESeQ94+^cctA4nPEVq4H^-Sumv(3q!H~jhG zpARBR;J^iM12{YTgA@zvg=+)_;BLc#IwUMe6_(Z51R6rY6)hK z4fD!LnwgpOEg*wzm|>>&wd3#k*g1% zvCnBZsF_>a{R6X5`(4=b@UZW_412ZcYnK2|K0pq~k`vEdb^8@L{HI`UrG|rhxz@w6 z#s0l&{dakRR|A|K?Im6f;;zBr+ZS^XPc=Bafk?uUX7qJL@_5m|o=6@!hu0TLIG##Y zqq6L7=p;|nDIfEuwr7W_#H0_CK1}-XF7%<=jy!H|SU^q+Fe$*K0H00){=EsXlLAZ% zFe$*NQvlwdZUH6%c>Cd*1mLX&VD|M5!R+fNgxT@l8O%P>yUE#Ge8QQ8XA++0eI=+u z6llRx(N+|YCb|M>V+uZ#OwRoTzk{nRIx0d2C^=+PB5Iwi%gR7X(b&i+Q3*jYSyEI~ z3S?83$rhPivE&d_Vvu|u$T%|5S`jo!Pr+HIWAM>}5J~ww2Bj)#qr#wUMpT;PH$(-< zqbfm(9DzZ)B2vbaE-G3Hj!0ujE|kbFr3Nn;WGdq|2pcu~E5>0m=%O;Dl%)_dNCw&G zS$bu6$&qs+dJI7*6(iTIBp*UF2@H!CgIvWGi_WQllDK;|sI0ZjRu~BYF=+<*DurTH z$|aIvPY|rN+~(pa3uW>K6e=Ash2%9B5<$A?gBBXBV=6?1FjgEy#abzCQJ&aJe93na#QNTrjXaiuDStQSnF?-1gW|K%E(TI|jLR^PR5D~{5=c&x c@gP+UM#hAO2P_#sG97I74@ + - - - + + + - + + + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b7347871a8e1dd2cac8944243ee0d6d6dde9cf1c GIT binary patch literal 418 zcmV;T0bTwdiwFP!00000|Lv7MZ{#2lhI@WRy0m;6T%<^|%JwI>Xn-MyV((hOM%nxI z!O86@AKSUfNtUH4c!%K`#5;y?KERZ`oim2yq2j>zDb{$OD%?RvZ!H9{mzd-DVr@(> z7;H&@(6%_uBiac|fk#|49E0_zT#nh=XBbb|HkNrz^<66iZwndc+v(|_5>oNGEGx&j zXkL8Tv`FDJO=nn*W8az`_xSY4X(-BJj)~KheaF?3bXxVz)nDRAVwu<+y=rv%z z9(XB=zG=t&9b2rz{!sb?zuU(>+zs?EzgW-TZoA@__dc-Q9xe_{hiAwM4z->7D>v7C z4m*O=T+g=rh8aoSOuCtLGwIJWY5mOfBaleFUq0CW_1hTP#>js$Mu>_)nFHM^^h^dp z!59xpGmahtl{f4`5#$j%-}eD9YK5Fq+Ij2^VQEr}Cpg6=_RrJM%SAvgmpI7H=*bVj!%K^W%(op3-Ul>wORBQv^ltVd>q@GVJ_ MS6&Q8fKm(q0PY;j@&Et; literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursorPredicate/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursorPredicate/why3session.xml new file mode 100644 index 000000000..744d4329d --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursorPredicate/why3session.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7328dc3df9ebe256662c5f76877d7b8141fe2588 GIT binary patch literal 280 zcmV+z0q6c7iwFP!00000|Lu~oZp0uAhW9*09{~b{WVoTrsokqvEeA}CL=pt#bl0aZ zm#C`LtsUCsgk&N6xBUB)5iJ719+L|f0Ov1cA^UfN8mAZtCdwIK=~km)!K^7S3E+%j zt;v|kqVKx=j0arO=<$dl6TYOC@NnXWeakSzx9?3~7DyB^k@Z@CB^T zCgsi4i68%F4y$wQb;ijX@bejy$GL2!eeWH?7l?+YSgw%YFj71~ eWK1b(Neqrjt6Jq8Ye`p8+k5~dRUP!E1ONaP&4auE literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursors/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursors/why3session.xml new file mode 100644 index 000000000..35f61663b --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursors/why3session.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2b1031f7dd231b948414a06ecdadddc0ecdb5f58 GIT binary patch literal 344 zcmV-e0jK^SiwFP!00000|J9H^jvFxyg?pVMN03INzajzL7?}&W6)67f3Xtu=NCtLu z`jw0AgEU4!fX#c4{K&DvPh4Q!^T9hDj5z~A{_cmgkDR4`Fy&tVaGw3TH_lh?9p3n< zaiffnqu-CI4j4RxeQ$MSsvVDh(dP|*LF3!ocn7J+G&Sf0^(LDrzV72Q_jlM?$;)Yg zK5uZXnD>LJ;>=&n2E+o7HgdhyQK4n%{V}oY{dO^MhSvG~a`N$?V5)I?);~Y`B&YH6 zD^$YO`o#w(XV{Pt9}S5`3q?y2{9%536?8Bh!6Q@gtMg%T+Qz6C4uPgJO`t%J57s9bDK>ek%r(*WJ%6HM0^O1ONbY$ELvm literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_first/why3session.xml new file mode 100644 index 000000000..35f989fba --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_first/why3session.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f040a7a0e819af4e01fdf82701e21eb04f64a727 GIT binary patch literal 436 zcmV;l0ZaZLiwFP!00000|K(OqYuqppz57?>-itmgOFHzhm!%7(r{b#^X-28R>ot-R zHvRRHF*#&OAcVMSx0gXMPjBYQPa~HD;KKyRA-G|>hcv)cAdUz>(;dMc#!TyS2`^wd zgmQin+|Y3@4=(?LnHm5D=iC}o9M8_h;Y{fA@S9wX$9W`oq@3ZFmK=@f!d=RzEtANjVz#wR2Yqi5KLAX{Y!RRyuP zfmq7|fU({%A*A;bneVLf9V3Ymy9yFb&?YdCZR}J;&Xnq`<<@jcqtV7d1B9aSJ+dKjansTCj3jhEq2Gu11 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_last/why3session.xml new file mode 100644 index 000000000..80d94a7c2 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_last/why3session.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e73660df40ab81d12b780970de24831672d2906d GIT binary patch literal 666 zcmV;L0%iRliwFP!00000|Ls=GZrd;ryz47^4+?Pkkf?(T_)@e$j)ktoYL{#X$g(Oa zfzz)q&u)l6y-V$)YrI<|?)cqLW4>WW*L~UwcepQU`p`9T z+#n|K_%HEO6~@HKZBq<)!opNbf;-ggni;$SW@3I{1(i7|fh4f?il=PT+}9v(c#OK` z!|ER2!l~S^=`i!B874?ze=Rl)nsz2dwiUe-UTzFR5rJ{Y9L; zzf8#_ar@grVTrji8PoAIc&c=2>KZEzT0?6TM{Tb`v9 z_0e^G&K$N{`kw?L_6NG*I8Z-So5vbF{yDIYcH%v7=-9B)KHT^0^DM=YXYa_pJHTr$ z*}DTgzXQx4{giuS#*k$pw^Cxz8Z?_4rDd{E1j@a%RzX7HqV*!=Xo67!YE!B_ zfm9}}go1PLt)4!d(s2ovQz$k@=>*al2pxhnqA0xzs=!-|085HW Ak^lez literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_size/why3session.xml new file mode 100644 index 000000000..1073585a1 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_size/why3session.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c10eedcab6a9c92593a14555a4c7611cdfb6f6db GIT binary patch literal 348 zcmV-i0i*sOiwFP!00000|Lv5^PQx$|Mfdp%KEaOTI9YVjO+`1XP`B22JO)d7$#$!h zug9TOAXFs8V*_j^R_1u@dv)cs1$!Kz_o)4FfZ$ zgs`AYZ4KwO;-ba+ieFbnNo~tov{C|4DXCW0Fk2ytN;YI=hS + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_data/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..91a978ccfa1fc2528264a07839a9faa2c631906a GIT binary patch literal 1693 zcmV;O24eXiiwFP!00000|LvR0ZsWKThWC1k*$)oD;+?=`;Z5TN2&Oj&+6ugO3vg_Y zEH{#Q`csr-$4=~-%p^|Q2{(>Il_*x#UtiI5(%)F$-(A~qzp%HhZ`#EV+qHJl=VAN5 zZWHYnJ734~ZGNfZ?W(_T*5BY&EkheHh$BsmmOa1Z69|Igm&$_Y}UUhEaT+s z$8n*adiZ+5izk@GcFM=P?>4^QbavkSu=6(Le0jP{@|0;D{QCQD@UnGhUy`cSc57Vt zs*52%`#eb+bCAnpNJ+Cm+bJ*EgBe~pk+$vShY0QB@P4&9#Oz6uYxr`m_`&-J@I@k< z+nvVPxi$9Gr!if}yuyIibi6*k{ndu{hy70t9=!H2dpcW9kIr8;VmqghA@3Czf%`KbCJSXtMn5U>1SvcAG{Vy!zvBy z?HX1sZ%WT9J*)JrpS(`bRHSXc^JLX6SF!8wCxH!$@3e9Dx2wIOufylH;dgkMU$q>j ze`EZ>-|z17B|!|VlauLQT#MLEKa7P!3++^U_2S!wfjixr&hXZhV8v>p!fK~xUmiw{`l^9UcmQ%^m#MK`XYX?ehd0~91G+uU`EA={ zC#K9Eq&jUg=$KLG|>A<^kaQX3=R2_VG zSp%KEo1Fen?5YMh!U@F4_*rA(3I6#b$J7JqJUnts+p9eK5nLn3Gz9E~ zh{iSN=M8rk`oA&#;bY-{A_pI+_AAQHE3c0VlAos9JTAWV-|^-`p^J6x7=@rrjI=5e=@ca_$mp0%Km@mWswy(ctz_0Y zE}7CwM#VTuNz%laiVls~^Nfs*LOL59r-V8hnN?OX;Wf7!xXVVoQi2E*c;w#FNSp%{ zm=}Z+6(Z3zppmGE<=&`Zq%aOIGpV(AhT-#!@WSSqWEEsG;54BaoIq&ejFA+Lh~N#Q zDWZ|81c_QQv;zjh6ONAPT<3-dABE0w(ikV4JUR^_FsYJ~!U-RN6KNCCkmF>scae~! z1<^qnTq{PO5aN9_JPDE)4y0lxqC?gRYPb*9E3{XPX+o^#&Oo+;N|?l`<0(cDQ8^P* za4b>Gl1#YB{6N6WL?sx2?x zBqo}zI6hHXY8|eZu^0dY#x!0;4+(=nbhbiO@n~@Q1gw_mI7^l!l00aklk#p@y{rsI zK1mgl*G_;k1S1{LBo$S;wF&$qhrm2nCLd zAPuURCItadr6_litxQF!ahNxQdKZ`zp)4`jh^$X0IX0-B60~9=hL9wBm{3s|Z=1BH zk_&AeHQ5TPWP$305{-t)K&c=}I7|W+VDPzv6|J<qM}!E(C$#ri2bPh+idX*!9f(qW4ORdEo(Nh7 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_data__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_data__2/why3session.xml new file mode 100644 index 000000000..df89faa11 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_data__2/why3session.xml @@ -0,0 +1,160 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_data__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_data__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..199cd509414433f9c4eb3368f18c9246c7e10127 GIT binary patch literal 3112 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4cf63bdf9aa7c7f831b463ed57a9b8abc86a9530 GIT binary patch literal 1842 zcmV-22hI2&iwFP!00000|LvPgZ`()`fbaYjd)vccfPO!K@d7#|SOdoFWxy*@{hAOf zONvAX@&5X)Zc_4#j-6O??3unuq`FvLU5`)I6g6CcAHJSLxL(0!@4J5W1-3n`21v^Q ze{8QJe1zpLj)(bWMwVtBv%*ch+zi*%ly3}apMS##9nKS z#?OexFym)2)yKS__oLO%Kc4jzZM*Ba9EKg5()&KHhRLdK8CQP}pALSz80rxiElS+R>a?htnfvW-cx3LJP-VOv_B{;iZW}ict}ZXH;g{)@{z$5nl<54`7E`$E zmVh?g%@&jzUX+8Q?%h4L6q9W+8(7?aW01fGv;Lu~c4ft3%Fs?AWGoMx> zR3f~=HB=(JoCwWr_l=G#ukNZ}4*jYdt~YUq4chg9Z<`^9du+x!H1;Zv(La9gH|-_z zay*@bPO10Dm?O*Zc=Rh$=5}-*(rrG{@|%&)`rj`Z>4^&Sb;x)+>tBzICtky`$T)5< zYZ2D=q_!u2%l4!IpjEI=ILiQ+>j1xcQ{Hn*d*jWV9qJJ~)+z1K=YL$`a>=*QLQl>X zdJMSGN|*OonUyX-LKiy1KdLn?G!2$4p7*~Y_nZ&;&!;6B34{B zBDBI=6AZufV0z|Z1{8F^DWOvvax0nc z@@FE>1Nmq1=MG=))91lpWlv>KWzRA1Jj`Oj^GA!lHXF6zYr((Ig1_Hvb!XiSecw(8?~Uoxf3AOG|6zlSTvM$YR&B2N9w-kKZXYkf8p0~X@Tro>M zhB%x^hHsN7yS<5Fhhh52Fg+iKQSgQ2I}P?0P>g??d*w^w+2ku~$0ntae{@oi5Rriuz!9r{~`0mFgZ`U|Cdpupmxh6k5hR2ljSZUFWLZdDqZDZz7|W@VI%zHhbIi*iqr^8n zlM=G3hJe(#l%R!?G-}ENwc4>n9oLlDh(f%vDoU-n=E)i3BuM8tliobr zq=eDSswiy;wJ|B@si7oAp|n$qx=0Bp!Em0_g|dc%_0Ah@d~!|^l29%891LMhX~wb? zZvMY5yCaTF_pa$2&d8sN`!>6M%@^#2oJ(#uLY(R$_AS- z)q~KQmXe^RanUgDJXQ>T8G#k(FYhq_iL=&=P-e6ZL$3 + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3e9a0e11ef6d85f35d2d697c483adeb102b626b2 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(b#<15ZywLmy+aZCiYdOpMHpea!rfJq=CG Z{5=i5je-rn7%2D&GR*8uoD~T)0RUMX7Ha?i literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__buffer_last/why3session.xml new file mode 100644 index 000000000..4afcae11b --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__buffer_last/why3session.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a1d8215295058469ee2e21636efe9832496dd94b GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(Iy`+ZzFRACv Z2Hr-VCZPsj3>5qX84iWcDUSr2003Bq7MuV8 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__extract/why3session.xml new file mode 100644 index 000000000..2c128b7a6 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__extract/why3session.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..41ae43fd47a506942fdb762bfbe3b621fe8de925 GIT binary patch literal 695 zcmV;o0!aNIiwFP!00000|LvAfYa1~T#qawmdh4MCG^77uAGU|mK**{1x{OAnWWlk6 zy-AvW`f43QV(hd8Vv?F3b`jc#=DnY^lFn($fz>JH`vqO~-1UoFTJ^LTXjuyVSltMH zqxo7Mn&WGa7AVs|d)19xT@Ux&`jW1tIe)A+q1@ln34NjAbN^7QegFD8EU!FUbQu;PdD5xyX)nhth#moOUAzX3%9$KXSh>!(>$Xa zXFB;gtcZshj8Na5D7*$K{sn0b{s47O>)}7qwei` zb%da^1AFqCs!BCvN-)J{9YBi-;t*U>$s5$ps>oG@jaP{=8fA@GNZBew z#e)R_BDSEbNH@{2VQUmdLQgqjLQ{0Ig;hZbzKTra+1p@~N9p zXwqJZj#4}qWNXKCq4BA@u-++kpTn3D d6_YI$Nu31myk{}FavW8<`3?8S|2N_e002V&R&4+P literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__offset/why3session.xml new file mode 100644 index 000000000..513153658 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__offset/why3session.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6e7c93bc98fdb845e6f8038d3ef4c94b1de993e8 GIT binary patch literal 236 zcmVZD{ky2o;T&SPu)fte_HHySpqy|Orq6W&|t0oQ> m3sl?(mBLgB7BF&2RF@ejf-6cE4+?34toa599XS5;0{{SWxoQ#s literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_message_type/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_message_type/why3session.xml new file mode 100644 index 000000000..710fa1ad4 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_message_type/why3session.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_message_type/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__get_message_type/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..dbad1594e95635a1635d2ede13e0f8d6e4f0818a GIT binary patch literal 393 zcmV;40e1c$iwFP!00000|J78>Zi6royz>?P1V6Abha7UL8Y#yrS8MUETO=R|I}z#E z*OcVYsH&2vsT3it0ME`cGsbZRc<7+5ovph)3^jBSTpZzb*bzKK6KKAjN=9uT4>r6* zPZnZM#Tgv`5;IxX9geSH0cl)~^W&G0t3=-<6se~Usf#D6r}cQ~>6?7M zzD4>EcAlxfpRfF{j6L>m#Ibh)acc+aZ#U!u+s|#{8}WRn2>AUn5N8?i#}8ropg&ql z`L<90*Te9)4YQ2Pc-5xKib6`JjbI);a;~WQ0nvC;p-`B&JE^E@72PqkNgF zQRKWwX3!-Ny9{I;F{KJm1>@mcoh32-In`D@Y|i?s;hvD9=6tb;75c6$bzSV5_yR literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize/why3session.xml new file mode 100644 index 000000000..48778ca34 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize/why3session.xml @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..bab31dbf2b5e1c20cb028af537245b978e540713 GIT binary patch literal 1928 zcmV;32Y2`%iwFP!00000|Ls~$Z{s);z3W%ZZGjmKz~VQ7$pX0q(?DZR3txpIS?m_p zaWb~j=-ywyMSmoAx6^SFImtM>_(Lici|@U9qDA)~ux-0VdwKPRGJl-Y^}jCvJAsM# zfce`DFT2!svoARBaMs_Rhl!f#iNycRZwN1Nx}ep^`m*Ob*h##;;D^i3CU&AO>bsf9 zi;IRXulsN9;xk@TgL6u4i?zabUZ!8yukogv_T8-Qzg^R!ZR59|->&<4+g@LFv!3Sd z7o6S@f1Pj7Zdp7J)UAt{UG)*;)z!46zrTy(ud|!!bd&EdJj2xU@YvT;($#Fy&#{|v z_N|%hK@=W>^r?u#V<7F{bDa}6hpC>YjV*!8hhLP__ zoL*0%f8Z1sJwqx%JMER#?tBO7^9tKR_%6#ne*on-jBh`pv8}dyZ}?9G2?j>#O)NgR z#&(XgPc(5K*Qksl+HI*3q1RY;c>E22#os3`LGsC;|5z`F?3>v~?62C&P8++PqceS- zxPKsv@I)HrGuAL8=r0TU9YEnDmTta6XyoA)#6L3eCYX4z^s@C0r3IR62X!~{-OC(~cJn zCdsWfzCC!S8~lRZ6eH(eTw|iu$=~qzK{{~LCqs0{rY)*am$yk47)|r$xY>yK441QP zXMEM}REL<+=E!PhaEsGWbNhSOZg~RhHaNk%#UR?+zFiDM!p`mDn0JezJ>YHv;o`%< zD1%?!Gu+zA!QQ`61b48NgB@*fw87V~L3pwc%E5f_Xa*qF#c}#d%E6rFu2@)Fi`*;~|7JAly-UfB=6XW%hv8~xy=cPg5rtZLU7o6~TQ_x@;UG>>;-9>ZF} zj+jOx7>!^wf_G*Fw@m*C<{j&6Jf8G!E2a=!u>19Z?cmMS=&;spv|9UxZ8lQ9`6TK6pQ???NR7}Q_ zoWrPs`vv|~rb#JzKuR$Ok}?OEBBfAJN?|R>ag=C^E=Cnl+Ionko&cx^bjZqCj~pbM zWFlmj5(JT42&#^YR@tb9%^~?Z-eH+ESxgWes%T8+3Q;8V-be=^qOO(eMpyz!F?sDR zn=j`CD}<6o2ZNas2bse%9RxurUOKIWG6hWXA!!qJg|isJsU-*5#uT1y)}(Xcs*=?a zRSHTMLD^<)ILIBA>4k?&&ZsCec%3CSk1rqA9W@W3|nOlPHjZRJNLfKr~=EsR9>DU`dje&N;7)cF_V~ zAZipeQlwNQ>w{8JNrN=LaK{4L;Lyt|JCFzFBCwt)Iml#v(5Nh8cEz)R6+x&lfNCNK zkm2f;kHPVICAezF&kLmqOO4Wv4T(gG#YAR~$a%|E`h?1)D7i0dlxeK;7%^Z32Qg@c z6l4$}MR7KQi8YErjhJ|R?R6-nL@b<7SRWBw%)-}B2GJNt<92 zEUWiT2)Z~fBNQ?|Icb$*TjJJol)%bL5HLeLkqD_U-8qz47*M05BpbYpik7w@8kR~y zM|>7_45CDpl!PF))+*>_qe^JlU>pOaoC?x|Vl&`&=Sy73ISEm9BW1(RBnyz&$|j25 zgd~!7hFESgsj`ex4H{={P(FjQnO%Xs#YU!^nO6!0)F|BqLMA(Ci2{q{chZcrLdis? zOv}1V6GIWM1SyOsnUU*H#tFl^5d|z&6-wK%REkmwDJRN`VzDGaXv*9p5PfAxx&x!w z=)eY@xErJvPUy@&s{({viX&}nly6u|(Uah-`NqH!BxiI1S*-J!Vyw!Mfw5PdI(r3J zT;z!8bhbcbplI&2>h7X(k%)VW8 O&Hn+p0t!!?S^xm~Y`x_G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize__2/why3session.xml new file mode 100644 index 000000000..b237c563b --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize__2/why3session.xml @@ -0,0 +1,190 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ed5b50f845e5caa513466e6b762f46a7c99a0109 GIT binary patch literal 2520 zcmV;}2`Ba+iwFP!00000|Lt5$Z`()`zVlb?Z4ZM1x~ktmGJpNmz`Sn{(%Ch9pvK-TiY`23*6j`jUuKK>OyD3uLxmzsS_2S~{ONz9)O4t9q_;U_( zcJAW0OLx(RMSJfrF6Vf5)})K;?%QJh$z7+$tx{MlTXxk!KAv7(QcpO?!U zfB$jsUFfKJ*OgYn)#bWdx%QI0@APD(T<}Zl^`qs2$JDE<8J#$z&x8889-3?W%^?Wd zYIo!L!!6V0$L`Y{1ADHjp1swwcC`q+x!8Vjzt3%eU;@m( z?`E+Y%g6`UU6EBxU+4D2;1$TH=?~7@e)A>{^V8w=ugBpF9tAMG>F(pFA&)|scxIYc zJiG}!P=2VE)XjH&uL5Y$)+h^F&D^{98@2pxb8vPXc;5AJDW|~X;OTRJ9CWB%zRCV3 z489Em@IV~=p*R3HC@xOnHWb>vi3Q;2W^wrgrGO$>=%a3WUKiug3!7{_cb%q}+G~A9iFS*c<7!zLp zm8kDC=0E35Cmq6knf&aUomUXPnX40B#Z1M_506pi!)9glvrq(wVFZV91Y-OS$nHCpmy>=f{pZ_j> z?G}r^?i4ScjV5{}55&Bof=5xlPMB?Bp(fzPR`{yu$E?wX zB|npdQ|0G5<#r2~6xsM-L=_7q!#FQ5xr6R>4((jNJ`CgaKb`R~Pdymn$(Yu|U zSi-wwh$Xt;H<#(*9tql!K>WV`E0e<0 zSq+|+5>6(B4f)2W4LJL{dj8P*rm9m_r>agTs!qKeOnBj|szFtQss=Aw4JPSU)q$!5 zRR>>pL*@Fargd?3QZ7Xf5O>$+f6lH zm`%3+m`!|LV>b0=)2gdgS5IG8hez@&(<{>}(_c5!@0&q2xBUMvZSrjps1HN4zgHR6 zVT2wF(6cH-zgC9eDLPbT=q1b0W)4v4Ug=)x{`%=YI_qe<+t5e~i0Fl(e2~+GE3`KBo}Hqi5+=73*5;7pmg$qZt$5j#$Km%d=@c z5BFq~W3ii<2>@Pv^4%OhoqfgSAkIaFmu;ML2*bmpv;Cd0-RZu#cIiAhU0=J9hJ(LR zF(-^_(yaBrVYaztow%{tU&0<9pn325UM?=_to^P|(W9F^L(kMUPgC{nuf9%g*HRz; zPNi0T_-}s1Y~09$l4vOj#r4Rul5Z|U&o-y1Q;HWdrFhi~ts(%Q+0jx8%JeTgClY}Dp}#V} zGQTqaIhhX!s1NsZe{|_Ekp%1x{#5{~08{}uK>@%q1!(raB&inz>&3vz=(l+>@BtZ^ zO+Qt*bvey~7@EhqQUX+=h&fv7_Y5T$TYqJd1GMK)-R;=)-VBRQcbK$p?5 zEW9O^RghJXMxt=p8Bd8NBh^S5v_vOEkin^>H8;s{ffx~u@TECDp(n2rGlHX5XcO}w zv`+NjTLCE=6l7!?%4>!sDGSO;s}xtrBxdVUVw|z!$u_~D=2jDnJrBqQb2dsF6t^k{ zfdvJ?8rn9V&Q!u7=>O<)t;E}%G zLW^iPqoilc02pad;yM6CB%lVxpzsuU*#?8`XIsdEs91d7rpli zlYy9BP=H7kbx7fQLU^%~NBRP9k>wDx2K0<4Iz30=(&o|)UC;%Jd@+I~0ZCYfIy$sM zhZs=V5H-(zi@Hfx2GSVxpa||>Kukc1F+3qs7kgi(Ns6<`mC(izW)VcnJ}OCKf<)br zi?OTlT=`3ykV5#XuV~|8d90w7mXICs8=wCP$3MJJV}?qt4I~0v->fHH53Zx$xA_& zv!#eJe$6e~E=iVN@QKgFqi0R|FDAkvscxDiSgta7Rl2xOFI1j;F)%mhOK zOT5&?VJf-jyeVT3GOcuC#0XMI8VaOAr-PLouwa6VhGdWiF)E1!8vi)?O-cY$Qg}fs zS*p!xWC@0NL8*#1l7Xd^5#xe$F{kogtW-nHr=+ut(iR;j`eYhm9g{L~i#@lwZU_Pv iNj#hi7?TM+aT-ERmc0A|davW$H2()JEo)+hg#ZAfZ{nW- literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data/why3session.xml new file mode 100644 index 000000000..910746269 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data/why3session.xml @@ -0,0 +1,166 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1a1b17d5aebcd8d02638d83f905a9c30c2b003c4 GIT binary patch literal 2795 zcmVYw)&Iw(DY^ZO@#i&O&BAnc{UGC_?rl$S;6+fZBxtUMX z4_u@$onj=T_dgeT{?~MxXMd$QUC#cOru6gbcAlnJX}QGz(Cct>-KM|V>D1rloEFrG z>Gb+;KA+y+%;?IZYr_w!TXuhaquN4CHnD9N-QCM}fwSuryUSl@_s#!~%X^C(J^Xt3 z_K_S!mHdhGS)5)|&n7zXzHJ+(N@=yaA8)b!URo1p?d;}yV(xFbc(8Q4NHGO++RftO z>W>E#o2I{geQ?)1Szt44Z^~ticUM3hfURCw{8ZjO!=A8<-2|AJ!Ki=1 zzJ())L)v!oVuPn`aApWsBm5ve)g&-mNYb1DhScsEm4-Jvow5TbbEWWG|tB9YoZ_CKrW&ISP{7tk zsH5`!&=BSJbQ?;&&l{xN&>&^k2Px>)3me1KxOw*6bsApX#B~R3xt_p7-WV-*m0y)# zXTY!BX~?#rzY zKRk6wQHR;Oq6Hcl7q^di(P>_3v%V@MMV(S%neRJt#%BM~YPKMxQ6LX7wwal4=JI zi0FgoL-gbEkmsIgtum=HId7RfSq%7e;- z%7fpF2Ty(|s1l(Pp%US@A;Jmkq6&)&iwcX62aD!eTPjukRsB`{A5Z-hgG~VJ*?6t` zulle0|B(8JO#tk9JW~Ns0Z;+(aRJaD-hrXhJ7NO-^QV}^T)mtrG~Za8&2E%Li=<2VjQIPoDk!gx)>LUVoYNfBf)iJ z91!E19J!rat{l_mNLjdgr#t1>?r@<{p&q6=1X$Q}{u7>koCf5GI0pQUc|69aaL2*k zxHK6RBRl*!YHB)!&%u*@aCp84dnSA^G~=sCsz|Cx`k+YKJm56pd*wg=MunL0m)WTx z!=rCikQc_@tRR#9b_JZ-enpYtp$!Z8wH=FI*Kaq7)t!sY2bXKEC zxpaZ^X}{;e`F7~aTd)e(>fSFqcdnX7#Vdp=gervIGlT}eG_7OC+NYY!>xz$xkBX0q zk8ONxu08brsfOD5?t~%C3@^a>z6JQ&*C$j+RY;v3q@Yr2ol?z!NFSwE;ZosJ;qsy3 z(tphoDShN8v{dJy^z|P9tlzuU_KOpF14jd=`)3|+N1W5-dk{IJm>y)#IGgpG%&ExP ziyS@{a{5Q2V|_6kiMV}S0>#-fEJk(-d^@Y=vL6Hd*a^#uG>CXr7&H8JqSbIUz_FzUI?dM>k`%lzHXWj=q9tGuYZsJy7WI5f{3{wV0<3TEFN zu1-)Ya4K-l95_we{a4(o@v8Bv@eiu;7n@X!|Hy81lcLhI>n za1I@>1gHe41bE*B7<2fq!c-+EdD^EU7H1EICt_?EU98n+JBE!bC+tMLmj^&sDjLS*!OooNaXgvzLo%v$PHO4Rsgy9yX3|cA>SvxOewh0AwfeHa@k`&}5 zht#>~sh3_^YLC^JQ!*Y@DFqD$*eb4cR-T%jMDbk8UQ(E>=9o$;-e96`^CZaILM!rS z$~jXQEYCLDz)C66aL!UdsihCrape$)h5a(12{vDeIH<;3P1hoMIw)3Q9x} zz*0#Cpsdm^MG2fLLP^n~*63&>>YNZT*iuS2l2VkKoY0U%$@?0S0*HY-N4W|mgkTyD z(E(~=GP888(AB?BYl3Fx#C3CoHDDb*gjg?M`L<%GODmoLoQo3;+irJMGBu;_hC@^MkJ>`z(l(MU=c3qz);FJsvD|PDw}7HzZsWh+aIhPD4U9iBf`a(tqy^MkBOKOfxsnm0?87|6Y*xb=B28R-#H zB57p`IHfX}NTKqPd+S87ooXdCGAdFcfb%8+)1IKBOkzZvBpI60N68y)D6WiB42b@U x)Gw{|GEj~wikL1`m7?)M2qc~fqya?|2DGNEv0N)4hxMgo^MA#IP~ZEo005ouWdHyG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data_private/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data_private/why3session.xml new file mode 100644 index 000000000..eb261c0a4 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data_private/why3session.xml @@ -0,0 +1,194 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data_private/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialize_data_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c1f7e49bae139631c74ecf31e08978657e979ff8 GIT binary patch literal 3471 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialized/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialized/why3session.xml new file mode 100644 index 000000000..3a93bb77b --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialized/why3session.xml @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e994decfcb296febae883d1a3db0d8030198ab38 GIT binary patch literal 672 zcmV;R0$=?fiwFP!00000|LvAdZ<|06hVT4}-m6Hv><4hjfkUE3vf4|~IIy5EiPn4YXD(1qRgi+PZ3`l=CZVROf$N zh1a^Ntg3C-!9A|^Vjk=&sPRb!UBInfQ~7{9ZDl&pVO7xEXCb)tlxTbJb5KU)( - - - + + + - + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1439d23e84ee0f1efe18444689796bf6f6aaf47d GIT binary patch literal 297 zcmV+^0oMK>iwFP!00000|J9K_ZUZ3@g?mnsBLEBRQn+vv*^-qia*GBSVkGv*3y#(~ zeb`vG(zG&A}}?~SG$z?EeW{yIP(or%LY%n^pNj^T5@AiP7$cq>;S*iYqZ@(Cs+ zuz?d~V=p1#{8-t;=E!c28&{XZGgr>)w;j8v; z911SQ+#M=0rC90?CZCVA4u(rgW*TD!=ReQ$!~O6t+>t(iX?gMZ+gEzewmg3!@hCNd z)U>0aq1th5K=@WNq*MvyZ)_(BLkSFR({W{)4lR?a)7Z3Jw}A={6{18o4n)g^bvh{J vy=*;D4iczjno3zAPMEUXYt|tbo;oJD6QH^kptcKcg&Oh;O|4tGQv(11P<4i3 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__present/why3session.xml new file mode 100644 index 000000000..d279867df --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__present/why3session.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..86cf9c7855e555f127eabf130e489dfec1e69831 GIT binary patch literal 383 zcmV-_0f7D=iwFP!00000|Ls*xPXaLzz3;E^C-h@?+a5S@A)1hQF?(&M?W{H_u(pMO zzutmCqT%8P8q~{V(!A-LH=UQ}Dcoa*h*oQGpbs(jVXbxV*XVTePpC_r4FUBGQz|7| z+r>QNI+tV_(;}u)m4@JRDZ=0q*t~{5xEpYrIn2D(e!ha}VV<|ga2J;d69@@k(rq|_ zrMr7hfh(L1d85+<3|PVYdf&CUZ(QpDsmK^2x{jTH9HWlz#f~5^bj0B!bgvbp3>lA% z&Ld{Dw>u##-+{62tltPc-N83U9V5ARPWu zj#+9%?SwD_8fBP7!CR}^z86Xr5UDH|D3m3{P$B_EtDI73Dd)B~QiuX#RnwSOlG-(@ drPioM*1~cWLOL{z)mu7VJp-w&oZl-7008JTxv&5L literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset/why3session.xml new file mode 100644 index 000000000..163ac90a3 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset/why3session.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1d37d76de27a0cc413c96ad91b443e7267c6996b GIT binary patch literal 1155 zcmV-}1bq7+iwFP!00000|Ls~$Z{s!)z3W%>)_DRJ8>mt zk?gPUNKR5aaowP%Qzxq&WSgEm&5-XsjVKRS7$0tM)rO|M`G#GKHv=|Jm)1Y8{-~j5 z_t$+IsqgWcK8M?zA>9v63IP zRBa*hqYxicloQ}r>>pEqy+DOl@fl^^rPu}>QVs0OGZMY&*UNTjV%vwVAFoY zPGc71-D>r)Il|_J|2-wO3w(RdYa2wd89Tt4BEWk{BZ`woo|H83Cf2}_v=Iks1AGr} z0RDwIz+W&2Ah5;N>(j$b+nKiiiMH~~mT$f$$x#(PjZBrY0?SGu16_EV@ei-ByL3&T zo0xI~%1Y88$zZ=aw$ur4lqVF_C*RTMz6|yV6lR5n%?wy%W>}UOKcC*=ihBDvN>`t}+%;jk|pt&e6 z5zdQsj892!bUfbAE!$Xg7Wj16cDXwU&x804+a-F!?AI95=F4C3qF_=br!2sj^y)U^ zM777^G3j78-%T|(H}p@tg_fviN0W55x+q)PpVK0>LrW!mPvb&O*?-n6W%ZBS6I9;Q zR>P;LbnXe}p5VildAgpUI>q(BIHH(s=zp;x*y}^bUBG7_I?po8I>AocSqyOYf!POU zANUYHP_Px4dw}!P{w)1ZDE-4_7BYr%ox$7^%sUiktd}3i7PfXwx9Xbr5NCy+HFbXw zg}%og;$a84JkQqQvaBo$Vu@0Z%l2)@ltV0?=I%rmgq#vR_@L`@xExAtZ5(iOOn| zERVr?!=+E?yywY9t2K+>SW7{&l2I7XkY{a^pb7vbL!Hob^wvg6L8?L#v$x(m@F27l zQPbHSP_z;z>Oeuda$1H+K-LInSmG}G4BU%MS>+tZAXCv31uh~&6(q + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d649029f9a7f9d04bd0e80e7c68ba763660b47fb GIT binary patch literal 1749 zcmV;`1}gaI%3a`45|&SZM(=*n5VQcfjV zp=eLsU*82~E3!j5c1f4n%yw(ZmA*VR7@Sg<2Uyi-{E3Cq|Za! z`pcYC-xiHzk34@3-XIT*oy_ZkQ6*Vn#-23(hOxWCcMBDO(ge=FHlBp04E|7z>eexR zUa0RKD|k|{_|t+V{#UTdSGV`3J?>5SEpOTy_tzBnKWX&-;$qpRPcsakI&Rzb<#O3> zE;?%I$9_LiAAjTaM&@ffYx4c1$v1Ht>$&hpj|UjrPvSIy$f-MGe08N#s#cia#=Hh(dMKg*C?pV;Xbfjw@B8Jka%GUkXi=D0O_ zY(7oG==0O)RWs|orBt(b-lk8n3pk_&$Pasz(3kCI*$r*%wxQpSa1r~Rxl7Bq+sQFr zu2$E(E$lw{7n|v*zz@birNx6dQteNn&+~Hn1o)Z7pjr7NUJ8HYOX1I)Nize0W=)wx z0?ns*k`v}(PUtC4sBdvX-{*u1hefdO9xA6Qrz)quE2pL?z~P}PoH5B}^aW=Na8q=! z^Q^yzwA!@g4?lkF(?|N<#*|yoV2PRpt^?q3wp-@ig^n9nig))}e76$~a0G}4K!&el z0h36EZ!($Rhq5>dWqt?B(>6?C8NSJ7ejm(YE-*i@*iQiFSqyq%3)u1ECWe8I!C~mf z*6q+^w@&fi^^8iEN|s8NH%OMITy$h}Osy(QDoZL$-U>?!7bugSzxJzGs9302cr#eo z-50L~T?@Jv^jj$Cr>+?q>Z{wftBb1?_dzV>BF4uTCIa^?Q*ZZ-&SM8zbD(smZru9I zZaH-8cDUZ8Ee-T~ppQ+#6xn?E^v#0v-FTj==jQnK3YV9uXnD@)!ezg`=(h`Y{$UoV z{Lu|_P20|9TNj=UXG1+@ypdA|$K4Z=->cATo&Q92J~0=lh5o||{jqby@;v)~BEZ#x z%MlRjRRweR@TL5bF+Hyns0!BCIDu+T@=!UEM6gplUs(|44#_w}jEYV>+aq3kGsnm3 zu`J1!U0iTlVUOWHySo$iJMjv;C3;f2-C#(&#@`70Gg>vP*UBpb?{RezairbtetrA; zzV}TS@NX)yx_Q^(?Vc{1BQLa!1KnTGcq^l= zlY=@rsFQ;SZz7&xUNE~#QJM7OnN*SVHjp$g67J4PXVX}LP=Qc^@T!2YpB&u2Ltsci3dLx2WRt7 zIL>Ci8@XEr&2^t_@?y(;D#grp-n&jbqt4ONhi`9{~TWK zvv7!>#~{2$DQxh{O2|eilLIULHBlrBnMJ0JSKfFN4U0UvBs32~2oe&Fut`Mgf_DNF zN|`}umN?hOv4~KFWTUy@iba(S6KDe`iKIi+MrE=|dlFKQ6AB;^a+ZoqV=+b-zy=Y> zUCA;RI0@+{DXpY;7-Xh$LZM;=Ngm+_jdCuNkZG8XCNmI53Y~qX9xym`WIN*kv1qc5 zG6qt1L81@bWgoJ}wMH@F9`vAq*T%jtra3u z>@C==9La*?o*B-aGDQj+Ybm5wYB0K8C=tk<|zD$Xy6$S)UMk1HqGb<_9SftD&rMMDF zTS{idGz&Cs!W2ymPEedQ<`N*V4LGBvQ`*IB15o**bs$+R?xj>pManf`yaYsKK|1H1 zc8Z2)AXp~>TrR21S))-Y9wGY7V~iP7j)BRTjEv5!SiH)i2^dYJsUW=+-djvofXPb5EYXUTVhE=Ai;LzzT?=d)qFDd{FalTU literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset_dependent_fields/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset_dependent_fields/why3session.xml new file mode 100644 index 000000000..11b6347f5 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset_dependent_fields/why3session.xml @@ -0,0 +1,225 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f410811ec443d3db9cef77995712a844b1ac4d99 GIT binary patch literal 3689 zcmV-v4wmsBiwFP!00000|LvVSb0fJC$Mg9V&Kx*FYTWkvheh=tX*j( z?$w6zy5bdGj`xtUuI%Pm-SyhW0#j*{(8IobAJDuzs;Th z;(zzoi!}e1|5(n{O!mL|Wv|*_szg_NCHHT;5%@hCv)=$aGfy;NrWcFI7JhkCFZ%T3 z>(@Ucm$)D!M@6ge$=~HTpZkP5)_?EH^&j(jS^SaH{C@GjJjdU!x7T_8HQ(R+|Kxft zU#EHead&@nH=p0$<&-0?-Q3~l_qW%J<*Gz2ynIRh@#fnS4VGpDRtzNI)r}73CuCLyR-apD@+JX?)C5zLUg%MClUn0I zazfQ8kEbVn(0nppzR16y6);Dsc_?DOzGolcg7X=tzk-W;kAt+}tiQhccxWt5c7lUx z2t72Ku3t~FEra7}K0Hj_8&LP*<&=?yuQTjzY?(%AnT+mL_pHeeIIuY6z?>%Nzz}-K zf$P^(Y|F3%i{lR51HZBU%vryhX>2b3k=xQ-yt(*^)47@p?2MTnCj;vYt=Ubpn>Gyi zRKtK>gZ+tt-mM=|VCBpW0u2HU0-qNGt04jXbYK|yj;_8`)yCDz*fCgKw7jArr6J|a zkkW0HRPVKjeu=T@&iUGpdWB8tmb z;ftQdFFF;#_}(U&$s>&KZj(88h|%~I6K}SoVx%1k)zM!qA_QFK2N0QYbya>DPw|mo zHHuAuvdUx#i*k51O-Ar1VxS}aeSDxDm{v`1ljCWh%(wrR|E(cSd#>>Xb^Wx=T z+Tfnf{OvfN@#fP|ydL*EqG!9(^B@vm2l|ii|3gfqJt)!;6+e5oOdpH<$Y8#oQM4y& zpI~FoC{`aH4Bd@cjaiLZCt}vfGmg!Pn-e!D{!EF-&@e*KTaBjSGb5-EwTz{|>hPf1 zT7jp_tWM8l+Jo}oh(`TP%-|ZjP{-HMd+0abH{Kr}E-V`W zK7L~w02%;J1%Siro$D-NyLGDBOS6|YK$u3{c>ava;WN@}|KIFeXzt(Kzq$WsbN?^1 zx}-SS?NjZ5^v7yTJ0RT-NUzr?#M4^{M#?7M-pu3CEvmed^;JxL=c82nuQu4@>dBwl ze2Pu{dv7<`L+g~9^O28I^&1yQ=*;2$5%MjLLN{JDUNv5g^Xi7TITzhLws~yx*pHZD z3=Rm?IiKkh>lw4tmE0WS}4LxiXAy_m%vd~1W5+{`}L{UXfJYa7huruJ8j8O{!$exqui z9rny`xNo>WyaTcM{>N@i^Zn-gC+d?Yb|9`3gzbt$vzKNsZD{bp1I7!cQV#DyToYhB zrO^P;0MG#N`2euI+Dx8aEe^wgo-=#8F4cd3vAV^X`G>rCY;b3c3wd$U$9IhBH)TL` zFMO2Zv{13ygxmNaiZpI-j=Y~_k-=(t`W@tl!v=8AbF$B zp`*E}ddn@Xqe}hq;Ipl=A4y`^^rf$H5Lf0&T&*hTL)G)5)c$V0y*M?U-scDQNAE?d zahuaEHyt{L-dCg1jrwO|_stVyRNN1kQ7`Sj(P9isoe8#6<%_y_Tjg5F{!s{<8b=sN zzljZ2TbOa%&o%pSb8|h<-^ZAr=x3C^{kXoK-`*^6>8|(o8Wn%@_v=CrW~8>e+9=E+q9{FM%hkwHNXE6x4pDuPCp;! z+Gy8k*JyW=GmIymXqgFl`pKz!lilGO{=WvtnW6D@@;t@HQEDE7`6Gv z^M>OSryJ4vtV`3l{&70tGyIh_^FZa)l;NUw&HhLUNbWTZzFOok=h@hr7DbaUwG zI`o24J{Xe5WyfkJXY2|aIT|?{IX)>lMoc$ap3!L0Xz{6O zFBEmO#DNe_!&m` z69u(Hu-M%<`ZP@%EE+5tEY1cN$Gmvps%V*WBSj;{d6MFQs}EgloM@bAoH#p9JoR{; z_8`gzg$9KNg}vw5G$=GEG$@=Q6gCG%$9%-!c$IBZmiFk}hNtP`>C>MMJDOcI|84#| zUH|>;?t7~AVsQiu7gNbUp3#n{W?VM#yLiP6?sJfMc%A6t$cppPM;(p%Oy;%`?$AcK zpS}FLlwogg@(5LlpMs6>$eym_o~%e&X-O{g91`Q!ajAV!Av(eTM*q~*Q7)GG`ZpE0 zl2lQN7z)cJIWK)dDfYZVMFs1n4uU&LrbuGZlQFoPwYWQ>5bw|!qjF{;xfE;&$z(;m zuu#ZZXKGENGoFR0awthkWd)O=7+8iABC{N=LLu2DW1?aBN!DEY7^M&1Lzut>&qYQQ zQe9AniINlr$%_-D3`9(hd1Zpb4{9HDkX9;I|A?Zr2_cGHjE$P}81ZuyGMy?#Smu~C zM(|XmQjU@~DJdaY<^hFlmmOJ7+K~vVSgVvW4m}ie3e5VFQOI=}Ukj(Q(a~u1Dy1Co zlTd$++n@lg4?t<4vc~=6&>1r%%l=*ah&JctDJR?Qw}W1kRY~)QYF_u79V6{*{EuNoH|yR zBEg_mtwj{Jz^c(1P%Pw#tgnlACK!UGDtpaX^0wLz>!6o z*1D`qs<+5Q)o{4%xTKh)@J?GMg+~7->(S@%M?v^lOR3JQ5G#*76o^jjpBWL{HYc7WW0pnu5Gx$|?(IwPPI(wnw7LlLL0jV5c^@K| z4(Kqw-3!qrp<(8QLu*poV2Pnej4gzl7|W|g3)nq*4nrugbArtVE`ko67s$uZg|3!T zT|)1Hid@0pc?twu2+jeMo+q@SFQvN#xq~a-abvO;8ZInL|8(YDeWmujFwZPyp(_(( z#x;1WGO*B6Bnvh>G$>cg5f;*GunYm4iiU5Pn3zU8xv`cZ8R_M6UF}6g4aZ>?0^~Ll z{UWTei4v_WN3zZk0sc8xr%Aj-p{n0y4q}RL)Zvy_Kh zFb3!099^XYsoL5i&=;{bvzCGnC8HrXl<0Jnh?*c&(Sn%*GDY3DQFmxo2naQ(k^+SH zN#Q!|*CV(nS1m`Hj%y3Ajc6y!_(XyNOebk;(Q8gtPDuDrFg&tUGRSFkH8n*FQN%fy zaLfLVuCqE(=RWJr=09SCDS_+Zh zDqsRtOOvFd%%wpW;+9-z31_OM;6p&YLrBpqngZ|`&a@_ig0f=PRm)NEp$Ozb&;&cl z&?L;3YV3y3!fN|mL!s{t(ue?xJ7fqxdch^`lf zdteIISxces(d`mJrFdY47$byqs1yiAS^-eiQU;|UL@j|d1(*p=+6eg-ORzG~zm~Ec z#DY7cx1@m5weU4Z2`(xHXM!8mQs7rYc$Kn%Oz15ybA%xoW{_AZ0c_S>f_47~q0>bN HlllMvgPks! literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data/why3session.xml new file mode 100644 index 000000000..3897ff5b4 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data/why3session.xml @@ -0,0 +1,280 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2e0a3cd9901e132c725344ea48a04fa86bd66365 GIT binary patch literal 4958 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 JpCT^K{{Xd1z|Q~x literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_first/why3session.xml new file mode 100644 index 000000000..f7be4ccc7 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_first/why3session.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_last/why3session.xml new file mode 100644 index 000000000..8779e73ad --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_last/why3session.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_data__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value/why3session.xml new file mode 100644 index 000000000..f989e13cd --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value/why3session.xml @@ -0,0 +1,226 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..08ae12cbb530647206869b3e866a9d7653dcb2ba GIT binary patch literal 4516 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 Cvf}#y literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_first/why3session.xml new file mode 100644 index 000000000..34b6a90da --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_first/why3session.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_last/why3session.xml new file mode 100644 index 000000000..65eecad20 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_last/why3session.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__insert/why3session.xml new file mode 100644 index 000000000..5b1b4f33b --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__insert/why3session.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_message_type/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_message_type/why3session.xml new file mode 100644 index 000000000..e943b8219 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_message_type/why3session.xml @@ -0,0 +1,221 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_message_type/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__set_message_type/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..78e220599537e9a148d3bd20e0b72c9f36b1aa3f GIT binary patch literal 4061 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__sufficient_buffer_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__sufficient_buffer_length/why3session.xml new file mode 100644 index 000000000..bf8b469fd --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__sufficient_buffer_length/why3session.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e58e1b97a2fc3b87ac88a72e1da493b870f7ed73 GIT binary patch literal 706 zcmV;z0zLg7iwFP!00000|Ls=EZrd;rz3VG_FA8wD^N>R>K?CGi_(}}7hJb9Vk{l%c z`jU2HWRcq>bpqJ%g%HTcSvYUzX}m%|-dH5-@khUkc!BK@ zH=lKxz(O@N32x%N8}ICJja_WUOFY94$7}1Ci;%~>T+Cob*1+>}bc1aUw(DbvJ`TgO z-=6;3o-X3;xZVDY1pe*$F<@=y!Ew#$8VBoEDaC&4;=)9EB`U~OHHpcgCod{oWJD4j7}1v6nhAP5LDpk3Wzl*xe5Y}Hi;?- z9=$Pu%2CFGb5s-%ZP#DGuPXV|NqJmWO2aHk{R$>(Z0JJ?@KL7v# literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__take_buffer/why3session.xml new file mode 100644 index 000000000..f2893dd4c --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__take_buffer/why3session.xml @@ -0,0 +1,108 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ecc31764014460b77d16480164bc1eba49103a49 GIT binary patch literal 1425 zcmV;C1#bEuiwFP!00000|Lt5$bK^D)zUx=?)++(N4|~WZ)1BFAFCAYse1Kg~oy4`3 zolSpzA=ys7&7;X$o>dfHB-;T$0|dU$5XnjRF??94@cZVLe&bhic=a*lyX$bZOzrae zOV}*Kbr;%pL+hWf{#?j~T41;gt1a!X{g9`|!Tms3z(VY79}N4jFblZs?|LCFFB`gA zcX#dfb68W;@yFqF*tYSu6x#gj$N}!P5x{qc@QMf?_36U`B!g|&t7X@gC9U$7QNxB( z+lI`4*_!yo)U-CTF{wQKJ`S%q!K&K*2G#@wL| z*Lb^Jb<69vyIa$?ZR1_Xw{^E^+vT>szFn=__05uzHw(aBbg#wPk8i(()h+cXrv#U7 zH`|-dmM8SnNjSU8S%|)px|@EAMu2164bM53^^o@wfrnf&t~kPllYkGd`Xj{CQnUBb z4JB{K$@0ZR?lJUZeESp*qxXZqRhcIg170f`@V%;sVUVp#_e%Fl_xC{ehu_H^!1u87 z>gEei;XN(w!Ryl*Zue6;0<%C4;$}t&5QmBaJ%WPmkkrWx6Tw`|* zmDcZ#)^lg|8zlAApDN6mI9x@iiq4y0=Nv_+`Sr;Y-<+iTqtrED(+O)@kF9mvV_w@H zgCNA4n^jAHJzP!rZ$-~sAl~A$VO5C9Da5=4;vCI-*x%KR#iVLU)soqC8{?|Lu7bnv zRyAO1VO0&N8gO*j7FLykDg)1Kij4m5_h{gVSVyj%wh{c;I?Z^9W4rn7M2-k~rupn|%nNmhXA{Rluk!uigR2(v=LR*65WI!~&c#AfW?DOKA5WO=BONj(7#K@Dc6%r~N zC6Pcj0`W4a6qK>f5rG5_FGL-q28o(_mm>90&Nfl)aU0K$7=fM;Uby!aDTiAP6Os;cpfLmTL+ZEedv1b15LF2zcU(P2er? zgbi4}$=XH+&ml$Z)0{bpB^4nJL`CMr5nBKNQ5ec! literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__to_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__to_context/why3session.xml new file mode 100644 index 000000000..92a02f6c6 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__to_context/why3session.xml @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__to_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__to_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4cd5cb16adca05d341df032c276d34c6f3ff3e38 GIT binary patch literal 1683 zcmV;E25k8siwFP!00000|LvPgbK5o$$M5_Uz4eOs7}D9X8|l?PW1{! zr*S`h7nI~kiXf4_F^$ddx?Q+;u-SP$%E0^U-T$QoQV^eD-lcX)cYZWL zmCzE%IK=k|Y+jl)v8Uv{6c z-@v?WSL;&L?eMUsGQs8jq8-b5rr-UOI@^YD-_z;-TJcPsH|u#fP+y#<%`VbHNcG4{ zbvWMjF#lMt{#-u#Ox-4u(T|Sy&D(A$nx64z%%|K5?Bq~ts9O?VsM7wz^tF947*^%# zv(!JQdm$=K<%xd@i$BX-?)rnkrtozTnwS8X$C;bX;nd`8)98Q7ZAUlV z2IjQej&4F{#n(3)qmChtJJ?c2EdtR zeg!}UKn1|-2EZJbABMZ~zA*GXJUsJ7nFIqsd+t}pht!}9?S}pCCk#8*9C)kPso1I5 znI1b=f0IFLtm|=Iz1ZA)J%*b)H8ow zgtym3sCTdQo)O`tca@GiUvBl3pKF4q_T6IXlAy`|Q_HEX$=RmS|CEB(lX>#f3R+L- z%l`;L>&ZP%9p-T&Cv@p=i%MZ{b^KJX2fhIZ-)L zIq~W_@e~GbhugYjs3@o?c(o{K8l_AyIc0?=d!vm^0yqQi1H>q~|B3%9bmOw;mYWn< zFic15k;TZAkSYu0*^(9eHY1glFfJSGoOLGH6oa!2Aq%Tx46%&Y5B=K``0 z+$Ir0fzz4`GLns83DKc|WT+{`tTGLvm^6lG;F^q7gF1Q8!iQj^r=dek4nzj#b1L!6;VX1w^qE7%tH!D^BO&R3r+|dI11^F)Zk^Y z5{>nNA!-|APTG3oB;%+wquJBR1}Ijt@jSak`3+JAgB-O-k*wA**Pp$n&PsSC!w-5*(4cI(;S9~;FZ)Id9k9z2L+VI2sXPc1KmgP zQg}sw%rcvbm2EPp$P8B=7$ur{w17D}nm@;=!pFE=6VPVLb56- + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__to_structure/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__to_structure/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d7e6c8ccb91e946f753cba78a5f0127a2698b7a9 GIT binary patch literal 940 zcmV;d15^ATiwFP!00000|Ls^!Z{s!)z4KS})+@ink3$Oh5;TCZr-iP>@M|NiENLY= zjr;36vK=>ZvkTN|(nX>RK~rxy!_j*WGRqo5xxaz9>tNFa*K~ICp z_@SpbeOQ~b)b!vCrFVGhEwu9tJ9bHmy%=0fL+WDc%KYxOXXy@WXY#o`SJ;kIKe}gk zWr!;;()wZd>1VcHuo?Svl2en?~4 zL2kyWAVYB2PuYIXW&+8xCe3B=7t%CBftp_5H0A%d_eFDy=H5bck2BZi>G#)xB(*+> zudc2iEvmf~acvEKb}){x`!Ccd&xHQGCGh=YzL>&mm;zf|;p4ahd8U%u1il!-Vg!p3 zd<-Kv-N3jGkG!aVQU9X;kE8y1M*_cHL7TcS<@Rs2pA?Rh@lg z74cYw;gM?}h17}%o0GL1q_8n4ULi=67&2#8RMAt)KxAzKR8(bzFmA&PGK6Bdj4?Bn zk_Y809*v@qFn_MJ2ne!7Q4fiFBRyqQWb0Kj)@x-d5P^k#%PGm8Y6jo~Xdx}PF>&D) zz8x-9u7J%bMlxf{2P5Srp%{c`2D>4k0+~8vy0;kF(kW9=d OLH+_!d8{z + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..228b1fe73871bd399dfbb697cc4035eb862f790d GIT binary patch literal 604 zcmV-i0;ByOiwFP!00000|LvGfYa1~ThVT0;dhbQwmY_ZOkkCNssq9sZMx%CN?Ub|yI0m;_v55@t%A3$L_U8;LhiUej{ZDJ<@>Cvi}`bcaf0%*hafNN{s?4; zK*T>q_#qN;adyThvL~`%8`(8GxeRM8>j8Ry1AP~Fjt@urbhu9?@TyCo{tsuW1}E|- z^8X|9%hjg|@(J?S4S837bHLC4^zXB;jd>ZL>4PxU%8RI#`3t`S z<8aa4G^hefn`|Np0*nx7t#Qm+sZpa!Z}I3~CfiZB^4TJbmwMhW9|-~d|6Dq@Wd zOhlO^6R3j)fi9$oip4}iaVDxrG(ZNJK?uQVvSf%^6+l^#R-+KSisZvYnnx`ha~x%2 zI!K{YFw!_aPNYOtq#9vmGKy=XDaM*JZNV91sy!1N=}<+w2_}kQ2qQ`Eq)-shX^c*B q12i*OMW!K}_$;Nmrdm;vgsn?5wt9AnbWK?m&6@A;0UjNH7ytlM4j>x< literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_context/why3session.xml new file mode 100644 index 000000000..e934c5680 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_context/why3session.xml @@ -0,0 +1,127 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cdc0451fb7939b51be11798d49c9ce5584468e63 GIT binary patch literal 2316 zcmV+n3G?H0Kv>4|Y_Th0|+Vb&nQG{=sud(Nc z=fz_CqW$;sIefAH=YzeUyJG(E-7e?$VQt;>a`m`eRlnOiyI6(#@ko2vc7JAjYVX5p zW&ab3gL2#Om-F_kvyJv|3e@eaw3X~gsYctUkgCJ8eedprIUii;eP_2H z%>CAr<4ultRqlPB?T$Nr+@x8xoHjke@gC`^9^q@H^k09z3MMcLP5PDccAUVa zJfRozguRL890aCJqFd$lB=?zsASbh<( zWVSX@+fZ@-Blu!9|6eHZ^ZscOif!NcTUhv_9!t?agvj|mSaP=Y<>Wle@YJ4^*Ga^o ztpmQedRolag`ck+%AyYb8eRtZ){N*Ynt1u_*3V13NJg0ZoK9T*C|uPI1=Vp1>QfX{ zEw1)P>g#d!Z6HW`Z#W^%w$nnf^CyNXH_{CjAw}X<-o@{`R>1o5^=Hm$y}(Oj_LZ zxe7RVFv#oDPHggFUC-?vhE}QCk7YRvsfWwomh{5UOjF-2Ck7!dN9hdbkZbr zTpa3tfqM*kEs;$^>0upHuLC-6e5@)M_UK(WHu&+raP(UJ)(GMF5uL1kZ@6Np=7%_KCq?0L)(i%y$6H8vyezfZ1>W?(1xEFB*nDS7bTAI|D#N zRoO5`Dc>`KhEh|vBW*Y#Cm^IQf{+?%$tTCKjjU~>IvA4s7!ofS5?c%naGQ z5jmKeq|Jc=rJR7IIRwe>UIINobeof^L6iM~z&${+^wiPMw9zu&x)pM>Ws9yaviBP5 zr`e)!N1hUOJF(?zY+*yNrN4awd4MiroP7d5!ahOgkYUeD_-o;+yKo)hc&=i{OL;u6 z9=8gr{cSD05}a;Ah%=Bi#dYWp{O#*z5pG3UtsSV-eKSj zcjP$2zQAC}F;}VQQn9q%QlD3kTm5vGIP_}7p$&0T^j`xxFmh4X+kZMx2kIpG;*PSJ zZrPn~a-~}ei1*EGn_S~uQ$FhE0L73PcXNPZ+P^!*$)So?K1KmQ7$<>tK{?J2PDLRk zLF>Lo>%sp%m+jE~X%M(x|1anQZ~IV5GX%-P^26HyxDm36Ts z;LD&C!O{dv7xEAI7nPY7)C!_OmoXCOByi0n1Q(+WUPOznNJfHmU>FEXIAz{Q1DXZ! z(E?|l%hc6*J&i0ba8JDhtGUuPKmbj>_a;am%hHN~jo5jOY$Qwz?y+x9Z3)g90>%*| zg=PYhHTijsN+m$W(sFCk_clZc&eIT`*4*ecI+2x5MM;_Q#(ExUiIXNhF~$<5og%4` z%mP)!>&(ILE4FR7!>KYCfK@wC79f624Bu@aI`Cx?iiYSsM+G{6`5-bQNwP%hdi-I__ z70zV@1{U?@#H&)2HlVKt;W#O^srg&jkpA22QP1h7RI& z&_b!e0%MGWvV61yoX}&?y`O#8yEF8B5+5adIUJ7Sfa|NWswS z@sU!O9EZ{jgOgbzs1O=$;FSS_9$0!siStZVC}J5c(Fv_UpVEYyGzXHSG{P;DRF-KT mDbJ$i9K%6qNxkCe&NA9q1|vC7`Xzf&k^LVXV^s7(W&i+htb0KK literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_next/why3session.xml new file mode 100644 index 000000000..dd21b89fe --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_next/why3session.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8446f5ae6ba38f538b5d06ce0ba655bb702745b3 GIT binary patch literal 349 zcmV-j0iymNiwFP!00000|Lv1aYQr!Ph4(&1kD#$!|17e|rZkXc$#xh^qgEh0t}F+q zr?2cJg|=B05*o;6JV>ACG0%QsO)89QGET2Z?^|lDLfh`hTWZ5}OfP<5dLq~Jp`FSZ z7N$XG;e?wm?6H5NjuTqYj-1uldDg7B@3($_^CY#R#U?#;*4l`NEqdhkj7W;Sl37s-Eh*Pv$}G#N61CLT13b%wpsI~F1qlFErxG|z vrOp+I;!(0N5fVuSR9Cu|CFj5u)TXRcRg_vtkwK9|gwo^_O#}0@!3Y2VV_U2< literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_value/why3session.xml new file mode 100644 index 000000000..16b4a1df1 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_value/why3session.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..44a3fd529c85cff00598a590c46c378abc5d8ee8 GIT binary patch literal 260 zcmV+f0sH4=+Gr-_981mNmMI9b_7WY;(mQ? zxc-7p1-cxGyCaSu5d#9ijy2{7Kuiw`(9##dic`r16SamPv}u$B1S&KKnmgPv-&Xq2 z`%>uON~M5n4{*kp3-f#}*soBjU?qQK{xUh{ZN8P9I)v1GZF}a0oz57R8K>kS&3CK` z=e}$BUT=ga%#HSTgMp^f7igbYXy|`q<^GEQ@B6vMprqhjKJ!sIOWbR6+6XeyI + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b63c6e8ceb857205509455e823fe34ca37f8561e GIT binary patch literal 5585 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__fixed_size__simple_message__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f587cc7db094ade6568aa041eead75fdd32e1cec GIT binary patch literal 834 zcmV-I1HJqoiwFP!00000|LvK{j@vj8hVOccxy_aPa>&6KWBQU)pes=%i-{3$k<~$G zo_@;iCGO0)6TsyjClL$?l3o7!t624klExc&1LGzQxP<{rN>Cv^ZilwKOQ|jHu%_MO zZ%njZZI_rYQQl$Uq>LUdRcsJZ4%wf61``!J9T=cq^dpEu6#eCl3YCC>O zyAQC%ZoGL*F7sxyO!$c*pJXDX_3d(*wwne0G8{a7qA@y({jAwEVrySXoo-K!^V{U_I+O8T`rgt0+> zoBm*2FYv(SM2B!*6IqQOW%Q*r#>uPyQ(4b{jy3uz92~X#_kc0sV8X$KgI@;+*T078 z^=m=ryncM%ISg8CEyLO?(<+_6!vA07@M7RXQ#nCkg1`iUtA_w*cBZTUbjizP7aku%f4>)I<7~XlJNa*3 zn{!V2<=>m1|HQBp(wYLwND*tU1*Ol}bVZp>$XLuD@-Hbng+6Kz!h5Z<72XsZsx(d` z3alYgl;~to#zdn||aS5HB<3$<#j6jMb; zFpbinf(Vp`fYoB7AlJ1jOOw!i1O - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..eb914538ae8aec5544d521187cf6e9fbe4ade72d GIT binary patch literal 364 zcmV-y0h9h8iwFP!00000|Lu{%YTPgohVOog+)F{SEXh9f8WPB{_&SVdMybH|8c7>= z-#+ptDRjx9DFkw;3__q!|NogO_sHiJmq-xTCrlC7f?;O-nT~?DIA?h|?%O-8Mk=Rw z;YOCNoFV_hO&a`xPdG=0RZeBpqq-mu`{Reb?*0$plKCd_d4d>MNVq-#-}4U-T6GQ!)Q!h8aVv}^#2$dV}KcRsZ`$PSb$@ul=tS*+}6yojaTcn zMI#@VJ2gpO|XooOaJC`NYPvv#c&)?^5SsLms@ zHWgBT2L - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7d7a950662bb5ad8b5d06d46c6b2a24d7a825cb0 GIT binary patch literal 415 zcmV;Q0bu?giwFP!00000|Lv7QOC&K6h41|-}?g8d( J$R7F%0000U#x?)| literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__context/why3session.xml index 198c40782..4646311f5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__context/why3session.xml @@ -7,34 +7,30 @@ - + - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d04f2b57944ef3101ffe85bb07f0cdba05437cb9 GIT binary patch literal 714 zcmV;*0yX^~iwFP!00000|LvGfYuqpphVT9rz4cHEmaI=`3VR97AMjO-Mx%}CdUvrM zNdA50-F%RZNxNMcTH=e1EIi<^7r8f^E@wbb{pCg*Us9q4{=ZUg<0qWb-&8C+<3?D|@w!E*IVmYu5`n{HZ| zt>9Z$uS_#-jj~LuBz=|FFnr1D^~qtg4RoJV`caFYE9UQFq;6Vs1>fJ8&6U^7>`sdg zan%gzw>?u6@49~1_0Mv#p-nh=r167MWxeibot|Bw=wxM6Y;ym({dwYH9NES39r6>s zmsc$PvJmdt_ThMC#~X*UExQ8EIe3v@S%AC&DM3WT@!q*llaXU zLQf;({vXw9ag!Y=VlJSF{6G=20!3s6ikJ^5Vg{gy`G9h%-D%NO33Zt>si_8PmUrPv zGBp89$uA|pl>Emj`I=|gtODMgFTB&()aq?VlbWQ7MrNeR(Os>OU%x!EL%V)`4y|5w zI;WsId+~ors%j2WWimUBs!WcbQI*T=6sz)RKZ=RDVU;Vhm)ZS2to|yiW9P8c>Qbvq zt^WJ9`fg{DW#vWU!D?9je_g?7I`0|CWExnlPflC2Y^0tGYI+8!=~nB^s7fozn-DjAs36-ot?VidxrAX%V_+6QkUCQHh4 w!y_ - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a66f9a11ff83a0fdaf5da0edcef75601c04bf392 GIT binary patch literal 2446 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 - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6588045c1ae16bdc32feaacb5b225b97bd6e78e9 GIT binary patch literal 1141 zcmV-*1d96~iwFP!00000|LvJgZ{s!)hVS|ny%!5`_)VZG;7id3f}RRpi6J@M2vBU- zk{3yTeMhzvKqaj6)=a|QXf%d1<;R$1yoE&Q`r*5A#Zs>A7UdQ1A*VK$3@eJ2EUc|gwmTv4;%NAO( zGhFbk&)9b*t~XRD(=e&I>x$Llo>F{bO0zt-a>#`UUOjt+889%WpQ$ONxW;^Ko>Q)~$M?O3(Pr_{gpx-x(A<|w3qGW)e`Kz_(-&afKDsoB`%~j+b zs*~sQffqrT9LFh1j|;U@y-{hP>NIB6sseT8a(DAxUrjz?-LR^WxdFTjeO&b6QLprWs|L@)M}g(DUg>|S(q>gjVM@j z6;ybD4a;CYB%&f+J$h^0#ENJpFBY9dZ$NTtT}fVMmM28A-uTH1SQUWKzG&%9u11r$ zXmgT+$Z!y4vXYH4Nm*e^Q8EOengdecV2iOf86hSs)p#Q(R3NZigV`xr`A~|4qLU3f zUAoChNbpq=I8Q|r@qjvmQ*_lTHSq$RoP^3F@ - + - - - - + + + + - + - + - - - - + - - - - - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8261bb710fba14911ba309cf966785e3f3b0fb41 GIT binary patch literal 4378 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 - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..555d9b79898a34482477ed75cc7d46d25d726699 GIT binary patch literal 441 zcmV;q0Y?5GiwFP!00000|Lv7MZ`&{shIjpnZdv(FYRHhqsP{rEar|nCNVY)ILH+Mb zg?7;-UaTb<1Oa@ZyW{EML3adqKEM>Mo|AXcLh%FH$56skEbs`)Tdl!?zOE^Zf3%Kv znzf#M&hXo79iktdwx^VjN$Xb_PrkjJti+ ze)s|J_HgaGczA^r;ZW*_ex=$r@0VTYr@5SUeumk1Woyi>F}KG29*tSvV|*1wSDuy! zwrhNw7TdJ=w$q~HMk)e~F=C8SQaUTCs|F<DRPt%Fgh z7l6F2L8y~P1=~|hnN*>7oG>m4Q#|lskuZG?A|0qez!Jv-ql{D2*H=RTQ3l*_A8HWo j1f@X<=S)vH04L51C4(0N47WkK8pOK4bQ;TPAq)TjqL0>9 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3session.xml index e6a907175..a18b09051 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3session.xml @@ -7,20 +7,12 @@ - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2e5f02648889d19398d3323110984bec643fb627 GIT binary patch literal 271 zcmV+q0r37GiwFP!00000|Lu}JZo@DPg?F8zM-XLMmWK>of^;vk60}6M0{kOLa?sqq zPK}~K(V?s2D z<%JHk;X^a(pEH0P*kTV?b zH(PGA{dJ}(I*jv$a-_NLym~T6 zv#qvdiDaWCD+V>RPjG5PE5T^%WB_Ze0c-5w^x(ic)#(;sgQVzhOfQ2Pybp#OBZCgQ V3&7q6Wz+^K@d-L38mvhK005D2f$0DM literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3session.xml index d368b134d..5d00cb8bb 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3session.xml @@ -7,27 +7,27 @@ - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..794ea99524a94020092a303aad5bcd7deb873714 GIT binary patch literal 336 zcmV-W0k8faiwFP!00000|IN_7Y9lca!0}#BagU(y(H04~G1(VzJB((eM6kA(l?=(- zM=8=D*Z2@jqo3eE8Y{i9rE$lj>~s`HBq98rN8LUV8((+CYw4Zd3u0|$6XeIy?+0QZ zG|IGn-`YTFosWLe=apV*E4TOYLA4zdZPW+rwXRi_>ps4)f6!i3eMSJu*Nv`?aX*SQ zp6@SaB`K92+rV~fqtS-c`(u{2`|V=rOj|GKXT*;Gw@i)G&-v%?Jk`^9M!1T)MoQvx z2o@|?kjzjk1BmyM(jW5{RRqXdXjz=gk|KEnj&(>mC1-2liL^>OEs~?nHuI9^O%>3| zhCnuHV427&h)|0pS>~oeL - + - - - - + + + + - + - - - - - - - - + - - - - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - - + + - + - - + + - - + + - + - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6f8cbde8d3a0e29a752e01873829b8639aa761ed GIT binary patch literal 7288 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 E0i`MLhyVZp literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3session.xml index 184ff9023..d681a5ede 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3session.xml @@ -3,45 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d880b55fe04dd05ff94ed47a3630f9fe8b75a61a GIT binary patch literal 636 zcmV-?0)zb@iwFP!00000|Ls=6PTVjMz2_@>N0mIbCy5VRiA&W=9IITdi9H5O*=(8w z1pWFtS%?-`Di8>fwtI+Hp105Q-ejLWo{<}`&nPthJNcWIw$a(xUQr*Z9j9gb(O)us zrDov$*XeNt3lq^%aK_tiys^Utb)37Ubu!~J4Z}-?xN8^QcyVl1s z?%E0}F_%skmab>dj)!5_FV&w5#o6Irsr(*d?+Kh?cf6A{jE5g5B8@xSb4UJiyS;Hr zCX8~BCzgEysAp#_d9ruUJ~Y?XMz`&(-6rXD&en#=jkoTyPfplFThcFvu8HFwF@eWt zQYPQWq`}^@4iA`Mnw|r6Vm;03C;Z0sNKg+XNU8T4^m;VN_{1C(eZDKaaKDCzaoNnr z!SzF>U&eLcj(dc!_8}YphB#Y#I^6loh7u$;R5zULBF9VW?HwKBuVv} zJie&K2fonBt0wxk5+0wix6R29{JPEefaQDAVK7|}NGn}SS0s?gTwRosq!6-nAxGf4sEs!|oy-ZZ zd;-a=*3O4eI9caK;RFh;fO6>-fJQbGNM(W%O#e1yV^ - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a68f947e3ad3b4c647a30c1700ae76f17b89b030 GIT binary patch literal 1058 zcmV+-1l{`|iwFP!00000|LvL0ZsRr($M1ZKzCZyEzj?@^7o!1+o(f-uAvxR%aBM^N zF0yZ5QgXc7Y!*$jwgUk)V409d=J*KZ)eCT7>Z@=Ks&iSW-HG zPgA;auW_$&@2%Wp_{R7*csNd3ScCZMaxvGCr@CiOBRHM9$_<0ds-I|dY9wEmqgPRW z1CCxp_YF9D4cRx~=T*l)W5x1R`qUxQkMe6!56%ZiM%wA3HsFs7ln{nee!cb=!9 z3zdr4)dk4}uR#+m;9>F;HZ4N>OK@6(@R#Vc1l?|48OY~F!c`y3H=O!QP~OU$R^EI_ zdGlj$Kuj&h<)j6k{)%nDYQSp1dZ+9;2=oX78Q)P4eCVWg`@%(KC|0T#+#N?FL+6W(|%qgPHMu((1C7B`p27iKKn7I__ zE!P5abU7x8fHnz9+#|(e#b0McD5T**^H2{&A(Y<)ucHYjr9{O@Fefl7DoV1`#)DT< zxFD4(elvn`#Yi%pwKpM%=mnrl)@9924#H;@vJ$2kDWHwJ_#VE0kDoco&q-%qVXns<6I~jFc%}wc#)93Q`ul37sxma zJmzd7=N7E3_k}a=fIuX2ri7#g)ljvP$qV7Fku~K2%xm&8hsdo0FE!NQqt-UZD9Mk~ zK`^6BU_7ED$O5EOHfFHF35O0GjaHHgWtDRpy$?|rMN*YnVmvn@AyE$1N--)15-gP{ clmTf?vJfPX77%nE^8lLt2O9HUI7B-D0CN)lM*si- literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3session.xml index 9cccbfdec..3143649d4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_checksum/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c85bcd5ab2a9de2f841246b34aa819b5ecd202f4 GIT binary patch literal 388 zcmV-~0ek)*iwFP!00000|J9UDZrd;rh4(r|k3bH8L@u)MCTM^x3vY?x%%~A6$%04+ z&h0D5&Z0(<+JFnR8-gSrALo4ovOXcdO*r_5BP1_3qImdTT*((VZUz9i||%GuY!t;(1*b% zHnf|n9BMi{l~q{gp|2d$~77yEYEXEECIAKLXK<(2ueoe+j6c zuMGDaMi=?+3QOOM*7^Jv&SxL6?$RRjO|k#L@)CsJ!sGq8>bru43$XgXBfI%$U%=X_ ztBd>Fzs+ZT-qcOKsn?Blh7I}Hq4VScGDOg zb8MA)7pdz+&KoPxs@9U@sK|)TL1lEg)9gX5B4~09OlVab`RL=BHMdr??T9n0yoyW{ i0CWaN)<|#>BxDLohc34{Yj1EB+2$t~dT|b11^@ue{l4u0 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3session.xml index 7ecd0825d..c47398312 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_destination_unreachable/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..504adac23db2ae915d6571e74cd6adc30dc38e48 GIT binary patch literal 399 zcmV;A0dW2wiwFP!00000|J{_kZsRZzMSFckK0$nnEK;}$HbBaSTVgabObE!7Akl&I z_o3prh_MLlg;VS{1W8<8&OLmTN1(S1yM!U-SC|vz0$2|4d)_lVz_9SKyEYB)rt%h+ z7nryKAP6BG+c^%05EAaD5O%yQ@XR5^!~+G~&&xQ6@Cw7ePEIq^wtcFC0yE>u;2Rqp zbKye?pH52^F4K_8(SKR1MfnK#Ph;tUy}00?{=L4t51XsP3U#96@G)%^! zv#sw4qmAdwI - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_redirect/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_redirect/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1ea0ec05e8a02f23d9d7d7d58ce2749b6919e643 GIT binary patch literal 387 zcmV-}0et=+iwFP!00000|J9VsYQr!PMfd)SeuAF1w8$cx&_I?YTQSy*T7zHMN=W{` zN}VhkN^ro1b~Cob)z#cH*l`PZZlS5XtJ)(B6|@n2Ji*&=AlN`X()4;M88v-8yYT~h z$^a0Yb5k8ceR8hyP48So;|TBMT&So<=MTf!4bB~*KBUclAl$QE5=0ot-wYnu_^yp~ zitg$(CgIrERh<0COSfKbVFl@i3a8~)yH7=%8waVU7O9Q5K)yqADO8ox#BVA2Zf3$C zK;4C0lo($M+4cNhT+gl`b_qrQRO~rG?`iP8*enN^FG^S3(dGXW@A_|l5NT$!JN)fG z(4&d3<2pVy^$e`HiWy^aEtTYCfRWH4mzoq=%U<}a&bShsWMMRg0z?3=EMuYc>1oRX zbP}<7A}xaAf@^~XV>) - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_time_exceeded/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_time_exceeded/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b76993f4fcf4747c0791720bac4f48f81e2b1f4a GIT binary patch literal 388 zcmV-~0ek)*iwFP!00000|J9ViPQx$^hVOj}9$`tEq&{%i1u=;u+SPJx7b>+~)n;hC zJsBGZCWJa^9Jp9%^yiQN&q~vV1A>ye{O?NL5C#uRy#L#nkqSdSF#i`4-hY zEsXgCt&5~L#b$2B?Ru6J`$K*oB}uwt`;i- zzJcgM7Oj?vLKSOZZ>kVkqID9gT&yk0no0<=$QB^L!bTL-K@(l+0?SIshmtFaK8sud iRRF31YPX`=t569(Dp0mG$D6aLEIt62E%(`k1^@sQ>AtW4 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3session.xml index eee0f12f7..b6bdda0e0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_code_zero/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..18d0c5094b5aaea6167c940b7740d6079ed0d557 GIT binary patch literal 389 zcmV;00eb!)iwFP!00000|J9VwZrd;n#_xWLJ%UJEvV7S=l$D%~yl zmDV4;XvG|uh)!dQ;6$6bBsx$v&-fB6{I*UpAMdVQZd?Aahdr2=GZ5 znWwCWOy@{z5w6QPFzg>E)3q47TgQh`TiEqcON**U*M~)8mnL|0@ns&YeHxOd+8l| zvA*@Lh|F~&WQSc82Z(5ck=oTAqe2H5#kX8USb1;iP>V+a?Jc8=7GuMndo{*~wutIV j8ry2$IopTWSXS4S)7F*5#& + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_data/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f5f292eccabf7d0d95cf18dcecab2d7f26360103 GIT binary patch literal 1695 zcmV;Q24MLgiwFP!00000|Lt2#ZyHGuzR$1NdlaeP4{3ei60IdGxvb_os(vLSVIad0 z#rx~G<^cv95+h>-PWynzJwM^qBSzeEahj!ov*iYhTr~AJEh=YrA3iw^>E_ z1k+_4F1wc^-Y?pRYWWQov1o5U!wtCkd|Jit&_rKV5TIJWHfj2^s%n3~sH*$8T*B8_ zRenBemUUQqN-|!G zw;|aj0gGl)`Zcn)gBil;U)`#nw)L!P9~NFZ)C)iD3t%Le_8ZqO_o+rqJ*?_0{j zvUI#kIsGa5gVEBC*u32g(SDEbUJ2H-Xb4-&#Ey!LqmMemu1804}7-*sW5fz1_@6%@ zUFZXmofcq_;@kjSfCA(O;18z%85@8>0Q#VNXg%uyu7dwBYyht4AmQD009gPovi{TC z;+IER1MEslMtPv*4(6$Xrh$iUmi}UWdcfAlLVvI8?Wie}M+A>;2Ae!BYEP}!M<%;w z?85bk4$ku4S^h+j#?dPiq~{^A10m((%`4WVV&~aIN!j|*!uYMFo08H!)JJ6)K0b^R zfxkc9{<5giXKy%KQnt0?kf1!V`4i;i9jZwdle39Q|IMG0@_PHnlX|^YSl!=0c+TL) zci$IPuY3a0Jz|U=@6Dg(`E>uZJjj@*(vxd)R~$;ZyrwAllPDMy?KSz&>OeMvOzP8`+%~?<`#N8|?m*D^P z2ucCiTs1KJ8evUlnuQ??!-YnXh2ea{aPz1LkCcYNa#{ZuAODpx9~k5VgM47{J`W6D ztOJvFvZt4rob+SHB%fSdio3a=xCH;t)K3(J_s;Xgxfj9dz%5bAaLYN-NfKiHU-Ta) z3mX}UG-@d&CzM5leF&FS5o-c4ZPAJpE^?a;NI??S&WJ?0NLr;Bj03HBH&sCtwLqdu z+yh9UAQZ)AfKe)>_1#STWk%ctoH-_T^NnWUlC32CBm zp-+J>m{i(?#JKV?xFmy>mRax?v`@))My819l3>a(AEY$gMO+?m=|D*mRxmWO1*726 zM-rv?ptKaT3x~cX9~6_F6)HW>FQ^mNVjfel z3L~KrFCZ`*9qFtX`YtKO1+9n)&3y<~QwUNU?=;xdS@FUvtBk_H4C9_T5d)VAQ|UQT zj>s-oR1_gv2O$NntWiOFLx?g4!K2U<6FXE^%r(U4*0jLp9ag=uODuf_{=>S7j zA$$iY>8aKo>RgBt(U=TwwoOs@E9ycgm7D{oxl2N0;)F4p3xl8uL3`+|Ob1a!3Im!j zr^?IZ5G@Iz?x~@M_kLmSF^?=UhHeQKBiA7sOkGsmN@jaxF;ZZbNOTE-YKeAACS(MU z8WV;HiOh9Yw7_g}h7ogXG;-Hcbj%CsH1l49>E~kTJ;%^x)LNQgY(V^SAElBCh~uKe p4dXAI%XyFVG?0+W!sD(8+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_data__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_data__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5f02655d8b9ecdd5d302df022b45f7329e2bbd0d GIT binary patch literal 3117 zcmV+|4AS!-iwFP!00000|LvVyZ`(Q&$KUlS_Pr>;;hn(t0DcKJK+*HE(5t{}YamTh z+c{|V)9+C7MUJJ|Nu0z^c~Cg6G@^#X`TsPenA62q>leQ-r#9SQ+n-b4+|F)p<7{zn z({wgp*ei=4?N_ijsj;(}y|0N~+%&UzYlB_brs*uV4z-u%k0)QXNSAA0rq}=2+0D4n*WUc$ zSa1*c=kL?^k>mtn%LKu2|NU)~Fw2>$lob$JK@gs*XOc&Fe>sqc%C+j9|XE8*Nk-nL2 zPXAgrvKeN!J_`$`@zkKAnyY0<)i=hST*OTPbgY zv=%Qx^HzgLk3@$9WyACz`w5?y%InE4PS9WoCSP;EuHyCg#gAGRtek?k1uO6G{<&hM zveWBkX0N|TyA-vlb+7pC)giUH*g26~to6lP@C3$zLQg(D`an5-Z~17<#ToU2J?zC6 zQcmCh4N`W7VZ)R|$@mylupT(yRWbX-5o~YU4P>6%9c|Q>v(`)d*Ow(p4-3+oezx;- zKK)-@wl&#WB3Vs~S1TW5)8^Ir%^Y?ey)z!>mo9#GZaiEEsOiNKQvgPDVDCD>8Dzn! ztYth^@cAA~z4O=5`>yX@Plvp}Y*)kD^WE1^ZPE0(rXIZZFjO|N@v>=p9pdkrzJfI1 z*xERAX+TdK^qsW~NOrE|bT zu{NDIwaJOI{JLA)spOW!1c%kTwM%_ zDW9UFVv^nY?(0fSVq8pepP0l;#dHen8IRWzKJ-=S^SsIE`_kt_&TA@E=fu&IVG=n$58LT-4eW1aX6PtrQ+YQuUMK$PS4OU!(Hv!w$rk00U1FL-RC~>a4V20~} z4d2*{`IfiP7ts~b716z+=uW(-IMTGh98uGSQH4>3QE$hn;~;?2qe^BdbQDHnN6Ezj z)Zl~E=qAK3gof$bFAyvcJVOZfb`#Q7FE`tTx;3M(FHEVE#RFXtU<(k-qZ>rfGeShK zOKhY|9X8IL5^n$rI=CcE2iAn?RJoKEwLkGb_cfeCt zDNl5jvMmF4-LjvC4t95bC|VRUU+J3{q!gqSq?{8{dcReSI$kCt$3u@G09He=Ytj4N z<0TfJO@-wS)-@MkwOl#bS-pVCgQ|DOYWP*h$6e_>kPIIX3}?@UH{Sf7f17yk<9=0gQl&qr0&VW3-$Wc(DU z0IyZO>}mKVSb+WY%M;3%@z$P!g;ira15EkB<3X7r9ZxWPASc;PgqXQox=H z;n|hPzJ`y$m`7`mqii&LK4f-_j~CY-Ws}QgBjm^5JmO z-{Gt`qW`>N!5R()3Iz%U3Lg^+>whz;ulH|7@I~-N@E=m}J5|7RfB=V927M*3=MY2i zn7qlF#NaDU(ylaq!M*kcN^Zunl0z`M`K?3QG=} z5^w--BGN@C;VGxiP|Y-nNij5Hl`;V|l@YJk#7U6UCA=MRoO_^2W~Zv;tY%!HmGL5i z)jnuyS+EH-N2sEaz}ul8I#Nw!vJpIG+*3t0wq+@i*(X^E5Jp$;OXhs?2+nI_4 zNrHmpA%w)OPlN)uoEU=v<|N+^NX3&U4&$Dz<4j?bT8OBk*N}LykYfN)Mf8fHugowZ z9geO}4vZ%l0GUK2*@{-)Mj>dxaR8-rn~D-DKnLr*u_pTttcr#@>|3?JL17P;Q$jM@|3M) zr4k{M3(k^vGBIi`_9IvmC?=t2tzW8gmg70E4B95H9p#vW)-&&k^sdb-(3RC1GeavY zbuuJJJAsl+C#pF1R%a_y8KaUW!ciikaLl^b zS}MHpEEw-{TNEm)9l_3{qbL<@#3&hJ!~;MASjeKFv?6VeTSL888cPpMwd9S6nD&@I zTx2U&Ss4U4e7GtRoq-s+)H3j#*O7{pWkGqxm<~ZXM^p+RwN42GFL4AN7ntTbs;FrZ zoRA9eIzggQHhM^y(%i(LIkm0#vVx$PiY#ER8Wy85DJGPKjZy}~Q>#{m`NdI$URg_o z#=&MfDio5I$vBI-lC5-w4m$-NN7uy&n3I-aH>^h$NE{`atxSau(0~pkZ2|@?C2E8t z=%mFQk}>BOBb7-^_!t;<6bYiK%4QU~6r-2Xw}5~u#fVA+PC^KP(g^ryx5f&VQxRg0 zDx;M%Xu_om91u&90bt_eIQW1Xw=pY?VctuI=p#5FLMe%W!PJtNV1U{NymPkVn5#Nx z9FYby(K%-xsOa>TS7=~0JZI%vN~cg19SKTv)HsyVzSa+Yr{B6EaU_Y zl(|H?1|bq9+~?RcRiT`~NPM1P##4hFLB1O02_}dUwna136&Q|g8-z!aiZhu>n6QT^ z2M59BoM5I(Rw`n6^jCz;>pci HJ*NNw)qCEz literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3session.xml index 356d4c4f7..f8e574b15 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3session.xml @@ -3,892 +3,930 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - - - + - - - + + - - + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..52f4d46870c021effbfcd36aaa684b9a0b7604cf GIT binary patch literal 8588 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%0AU#ip|!x?2VplO3ScOhf=I@!A8TgNvS!W*J^7{ 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 - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..431882560118688ee7478a04aedf10039397e0d0 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(aNLiLs%lsi&{EkGG$xv9XcYMgvn%vkfL@ ZrsmrW{K5>r7%2D&GMu`>(isUf0RT%x7MlP7 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3session.xml index 392b66a4a..664e05989 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0f854c01844e769249a1771cabb31c8def6551bf GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%zjmJJ(BOuT)}jQqEFczJF0*kWL~$-~gV Z(AU${#5B<0i-CflAcNTD0Fy|d2>_bi7ry`i literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3session.xml index 339ea7c4e..3b87d1c00 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..54d7dbdbe1334af5e18268067070aa18e9af1949 GIT binary patch literal 696 zcmV;p0!RHHiwFP!00000|LvAfPuwsN#qa(Uz4cHbdBz_9k#-O1p(+yMRP8kydu)ib z?4sQOrJugeA_Qom6%q)FdPw9XPcy&wlGr}xc@9}0vRtqDY{>nvy5!BktC82W@{i3$ z;cvX$mYd;pdPEB>Jo2MzRnE@G>wbI6=S3agcAK#bmwdoqc>Fxv^lA?v2VR!d$#}Y} z_li(=AoHh4vVrc+IeA$18(y6hK3mIuhIdaszHaRqA2chwQ2IN2&U6oQ>HnBZ|0ZvA zHlMm3?IcH2)x+cZkNat$_5&Gu2(Zu(+ArV(Ih{Xlwb6YblMl&v9-a9({w|h<$Mx6Y zgzK=`jte{-#&)v}hOC=-*{914t=)vzux9P($E$UJzP>7(emnds)4lc!cl(_exYub==wRy^4DqL^r8W88psj eswG5UNm7|2ZPzhj)gkXX8uc5BHcJKK4gdgBa#>vf literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3session.xml index be3317f3c..6646a856a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__10/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..80eb3f8000521b807708c9a505c12bb76d070f92 GIT binary patch literal 705 zcmV;y0zUm8iwFP!00000|Ls>xYaBTczUx=ywucaqN~IUrht46yV0>EU+LTHqr(rx} zX4=kXfBjaE*(7G{1jBlhn9v}E`lG&w)ROvwPC2tZqxNY-R}+uZ=9YF7ZD!i`PJixh zgx=A5FL&Lgc>wFE(M%7bja*&NpT_+Mx)yWsFWU*V>6YHmYnuOz zQ1BU5eNl4ys1){Y`0+|<+KfBeTnb%n+gBp;FQ9#X-r6VhMy(uT89&Fu(GT~M8NZ#( z_+w`ExiZ!iX=*(|rXid!K*hUXN8GBu7v=N5cD1=Ee@PB+ z)(v0)R?RdTYD7$e#{Vj(<{ho(o z@)aBrAG+ss6LFNk<{k08a)$-<6Xfci5-fZtSoMAv?V9%U?_8fJ*WssH!owq5#&NV? zZ<$BI9-kh==R86H0AKLWxA+XCjv{2CI))mY6KF0) z?>)xGo?p554vlB7&XQ}AS|eMn)t892_?VDuRg^Upn!_A(s=aY)Ay}U%d-0K4%Fq-9 z#&&OWb}dQk(!?fl&1aob%A&ZaAa5|F6hnsS$!V=Xt#P+lB4EdymP%+ObJoEeI@Bh* zjBL%)bLq*2Py#3@7+^`<5GA-EwE%I94IQQg)|FNi6phWbDX@!3kEy5Jqc|yq2<*`Y z1tlZcYw@XJ?#;%ieTEQ~3>%dWUP0OP2Bm8%0bTS-s4~UeY@i%s6kLQC6Kt(&u!hhp zq(G^3WMD4I`;cg< - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__11/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__11/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3session.xml index 7ead76fa2..39a79bdff 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__12/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2d6d89306763f6e16c99d3e867d393115ecb36c5 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvDgYui8&#qatQz4cH6yF2?A?1OqJ4TPMEuVQw0CJ{Jx zu$83gr|-z2NsN=0K;0y!7qKjFXWsj1C9O_zT4GVhSZ^12(U-1YT;r<8#ehp@{IlA6`cAQ5bSqq(5ne3oBNOo*cpvs#dxA$2WrL-=$5K4BTV%T5lj&aP zu1==X&DfKT=432;e9G@Wk~H*(m1*0-Ol|j{>4OS8eI~8=JE)x7-X-Sf{E!k}%?XF) z=l%@2U#*9kIqnCUltEvVi056tE?U}+{=^$j#!ENcEW69)4XwI$|ARJ@@;tY@&1Yt( z@n(2}SKfB?eOO@`W_q)M-T+tq60qhEU?uw<+BvR=|6KROwS7}txP9i8v5WTcD{}|z z?$@Ke|7f;Pp9tE2aLj3i_H&2K_Aeil+ZX-6GWn6|qM7GId7R4B+q&ZJf>A-oK;#0L - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__13/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__13/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..80eb3f8000521b807708c9a505c12bb76d070f92 GIT binary patch literal 705 zcmV;y0zUm8iwFP!00000|Ls>xYaBTczUx=ywucaqN~IUrht46yV0>EU+LTHqr(rx} zX4=kXfBjaE*(7G{1jBlhn9v}E`lG&w)ROvwPC2tZqxNY-R}+uZ=9YF7ZD!i`PJixh zgx=A5FL&Lgc>wFE(M%7bja*&NpT_+Mx)yWsFWU*V>6YHmYnuOz zQ1BU5eNl4ys1){Y`0+|<+KfBeTnb%n+gBp;FQ9#X-r6VhMy(uT89&Fu(GT~M8NZ#( z_+w`ExiZ!iX=*(|rXid!K*hUXN8GBu7v=N5cD1=Ee@PB+ z)(v0)R?RdTYD7$e#{Vj(<{ho(o z@)aBrAG+ss6LFNk<{k08a)$-<6Xfci5-fZtSoMAv?V9%U?_8fJ*WssH!owq5#&NV? zZ<$BI9-kh==R86H0AKLWxA+XCjv{2CI))mY6KF0) z?>)xGo?p554vlB7&XQ}AS|eMn)t892_?VDuRg^Upn!_A(s=aY)Ay}U%d-0K4%Fq-9 z#&&OWb}dQk(!?fl&1aob%A&ZaAa5|F6hnsS$!V=Xt#P+lB4EdymP%+ObJoEeI@Bh* zjBL%)bLq*2Py#3@7+^`<5GA-EwE%I94IQQg)|FNi6phWbDX@!3kEy5Jqc|yq2<*`Y z1tlZcYw@XJ?#;%ieTEQ~3>%dWUP0OP2Bm8%0bTS-s4~UeY@i%s6kLQC6Kt(&u!hhp zq(G^3WMD4I`;cg< - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__3/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__4/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__5/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__5/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__6/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__6/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3session.xml index adf62c9b5..1b9c8fcab 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__7/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..80eb3f8000521b807708c9a505c12bb76d070f92 GIT binary patch literal 705 zcmV;y0zUm8iwFP!00000|Ls>xYaBTczUx=ywucaqN~IUrht46yV0>EU+LTHqr(rx} zX4=kXfBjaE*(7G{1jBlhn9v}E`lG&w)ROvwPC2tZqxNY-R}+uZ=9YF7ZD!i`PJixh zgx=A5FL&Lgc>wFE(M%7bja*&NpT_+Mx)yWsFWU*V>6YHmYnuOz zQ1BU5eNl4ys1){Y`0+|<+KfBeTnb%n+gBp;FQ9#X-r6VhMy(uT89&Fu(GT~M8NZ#( z_+w`ExiZ!iX=*(|rXid!K*hUXN8GBu7v=N5cD1=Ee@PB+ z)(v0)R?RdTYD7$e#{Vj(<{ho(o z@)aBrAG+ss6LFNk<{k08a)$-<6Xfci5-fZtSoMAv?V9%U?_8fJ*WssH!owq5#&NV? zZ<$BI9-kh==R86H0AKLWxA+XCjv{2CI))mY6KF0) z?>)xGo?p554vlB7&XQ}AS|eMn)t892_?VDuRg^Upn!_A(s=aY)Ay}U%d-0K4%Fq-9 z#&&OWb}dQk(!?fl&1aob%A&ZaAa5|F6hnsS$!V=Xt#P+lB4EdymP%+ObJoEeI@Bh* zjBL%)bLq*2Py#3@7+^`<5GA-EwE%I94IQQg)|FNi6phWbDX@!3kEy5Jqc|yq2<*`Y z1tlZcYw@XJ?#;%ieTEQ~3>%dWUP0OP2Bm8%0bTS-s4~UeY@i%s6kLQC6Kt(&u!hhp zq(G^3WMD4I`;cg< - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__8/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__8/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3session.xml index e08356f25..94f10ec78 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__extract__9/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fd5c2adc7890a8d7408c9a9cfc534c27ef3cc8e9 GIT binary patch literal 234 zcmVW z_av#D_D~Q%6UNFO4AOX7+VbUR>$-B zp?E|$=_OpvFR!0y?K!;-LzDH z%kyx&eAJJ>X}Jt1al&4$5=Ww{UT9ZdxWp_mvAuIoY-)se5+W1X;Mmt3M3H?A0%%$x kdmU8RrHaDdA`w$AuIy6qpz2bTj0Ga|4FYeXX7d980I9!mtpET3 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3session.xml index 574b9cf1b..4de937e2c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_gateway_internet_address/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0dc115031c94e4bd9deb8d02e8b1197df0405682 GIT binary patch literal 397 zcmV;80doEyiwFP!00000|J9T|ZsRZzg?pW1k1!Pfixh5x4Ulr-mKY9)i2zv^C^~E3 ze(AMS#0UZ#aEdg9B)oYu?<1-Dgy}HhW}q-kZ&(JLDpK9!pR!|o#Bt%%<8kSDGuJ~{ zUUB9QF<}Vdw3a;XLl|f?hp^#g!50o84?LzoyRvLc2yZy<+Q+$YTElY_R4h#I24C3F zcB;Iu;q0_D;WCdyJ^3%kX~{m}1GWxBI=%iM_oisq#z{Q$lz6J|fnKokUp%xPmCMAn zS)|fxJ_HueSBCwB*+t&F!V~wRcdlRe=h_FX+faDEDfW$QFTsd)|9C&n;;x|k3((@n zlV1Ip8`F03>S4e8Z}rtVSk+a%=`3_45 - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_identifier/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_identifier/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ece918cba1818b7ce62bd03e0c5e6a6321664ed2 GIT binary patch literal 383 zcmV-_0f7D=iwFP!00000|J9VwY63A3#_#(SeT2>b?7@SVQo&>K8fIt4Hn6TsHj2J| zW7R{YSOp91C1jE>llgu_l4n5s9##=U?6;62^cgVk;5BU+o}nB0I6Vv%uZFx2<2wvo z0T6@`j$>MOyAUF-h7eXfj_}4IEF*UmaFfP$3SkS~rYsJLX;IIMAVXq2C%BRZ*L~() z4yR0G5spI_^D+N;s22SUCQxpObPPYsz02CIc8CY=iTivu6c0fxo9T;1F~8B?H*n%)``5YF z>uH|myZT*eubB;4FG)Mmcr3A3ZL5^y*0%0RyqJnW8{O1Gl5M5eB-|2_ow7s@4M7pr zw}~8(0j;Perg94?MCFvJxs}#<#3GWF5`r`s4+5>GwqeuM2<)6~gsZJ6B2|@r!Uh_t dklAbDt@O3_q^vVWd09ld`TzsQOYLL^007KEwSWKs literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3session.xml index 25b4adc97..ebe632672 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_originate_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d68e961c68e2bff9afab2db27cae26c9dd0da07d GIT binary patch literal 395 zcmV;60d)Q!iwFP!00000|J9ViZtEZrMfd)S_X!Nf7#3Y*Q?*i;PuY&f%+Mk^j)h5; z{{5pbsZ>Q(6LP#sZc0K`kN0z_cShYn!XQ>?B?=@ z%L~oY5HTU*Y0PmvBBrpL5qGjI^el)m$;cQEdD&;gR~irX<(!4L>Zu9}WeFb!-`Irx zRODFj?6g$jGLNa8{FnD`1GJBHM|FwB=jZ0bfm2@;sLaBU|fh+YzuY>-v5Dzt^x0%epZe;34<~r z#8xp4#C=z5hbmI*MC>KHRz-H+1x2k3;FYawM#qY|t0LWS=WOg5Y;6l#Ho-uY!L_~j pT6zst)Hb?`Yz%{UUJ*I32hY(MV|(X&YgHAQ<{ye>003rYz={9> literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3session.xml index 21f0c1d57..25f7536ad 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_pointer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..13183e53065f81ba771b37fe0d097eadc244b371 GIT binary patch literal 383 zcmV-_0f7D=iwFP!00000|J9VsYQr!PMfd)SeuCbX7FlEy8pyI_E5_2OHTZ?Bgyiq5 z)M=ri1P5Gb7Z#Sd8r^$FC~d)?J7{ZX>+T4#hAx3iCwPemgbg$!PQRC-z;;MyJHEky z1%L-@?KH;FoUE-~J6PM|IKnGh8)|I4b%!|i(b^+4hrBpM^n0?)f&>xWXMsCqT;C-; zC3~$jX5lzAb(-pr7q`xAVFmew+E3FDyAMU18^_~-oyRVH1?ubUFMi8McQdp7faoUP zqO9mru&(>}?7DXaskae_hhpDHdCP(B*=9McbWyJChAaJVVAp^3`sY5)_V(K^&Al$K z(>guW>4I@(w628rWuRbmpb8}s+M!}-I6l#5Sr8x - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_receive_timestamp/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_receive_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8c00b029c46e2fda68cd553e4b613b47ad6b4da2 GIT binary patch literal 393 zcmV;40e1c$iwFP!00000|J9VwYU3~v#_xWLeFTmE**^4;OKG9UlB*ccjJpEIF}4!Y zx8La|g(WP-fh=?{LKdICneR8qX#9gM8$0N=e$AVN&_&Og1A8}aZy!}`z*-hm= zEkALR3Xw6TbYACvIHiI?bWx+Q|sn0TSqQkuG=ah~(9Q1ISg}3HK1qElJPlGRP zXg?M?m2`1hRJcq-E@%Jcqg#UTj1Q;^D zMsx;9k7{db6`6IS#-NcN!1gw_QGkq%bzs9C1n+#OB3l__fW=ER9XVUK&ij_dQBO@{ n0Z>J*YFck=4y^V*x+q!_w4?`XVr&hl$XCArwZ+xGhz0-vd~Ls5 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3session.xml index a1f3bea3c..43c6288f8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_sequence_number/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b49a47c0b8e33a1e5b5011625ae41088b9d31fbf GIT binary patch literal 392 zcmV;30eAi%iwFP!00000|J9VuZtEZrh4+4nJ_0``;6)eNRISuymF;L4hI=j9jtjU- z-@dd-7mcneM@psM4FYsH%=t!89x%L4IQ9hn^n$6!sUVdDKBa~64u{Og>HE;|IG0z* ze{tppF(3dO#}tPHKu_ZgFmlfLhXG>GLjYP*-Y0+;9G1E{Ck{LDSOoAppj52sHV%r(Edb80?+96{gW6h1cH;swP$(N&RZ3`LF32&$N*(UC<|o$!J^cB%*CQ-+Eg`ZSw}9seJ%|1^@seYQ3lc literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3session.xml index 8cdcf5950..10475c5ba 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_tag/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ae7dce1b3442afe64c7a3bbebfbdab4363f8a425 GIT binary patch literal 382 zcmV-^0fGJ>iwFP!00000|J9ViP6HtjhVT0nJ_5r+Sq>h0X>8J?>6HvKL)~P%-Rx3R z-(Ix!V56o@YN8hcF)_QR}q;ONF`iv?3C#dtk_~c7}F0Sjhf0m!R zJJ0icRfj8RW{l!Rr&`Ul0z#hEmNb(CMum6qV5>w*MfAFfX@-qWg6OP?&MMCufs068 zCW=6{iQX$kDS7Zl8%fI5PU}Q - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_transmit_timestamp/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_transmit_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3a6c00ebef12f283888d8f2730c110bbf536d40b GIT binary patch literal 392 zcmV;30eAi%iwFP!00000|J9VuisLX4gztWeeFXj6I?N%LVFGg;aux0F)~>;JjHC?7 z+pn@oUfVT)3^>XYQM1v40W3%ONC$>j7&BiU&qKr0QcfZN zf`uCZf)K)GOmRGhFyOR=FmcZClS7CDj}-8b@;-&|3FDzoE{SO;-m9QMV!RoAVT1d* z@UeueQ?A0ij6=Ej=W|+=ZVN9^KQYkt{ZHVB%B?L#yzopsms_QhV9rwwRE8=oP}lrj zR=%$+`VU@rU7re0K9AhhV5hEYU!d$m;^m>@tGV7okvsMJJjU{=kkvh8`JE|mzQG-- z`?osg|Nb|9z5AQ8DG!~1#zqTD*$Bwaqc}$_QFwACZYL8Wp9M m=S;dm5Sc~+X6CO+zndUe58T6Tq1^@ta5W(vJ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3session.xml index a313529a7..c51ed098b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_unused_24/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2be43203b33436e8259c2e762a8a935388e5f9f1 GIT binary patch literal 384 zcmV-`0e}7}-A3JPo2X(i{p~fzuO9y-%M#5)oBAp(mrJ%M?M~Ls( zQ-SCa08Z-=ngc-X+8&^#81an&LQRbaHx6+(0PL|D^I<=b-?B{>Bpk?H3~t!CU6<&P z;OrE$F!oKIPX2M~)^V}MCFT;fKkq*qzAN0^K%RQ)Jay?3Y3#;G9)$Xmk#A<^`v%ih z#E0_Yj{|l#*k0}~G3{WW{;uFZ;k;(Sx8nJ6X!%3gifgv~AHrSz-47v8Yj$_P{olDg z>s4B%yXIXeqlJ{78C8kEy+f^yHr~ooanu2y_=_$|&;4SdEZQIy3l#=g8BtneDn$-W z7O{CE6^yV>Fc&Jz?1EWT!brh5X9|&Q7Ky?sM - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_unused_32/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__get_unused_32/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..09885c7babe3952becec0cb6fadfb8801157270e GIT binary patch literal 389 zcmV;00eb!)iwFP!00000|J9ViZsQ;jhVOogJ_3Ws1`a*sQZ-VKt6b4A3|mW%V;Ni} zZ@*5H95z~Y6DccgF9^`j&-~vA%9`R~pl!##8$M|2Xeh*GPd}zv=!N<$r|EI1WIL9F z&+jx!MHI<rL=Vf!8ByQB(A}BNoUktvm z;oVSVU;NoAFTy!wP0zGk(Z%!nv*5eJ-5My$C_|K?Tq4cGoF)2N|CSNn zZp`-wOji*f$_pL`>};^n=d;gLc7BrauHb*edCdYg`sHzG;h}8xHCyDNC!`fH*Ub~WHdO@8jAT+9jjJ`;#4G_> zF{)r)T14tLkqKNo2L`P$6IyCff#YBr=ZuxOh;${CFexz{T8BEhD5-S@Lk%qh!?C8i jGHfHVZE6ckc%5Rv(4vjdB5KV?C#-$}2*-12Xa)cPdTzRf literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3session.xml index b07fbc76f..1531fa554 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3session.xml @@ -3,183 +3,168 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e759444d88d973e5b39733b883de0d96a7923a47 GIT binary patch literal 1962 zcmV;b2UYkViwFP!00000|Ls~$ZyPxhz4x!!+X6cnfW>bD;{|*%HbAhag|3a_SJGHn z_DJm@*bK^kd=mgaH?>B|D!Uic1SU%r6y8^*V)!@hQ#B$2BUoh<015BJ?Y^9TtDXf8g&k6Cl`NFQ3LsCS#d>#Qvr&?6kh?$vUR5 zGxHZ@5hl{ekJ!Uh(0?xIj{v!kn7idYLY0SKQ2dpNH^Ibr((MC8mGZNud|-D* ztX8Jao9V)_0pqN8V02~stl7T6>zhdAh1%HfgKC1hZpzP_>Hg!^c@m!ieCYZ@I93!1#^JDhj_+c{o)xTBa*5zzSdVa4{5MHjAb+x9xG zR`@9mIrZsl-wt(C9N9+~aHx;_A}-OeM=$(PFa9p)wA=)=F4W`wZGzjhTJiW9SL?5z z1M}(8=!VykF1XrLDELoP3jV94;xBZBJRAs3?3&$Loq;YTfMuF_NBaa7KyS6~DuZ8~#33 zt~LrYQCBvCQd)f2EKqBvdEAVvP5WQqkW0IuyLJjFK? zm2py?oIoTVS4VgC;kal9FZO=9G3!MD^z-{gFng~8psN~IHLPklqK2o`04}ah)@Pg_ zqbH9c!5}Dnvwwvj{L|epXl5`%-aFxy~oqI^3OYC(j(VS|lyT)FfheAw#%3+Ua z#!-nlu|iaVr~>h%-;Nf6oocHRP$i&Bz`K!vhq`zQ{nSqSuHw!^PbNS8v(sC5R8FSS z@tmF%FaVQs{PG zSef)*LF1y;3<4J>Yb{(3JUW!ZVpdUmp8f{^5~_)cXF!=*R!S$(=#*tfp~vhjMnzVv z@rFFO3#I14Oj>%I2I@_^hFBi_W2K^T=l$(&Nml36A-7^bzv6kM5aKTlRBle6R& zjS0buAQfaKobfpbftHM9V?jvf0;R;Qh#{tEJRqmoqa?S2jMRRf_JSY_a8YJQO9x#D zt&IlfrDjQKtum02ZkYBiu;4_pUMCSeP`WX5Pf2DLH5r-xJpJV9nBvBJ0oHlV8JEub z=)7fGz-W5_PBWGGM$(fU6%u|t&H45o;$TESGlG+DL82~iWM$9sXVk?+b3`Dd7y!04cz!Ey} zJ$*R_UdKcUIIbgbCKMH`HQ6~&*SuJXCNfX`8$2<>y!R*+5+h6ySUEX1L@yi4NFbGL z2-1L-A<4{>kC}=Xr4zYWsm3@KY!r;Xi$>~*Iy!@tP%@g6hhjy==S7k#sfdJFf~Z8M zy9n1D4E2a9R;B?i6xECd%85!R2^Va_kPY)z8&#kODjFs&cbZrcBC8Z=)<7gF>Nz9@ z7;fMQk?`OZIVH#gvmLAF6AV2 z0Od>NaNT&yozzS-6rM{aJ#&_4joH%-ltr;Jds-<+ts-f=>oO%3P*VM&4uUx?MD(#( z*~ZyqsKSVJNimZf6wWD=skkMzOX)LC4Dn3mL_J9Pb8mRc45`2*`K79N!)n5sxwAXE-NS w<^&q`F+~bOmmU(LLE5>CV1$jHA(f;C?u3)Vqbv(SK~>1+|5JBakKI}T09%a7$^ZZW literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3session.xml index b05e1f9fd..1d3a67e4c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3session.xml @@ -3,200 +3,185 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4e489b8889698992050d4a551b2cad75a134e100 GIT binary patch literal 2568 zcmV+j3itINiwFP!00000|LvU1ZsR%RqkEoyin8O_X~pp+mrlZsBU2PvtorLCDNE@t++@-&CRf+rQ>4Rry7~Lnf5$Lp z7cTysxvMrz+SzwEZ{4hOQ@7~cf9BtkJ9pDXS{{~Wdm-Pl zdUe4smz|B(n4g!wa*XHaO}e`2eohu&-A!uTJcY@`mElk3dHQ4Z>A$tpuANP~pEqeS znfRX_{kiGplgZ6>JL}SX^4(3pCHgwwbX{*eb=0nmm|b_?`RnWHB>i=-7JZ$4n@(@r z`QTGzl4x~cO9R(tLwNlbs66(>?-UxEbMMiK|YHf z_noBg1o>Qggm)mwz1IN0`I_N*b}2o#dm0nRM@Ms;Cjz*KlaxOD$37Fw{8>Ozh~KmD6{f;V(_!zS2r_H+wwy1mdqrAo1!1I@W?ppcf$! z9EG4k9+=%c&_g^>kMTg?=Ya~Fnp}4el}D9Fl}9hdqagsG*qMOH$B1KuF|wgdw7(#! zOC=yBN|%@ObV=VQG3ALsg#;VQ_l-P7zU6@P%~M;!*-B0m$zYP&`OL+#=wx4Fe2>MQJFQyEhk^ZPQUhrnq!xhexH11baFIs=X!WzGJY{WbgFaQ63yJp$NqZmtBV z1gHdf^91NF9{s(tCUQ;Wn#jL-B0t9s!^S=MA5v)DAp0)QFWT;eRmA9&O~~l%`MG@MzUF()_nPk?A>WV6&gKpg|E5E}ZXWe+#rKaZquMR}eRY3cN%eH3 zf>TgcNmWVpV0Num6qO8>43!L(3|nNl8zcdO(!Vs#w=#9Fw|Q^xTdW_9-hNJci358~ zvs;f_54CDed-Zs*&8I-+-n)m&%DUfsHC8VF?Zy*4?MU?C^8Dn+mJfJSTVm5;$0@or z!_QAdWZ%jX*aghfHjX(2a$o=I$GuWHSSkif`Cusymcn2u8!EL!g=VNw4;2oMYj9YD zqZ%C4@R-(x?z?NJ&QBAm)P=M>`H6IYTGUR}PXABdRuBGD+N{cpam!Z#&Rjp1$&9Yr z9?+3?-`QCn@W_;Zgy!n)`n}WSI1eGP8{9T<)#UD9T}A^x%)-uJW=Gv<<8h8tP2GN;<3vwB%L5(td5)KPo}+1^ z1VU66CIx|-TT1|P8kN*K*o^US@K0_V#*~bP*(8m$I(QzD`J@~MrgRLNYO%&eOEr`L zE@L(+ijX;oBpD!AA^}yxMoH=lqqZhFo>j6cL1c+~&m!l*OMm;dq`BtaGvv}LqcI3; zjERf|rj1Z&sFG-$6+$QOL-JhvAVJD3bk5cp1x9D8B%iP)1)58*Mb_3c4ahV~&{=tF zXyTBHDyfEPYhBVHNpK82%bEuUkuw8cI_{~Ge!`XIJb0Upaxz&u@*z9#5}4v~ z(@5cTV4gEb#v5yy;xTD%n2yOus8aV_X`hAo!TGm!%f&+15wsk@AF6&L?4_ z5`j?=I8%lc;ze@Ngi?z)$#Bn!d0Og#PB4psA|5DDo!1<U)xIk)o(7YK2K#Oe_X! ziA5f`%C6)*$UWQ2!7v%M_s$xrh!fsgsa4WST9<9f9Z(H$B_SlI&<7G7)uCf8t&Q5* ztP4LtHw>kX7AWm?wjm`aIE_@Z{+GJKauq?)0+Cpe(ot8Zc8$ly_ zVpfoWxa4VSkdB~KYGFe&w<)uQSIm=>h*ykSQ69bHDkV{B5!!@{nsLh$^$}=UrnLz= zM;fG4Jf~7iG$0}+ok9x`Vv`C7T%L0 zAR!Htz|FN}Bn=17C$6#g7x|uM39SP0T3QMwsYfy%j8DKLA*0yEdrmma(LfR?jCDF` zQ(%&VB_OAwXbyYUVv-VuVnibIlo$a#mZ`=2tP~fjc$Fi0H92Gy0Fu0yXhJ60lXkM@ zjD%9G=e#kV3r`1yxo#^*z#j zpc1i|F4Ckwn=_`Il_j?cNK#;#G`MOkP(ss`Ncv)iQ8$SuA?>)4NZ@C^UAoapP_~c~ en9!cN5b3K0t2m>pJS#Nerujd_)VX<&g#ZAYviZ^g literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3session.xml index fc85652f0..a19a3c82b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3session.xml @@ -3,238 +3,184 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - - + + - + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b661a4a766c877c6384e7ea45b5096e9af0e905d GIT binary patch literal 3163 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3session.xml index 2e86adfef..14ab180da 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3session.xml @@ -3,2755 +3,212 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - + - + - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - + - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialize_data_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e4cfc4a9eb2a1333b2ee14675a09125a0482b2f5 GIT binary patch literal 3822 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3session.xml index 20777babd..4b5705af2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3session.xml @@ -7,90 +7,82 @@ - + - + - - - - - - + + - - + + - - - - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a88f1ddfbeac982f98f2152ce79e9d626163fd67 GIT binary patch literal 1543 zcmV+i2Kf0OiwFP!00000|LvSjZ`(K!hVS|ndtVgb@SBGod}y%+itT0Lt1$d(1vnqI z-J<>XJCqa0apW}V#@Mmj91P1Gk6z8Zd_qM;*6;8&uCMxKxyEHleUBOY+t+1XeCzum zU0nD5MOm%zW9j>Jb-6Cz)_0#QaJ8oB)%9Xn_jM?Xyu!5pHix%&x#79V>#*F(nuk?d zZn6r>n!jJ-#gO{p@+&R}yj-^t{Ac;4;9Fd*%I0l*>B`0R`g_0ngx94bHD7Tt0Kf*Poh{JgkSS%elUZoNW_aFH0_oL|-kpqo21a#*82SrenZY zbCKZvaHH$)^eu$GxD7e;Hc&B=PokAs4|_ki*PXvyTztnrpDA^`(ms7zQZM?+B77|C z=U(eH6!=wDyNQHd`J8900OB)_oJapi@EIs8jzHblkC_lH`t!CQ(lR zwdx=?tj+IV8nKq-vDHD{G!~Zxx5Q*5QoSO@I-XC6fePU?rhLW@i(X1 zm{aYUQyw;_y7#wpzSm~>quHD>nk_#xa|eb=np?@HB#w^NdyZ9y9jmv)yvuL-^V*&< zuN^;La|eb^hFi&|B#w?XdydtI9c#A3yvy(S^V*#;uRT9ra|eb?mRrfDB#w@?dyX}S z9c#D4yvy(T^V**=uLD0`a|eb`j$6s5B#w@Cdych-9qYEkyvrZ>^E#X{uR-twHg{r# zO5$i)zh_x@*s^{*%)9(#S@y&pHJ&T70r)YSJ2S`-fm_WcHIAkYd#3e=O&hku z%o_mwsXb~uTWm{y*k(@+NHi>VDNW&?oO^KE!!2Y}d)GjD=C0d&iAMz=a5y4fQ@ zCSdoNd0ONK0sEVP;IUmma2LS54eAs~tj?Uo`bZ>Z4*_Z{yGO^4K`{}f=~gkOaN>>F`B5_A@% z&VX2Bf#A^Fs+^_8mCMD%V9FoxmlR!&sAE+^IYUaS&=y@5K}4^j0i`HPbgqc3YK=nI zkd;CKR(k1Nk;&)~d`s1p>IFs_0%#Mo^ciK2ReA$PRI3aHsm?%_8Zp;`&e)Kwi0GW4 zkBtu|w$tfOMfB0dkPO90ABu=ET5wT?kkKIpnaMhJ%ylNh6P2cTupF}Y$xs3`?OABf;|j3JmBTa@XFZU1U5DIcg5 z7KF1R)5=>LuaVB)ss*+q#M8-?st%NKIu}7E^sbgtsY9W42V7^gK;xX2;F~z|rcPQ> tUsG|}!aE - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..99508a894d4ab6c5be5943a651031986d5017667 GIT binary patch literal 291 zcmV+;0o?u{iwFP!00000|J9MbZo@DPgm*thA3?HyJ!HsIG(ga)$V!|fsxe?Yj;$2Q z+t+E3plh~vAqe6l?+z?m#B$ysT?X`Rq;~ki)M6;tF+Qdf;}zY^xAs~p?#FVWd5@7R ztgy#S;gmB^kChEpJ9+Eg7a|-E9q|zpMO*HS94SbFViWS3mDet|@#>V}O~QCJBZ8sS}Nv=>JD pY#hh1Ky{^zu5+lR^HIVlCnAiFut`{0ZLvVA`UZFeyhSVn003hAiLL+u literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3session.xml index 03a505123..8b97b2edd 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3session.xml @@ -3,290 +3,279 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__path_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a4747eb75e2625bc7a714c93c2b32b31a0856252 GIT binary patch literal 4367 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�gB7tkP1r3rj$7wx=IctEoxI|%0XmeM42(|0waNB6sOlxL$NW*ngZNpxXD?(B~Tfh z43&iAHR{1T07eUzKpa3-dLE@Tz+gZ*pzP`@Gr*M;4YDp6AxIdB6vssrWfHPPSFZ{? zxMV7UQ2kMHL+PQ(5w=b0bdp#xTyueMuAu(h#OaBULtJ9NaaMUJjND$znxzUT46~@ls=15JKeKSZPuX zEHdYVjOa^>XP(Fc{eWd6GS-crka`G(!z(WFQiOv!0eQ@Vw*{OiE>)UH0~X@C5lKSz zE2~`r&Ja!|L5?g{s;lfEgmT=0xX#H8(4k?VoD}LE25M8|DBa*eKdUPfz;Tbb1jW%I zP<{@v7u8>i4G|PV6(KQe9a)85##_@M27yCJ%*NIRWZVvT929yjsnJyBFG>I1NSVUAXz~tl8mF>*HwJr z3Ty%0fVIjb@<~`{kQpdJ*io6IG2oy*fvvSZFdxa3F#~zoZ$ zVcJ2}k^)zmk4z`e>osbLu`4O8oCo>-X7rBi24oxI6 z3{8Tmm@EN9brpEeA`pX;M=xba4E&9*fj89()7cnpZO~yrE8{bM&ghcxHo%uOBA{mi z-=p>5y{~nQ0g4*KLfQ=iX#zwiH0=U*!ZhzuNTn#eEpoGtRcw%| zb_1gXhfk0;NQPWgag{}AeBdGujY3G8G=`M8VMi zY9}?!Xp{@4FwA@7DluRTDvB`Mmt?_H^kxiRj7q|!1H#mdHgW*=;AW(%le*FdwT_EtIR?y8!qkq41a@dp8VxrF(9r{*5oE2a zFy}Cg(h?VCc=Zy7WL%8MNE(Tx%A@smK(F+{z=4>mFc5)=0+R=F5|g!6akSnI{|D;t J-5J6^0RX4Fa`ylL literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__present/why3session.xml index 933ffd19a..7b30ef89c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__present/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__present/why3session.xml @@ -7,25 +7,17 @@ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..33fedb96f958b47aee62f9f3e814a7032f853cfd GIT binary patch literal 371 zcmV-(0gV11iwFP!00000|Lv5)N&_(vhVT0nK0=aBHrYcDy%dFl7ujo=&CF_Gw_TI8 zv~O=(+k#S1(FzqW!w`P{`6u~En!_U{2;{5<1beKZ>o?YVH;mQ}6k}Fd>z0c|o0OYX zh|3VOFpj-Xw)50u1eZ3@^>_!kUBKX-^@}wG4~w)rhKH~sm_Z-uwcV97TE6!=CoX6h z)7Hi(7^#2{zjqT{PXbUqxBxCjs5d9EF;@0@ufnsW9_=<*A(`=h@9 z@Ln0b(<}J2{{s2bbXDvZQVB!4G#WLQvO;B?ZK+ijA=akWl0hpf z6m4#5WZF=hMXX?Twn15Pp*Ujp00448uPgun literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset/why3session.xml index 6d2bbe958..105ebfc8d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset/why3session.xml @@ -3,96 +3,73 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..51de2c57b9dcddf7a37e61dfa8238d30ca4405f9 GIT binary patch literal 1184 zcmV;R1Yi3fiwFP!00000|Lt1KZtFG>-Rmp5>!Jw2;hT#tyfGT!E(>ji;VW0Dow%}c zanr9aB`2wqu)emXyjpH#XFNQb8O}MRsPvcU@2+v(x~9GUhFy!-JvL1jHb1ZbsG%nK zdv_afiK}hceH|{B_-oB-SPq}GCd*|N)|>vW*?z@MsQP5a{$>EdF1V&apCIqAU0i){ zn%1p1O|uT$EnbDDaW~g}_}({-y^S$+O>DbupYE=flc82PBFQ}@I2Gz49I*#NPX)OT zgpU|saeE)&%VN(oBabMXF8J1AA8H_99+A?Q?Pk^Xjc>QE+YZ>~(H7gV@}o_ozg@5I zc30Sa(0{5>8%OsmTWbeuN|g>Yz`0nN4q$V10H3=9;HVaWi9Ns$_5jdK69D|63xGar z0{};smoIM*r3Xt7*1*5)DcZ{!KQ*Zb%a|NFZ;H~mJ`4`SsH>|kT&2GoA7aC)A&EAr zbMp)WCNMFolqoTUQUHB}#G zQw{1&N+h8qQ2Xj1$!8qMT1OEpaNS})!dt(u#&s2~-SHY8& z;(!XCi#1Gm)$cb`4Q8ZB?uqJMv>;D_B3mDu=|#3am2Ay;_)7U~r>~UF!5&JdY!@Fw z*%5izd97MsQ{q658?41MtH@e;*2=P0nzcgKN^(|{GwPgC<&4?9vT0?r$|jZ1>CuSa zuw9{Dh19O-!tTdk@M7AeO>7(oLul(8k0X2T%|mET?|vIIX|B_tr|Fy-^%FTu3-HC{ z1pXWg-u7(@^sg`!eT*@)-dF$n@B!xWL85F5%BG-f3jUj$f@-Gqe-02<#AdSCKvr!| zUXzO2e2ipXUu`A}z>`ha6pTXuLjOYlH{WcWF96e){<7x3F6j&B3+In|z&Kw3CN2GC z%`fK*h5qkP|K<1yuy9k|$X)sbrDm2FA zM2~Z#iknEHrO1r6nrNXo)j>G~D+v$DiB-W89f;LBO0PV%ToaM3qM{HP literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3session.xml new file mode 100644 index 000000000..d3b954ec6 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3session.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1493b3154e1dc5ce99f0791d474fb46c8d1a6f03 GIT binary patch literal 1821 zcmV+&2jci2iwFP!00000|Lt5!Z`;TczVlbS+Z=)bUA;FjKKLTM0fIR_=t@*?8DeBv zp=cw1zkZ68tXK|ZTcWZk(=ec=y1Kg7kHu!of8tfJf&GE;VTm_QsGH?Iwhb;jT;RIH z|Fw4sXSi6W&By*_gc&e5?c3Qo)^(d!zuo*jhdDbi>uN6MFzes>oXuucx>Tm_(Hfa|aIC8jYQKlFMu%a}gT)pv*p92F9N zTu8)8A?ZK5odfM*2fEiBXiIc|zUcl*2K(FFMV&sKW-+Z**UP)bqF&uLG|~=BeIl`c z;d;ySwQ41+e(9_lxz@B?_=EEShVgUx31IYc*K+=X3TzlZTN(iy4_3?BVI|x!{6z;i zR*9_x+}PS2TX2Whw!`q3wfV7YKU!|boe%c#+GZF&SNP2V1ZwA4DaaKDpnrK&B(0I2U97vBKw}GF@3Rb(2t=bfu zfL)q{{IJ6x`mkOtny!w`I<)Hnk;IOeo3w}+ z=;y$o!qaltEe{2l3NRI5`fk89h5#I1s=#TNbZPrEi|@Cc9~?lrCnyVFI~hiC7G4Ef{v2t=L8Rq- zNIR~>2-d=@V9TGQtvDOn9$o0)0Bujz;U~U%9d;rybTl8kt{tYWyB3>eiqCd03Q81| zC@AqOqeRv3HL?>ss)8d0M+%NyHjeZFKxuYTgHh_g)PJe}%dY>c?W5~b$EA)-9ba%A zpX+{r#@F@D?R|>7!1q-phEoY6!9I4CN6O%D_9VHU$k|93Uj1FO=$d8SJ*?829QDxA z+p32tQuFC)nK|bhe;g}kJHNii#a-&99BELvYuC5!dd_AaPDPkMnr=cHc0J`D?z+3~ z3jF`<@Xvn?{BI5|e#5FSMSr11Khg`7s{ci*ey{1{{aNx|Bf!<1%K;PAPnZCklaum0 z=fSLWMg=7Qg`H7#u9M;fDuSKqaAprsZZ_d2Xr~glQ;uEjlo<}eV}B2~XyTmf0GqS! z*UzYGlqyH5VwB29sW3`qV^lXrv|~gwMjW+k)T~jfMvWS`X-C9+Y!>JjiIN&a+6=y< zOYF3$P0gMDT<_y~V5+i5x_N(GZH6qC-p$1@oO_Petw zLJ9;F2q+M6Nf5AW03Ls$Udp$WZz8vFf?j4U@>6|43SKj^y{>x>Rb7lxq z2c|sJ0;Lts>L6HR-029!#oopg1S0976pxHYm%J4jgES~0Dpa9guVTQxbU|q@1yhW1 z7I*^hQnD<|sEJ8bDv_4aqERe!#cYJElgk_dYzAkDNmj-?Fpl)Foco+Z7G800Icm>P z%brQSjVaNP@YaF%(io1)d1W!^;Jq+Wd1BI}lT$g$?6S5Ydn7SgA#+BUWTKPAWGbUf zvqmLMb#niCVSH*z`9QrT#^(FP1lPFfoTMaKyr!1vJusI&^2bW#?wx6EsBHYNsH zF(4xbF95HI7=n|*8K3RdYPLuMfxuCt3w)9Q-MO`JUH z_27FBm82k31QVm{IU}bgfuP8D6nNR^S - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - + - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3d0ef1a9ea8f218aaded5e39df21656f4f511d73 GIT binary patch literal 54767 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

A_Z^(kq5AjdcaE|2rK|Z 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 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - + - + - - + + - + - + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_checksum/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_checksum/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9bd65433c5cbb0b05704478000748f9ebdc4d7c1 GIT binary patch literal 9101 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 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_destination_unreachable/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_destination_unreachable/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..efce2ced9c3fa4d8ae674f4d4309ea46ad396a40 GIT binary patch literal 5441 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3session.xml index 6c0057d43..e35c572d4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3session.xml @@ -3,374 +3,331 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_redirect/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..21de1d50478edca7f7e011f1ff568463c01f830d GIT binary patch literal 5484 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 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_time_exceeded/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_time_exceeded/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1ebf7021230fc74aae8eee2ad55e7745cfbad280 GIT binary patch literal 5538 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3session.xml index 4e414d21a..dbc8016dc 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3session.xml @@ -3,398 +3,341 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - - - - - + + - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - + - + - + - + - + - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_code_zero/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ca243d7e2887b664476c375990f2f477efa9bd9a GIT binary patch literal 5586 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 - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + + + + - + - - + + - + + + + + + + - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0b4b9ba3883a79737b80f111ecbfa8d1a5a5ce12 GIT binary patch literal 5370 zcmW;N1zQu00tH}VbhmU!$LMYt-9u2i8%7IAm*nV@97wky6DBPk!oW{TIwYhK&=D8! zdH=$B&S6f$Mf-mqk4q*YE86h4Kf{tmWn-a4-|jIyC1Fg@xRf$<=?d`!9oRlP$YymT z4{8)6GqZHHa+-=9w3-Ro-tkj6m^M9HG>ox{qjt7hLT?-x)VEQ6tB$`;T!4so{*Q%n z96?7X)phrUk4HSZtFB^N>5r)GbyXR5i!=o71#8cAnWrYiyWwiv_u513{)EX`9CbCk zD)o5gBdM*p${vrzC3+_CQ1&h8krq0#IlAq7^<1y!#DWew_~oAe-bI4$PYpt!qBuwl z5sCOrFRzgL!DX)anoFOn(A&m0Mo3j0B2gr!VcDXAfd1 zXBdCDEFUmRRy%qCOdFgBlnNgr@X`tt)}St4NtVIzQy9EMzo;3&iz&VRJ;{qR*X4(6 z?|0Xcp$eu@}Z@hU-ev65$gjD@?XV^;SE=Dv8^6bx1&(iuJe-1AiQv2 zR*<#QH(B{q-eUg6aHeq z?ER5||JC(|Ga`~nQy7cKWj6|o=hPFf>WuB*(8wol9K)3InZY5i^e9C1Hr-&Jf4tg$)Tz4A*rZ?#BW-B_eql%Ry27J7C5fFGXI<~z6gDsI!} z2gnM}=<{1ymRfBOnWju!dWqS1U*Q7{dSM%a&m3J91gorBTIm7Y?~MB)@6nDUl`2!v zWfwaY4TTJa&VbLxJkCrum7erVi~p7Mhuyf%Rb5SrmFrUA(|oN!dQZl4;J#(^G`_#v z7#2O?L*+-#I*o1z({UPm`jG^#y~BdL=XAGNDI@O`PoH@x2BTP)NtPmNuT?)WSKqf@ zei^^>wlClebtek78B(Qubq&bt~~ecy%;D zk$w|oV3xjae0y_spnd!djtC8~Iu3tibt=f%- zlV`;o`^q9lsB#A$&h2DPqWFoAzOv_9<+{rrzFbW8DWnF*y2k0w05`9ufpMkNU4iUW zOGP{zRUMAzZl+Ucyd>JZUaL4+!0xS?&SeHTrY{m-(jq^3o1e;x?f>1r_;{LmGnlw# z6i>!%3u?eT2^7PG=K>H*ijRngZ=s6ee{1#v5*7j}gG=5imV9WS2`;fkzdwvGR7w0N zU7a-L+$dH?iWHWS?H`*a`G0qBlNC?R)OiVWcE)B z97t`kYsv^0^V6KJIp=SfBR+TtvM8&I`ZC?VSN1rWfisj_0$A2w^f!B5WIkRw29}owgC>amtyf5olo$y$TV?6wxe`Gp7 zipH`{{nJjq*HuNuRj4?-9cQg%@+8m{w#*Zo(K9%;p7x!?>qyX&=ZQ2yb1}DxtvBz1 zO65P2oZyHO2c*xFvt9Sw#YTH5I!g9(0BE^r{KTL0*La`&4uXbqwXc-vl-#!@=}Xvr zjmv_kHUHADiS=eY_JDz8s+_4$3SV|o&E^iG7w2MMlM?9T>+jKELw=Oa_?@`l%`g#P zZC13FKiTA6I$LPQy#+rreBu*NSP=fTr86iy3AJ18>N1hr5!uW|D5%R}U1Xgaq&|KA zXTtWzZAPM=sQC~>d((V#*|b?)@j=9KdSz?$M)f(2Dwe-93Sj)L||F72

c)>_xyhIO6nloY69zQr^gpeUWJjJ zZwv0o@_s-Ad@VrpMvsc9w^UX?hu{s5s`YbFz_I~jqUuUo7~14MBY@5`cBMRa7&|%# z-fe-F(vAMsVB|^)#$=A|c*21Bh|sGNRYHYZllb+4Y(Ilf{X0;*xe}ViF8FcHS9Rfa zZhV=4n#mYv2r}A#KGw4Xer<$G@+?ZrNb1QLN;B-b|nE_AfZ{M&>q1 zj|eCHa;&#Nn0o;RWOwI}{1P%2VtA>I;G>eBgvRJllXrt+Rt&JJy)leG;2D3=klhTufG>N7eU)VjBf7B8>cJxwdR+fDm0cz5`c?2_N}7^m#I?#(&M zD4fbDXlTaFm-+>BSl1%P`iVdDh8wyY`ax(+PBS^U$!n6^BVJA@7^N)W^mcsqs}`r@H|%x{p- zAl~!_A}Q-WLsCsx2@3VLL_m4}z)rQT#U( zwyXxU{KQd1^;k8cI}$nsBj;keX>b_+-H|jr*=hY0)imXNbH{TTJATdPPtw#xg9x2( zV@7l0^AO1iV8B{#w0?HH$Ti zLPwZm6=Vpa>n83R>bYcdMR{(Ws2?+u4Sb#|mcR4AJC3!C4L)fMnx|Y`NMDWoJAe|* zmsWj`H|M%_bd(jcHWE>j%6pSepOBq?THL3z_*13O0oLR$^Kcrbs;u&4@HeYn_yz0} z7uv-A!9zi8`Lx$xBV?qLwdd!>Ii@v7>3Fe!`trq045Eia2#A4;jQGR~uOEX(lu_zV zn)j`;NqmwX(nnOE*VwL4K6uD5GfY2wBjwl|AzdJ%0i^Ggl3eMZ(h%*(c4=Nha|!VP z^N(yynX5%y!yKSu1gVWI!KX*x;|KWgfBXjDbMX3bVV9Mln+l3HLa)GRPREN&O?Evp z6xWLK!!IRwIUd9EpV~cPU~t}3TDrx2d{Ea1`P(eoO-ew3|1ZsWShQ$@JB1}-J`@Du zf7b0?bwrGC!MJ|tfI8>0UP?w9#Ms99)Zp#WRqP!42DT-NKaHvGEe#pO!G z-fiVR6Ol5n9hII6!C{jstCe&*HB$5W_VRzMykCr2z|zNoO%4vz$(k-Dc*|`vW>nla z66E&J%FWwg;`mF+p+GeO_oBodqtP8CB@JQhbf*WMzSeH`Tt^I9oup7r4v!QBnULXl zOfgyIIxGapeDjik&Vw+^SDjvIRQBt)eI#wha_y=th?x5z;hsp^5kF+)K^cFe)%6xk(uk@eYXU zU_YEnOGR({9t`my57`iEX!mJ~vfHLs{o3v!jQ`R(PwOMge{AU-3)W+eI?;1+dq5FW z+JJnmI7uu67`iD(M*YGBoj`%t*D+u9J?YIM|9u=LA{z=hWwQxV70=hooV*%Vq^^aP zwE!=dKwNQ(HI2;}eKR{<(`4;iiTH#;9Ajwt7bUtxBNc&YM}J`xVL@A=q;|7t-&DDZ zzIx()uwlnEa6m}uZ50ckL&cX9%b%RCsS8P0k;gNc`%YWuClS=Ju~NGlTkq_pM@d!b zdG&92*0`$_zFnr&Sn2_tI~5^Uo{?*|jxX44a6_my0hHoV-oEqRzKd4ER?eTtJjBgT zJ1SaKteIMueS{4o@!PWu8ChbNT#*WAI+0PWq|DYTp^o!fI&0b@-<@th-9lWF_HjR~ z7aX^KuP^9S43k|x{Ul9Loyp3`Q6?;A*Wrg{vZ%SsebD>tNY%7!t|s)BONa=6W0nq2 zg?DjCobW~N%TjV&Yhx!WhPD3j7Xg+W5Z6`Bq9gnbjPG3^c-%8t^so+MBU>HNgbES5 zRi2gnRsFsyTMkW8%wthx%}_@o?5?J6On8*_7F0M>hX});IEa#Z&l`fx zB#hJaovzV8O(>uZk1xh_U;qI0$pGY#A%kPR&&=7N=+FFlOttLzcg8y!%hj;wW!!w) zDpQ{;nE|m@2!vRryzq2l2CXpemWu!=*0-&V=B&Kv7)E+#l}hM!CTQ4|CQMCW7PS(c zac%lcG;2oIkY^$UshfA2{ISYn?uRNM++{3ti~QL~+*h0*$3Zm()X1U{as->T7Ed=m z+Q&Ffsj*~gHBtfWmo8oem_N8maD6H^MB-duQ8ZI00gBigGj*1dg{uQk$}VBA1afkf z=r=q!`V3#BIai9%x$l}Kt9<*al{Vl|$_;w!=rs1g;kH{L-my@swt*d^9=D~SqOa~l z=nSt1872aa-YRc)k0e$u%Mx9wlM8WHK+C$d@h&n93&hp^Xma{nQ3W5>I%}ZrRkem) z&Z&QG?Pizl*fEv6sdBgjjCPQDZ5Y}c6Ip;;VwFa$U{WJYqv$_z0~1v*a@k}6H=FFQ zCfdo#Oq412Sj>6aG<2*&^w=ia3G>D`L0~Bo!>G&_J?J;IyYen8{O$x| zBi_IKB1{`~WZUWeY0x!sQ^ zn^9+=SNfYaW*+#tSY?s%NU;YGG^1DtsqHg6!D10(?GLbcU@Z=ZAhvmlaz~ zzAI)Zd@8ytrp~Q}Lx5%mqCLa=IHsqx^}-?1YhJ@xST7(uV}LqNg9NWX8%duOK&gw~?NcrHEhTxTHI$2JpB%1J*g^UnA=)@`CE4@dI3TEzQIsF750rf}%Ta+3@4 zYz$kGEWk`m83yE;8v6=$m+HxTJF41f$C&}O%u=2PstMl~p1_Ogfg1+J1=irR3(+4dkST)YV`M_jZ8zI+);&& - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3session.xml index d5c778b1c..762d2f8eb 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3session.xml index 8a815190b..a6b7b3551 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3session.xml @@ -3,279 +3,240 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_data_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..029bfaad48adbd56ab172e2d6144da77481e8c29 GIT binary patch literal 4327 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 V%mkbX_LNel`5$YfC1{Ki0RU*JSdIVy literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3session.xml index 97635f9ed..001253414 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3session.xml @@ -3,1183 +3,1201 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - + + - - + + - - - - - - - + - - + + - - - - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7cac21fb321517210d1658dcfeb7dac4059ac357 GIT binary patch literal 20894 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3session.xml index 2d95d261f..c377e5693 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3session.xml index 51535c3cf..54363877a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3session.xml index 5b889e038..75a9e4d74 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__10/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__10/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5042681041dc03aa49d32738bfc5c73d924cf696 GIT binary patch literal 573 zcmV-D0>b?tiwFP!00000|Ls>zYa1~Tz3;E+y%a`YBMF?t_F!r#IhDOGBaM_SIJQ|U z4(_k7)~2PUZb;ftn%b8^Xy0g_-kX(n%Yt~nqPrpX!)iz4K&wLQoaxhepJ-0YZ8{F8 zuo%99H{*Jf#s^KscHM^&AqzJhzr`$ zvhPoFpEv1lQ}+G#mNu!mrmN^8Ea>V)wNB1|dN9@O#Qc2JDi>`Y(`H6I?C2f6rBbsF z8;wdv5gjel>ZaU2srLCu_5|*oIN`)1uQ zr-j}RH%HhIp+c5@*u_Kns$tcSW>e_P!@A$BAJW)whtFwon7#P?Dts=B>x*5l$F3I_ z>|*tQZgo49KRC<3o(=79Uf%6rZ?yKsKAzjsKK>hLe!)Y}+cWCZMj&#?(O~c?=Zqwf zTtGpFg9a_%hz|l9=e6)ghG4*I%U%WPw2j85=mH>B6f|sfMhHnc4oXq*-Y}vgA%)e^ zPaxUohz?M&X2~+t6j0JL1nq=T=yL_BMy1GXtaXX4A?I16s*A^jStTW11?h&hlIT1L z1*$SO2pUB+K3A%e-2^gCPGDJB$w`=C0l>(_D3bwcv_w@w*r2alKtnMnon4+lIXR8C zR+J%6E7_(pM6h0IpPc}-(j_kwaJCMB4OEb8qPKMxlXFs$lk5Z4*DePTfrZPH1itwK LfjkLfRuKRIQ1ls@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3session.xml index 18bc05dbe..dd4176350 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__11/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__12/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__12/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c3d7cb4fd08aebf2440237b08904b09556731abb GIT binary patch literal 573 zcmV-D0>b?tiwFP!00000|Ls>zi`y^|z57@6UJ4^=^aa_2dk77bJr!TgXe8|#vPp2X zS<+u$IiaPc>9X4{rQ75(2x3o#kHC?e|SkTo8wocA}+L$;yF+U%-%Eg<^lL8yxhz|l9t(c841~I7M9EFsU#w=Bk){{;Z1&s*CNiQ>IN--O90GuNtM$AA0 zD@ZozWgXyTt#Xt>dY6NftbFAQ+Tz5g8b}TW>&g~cCX-aK>;hUV14#>}g0L}lD}zU; z0)SB60(9!6&@t8lg_iuA)#`XqCjP{ z&`wBQLAKEXVva@|g$4p!$u@$?$%8P#`3dA2n_@`b8I)O|uL`vV5mJoRjLZru$TwdA Lppv7iRuKRI68RWY literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3session.xml index 8b045c6e3..dff012648 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__13/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5042681041dc03aa49d32738bfc5c73d924cf696 GIT binary patch literal 573 zcmV-D0>b?tiwFP!00000|Ls>zYa1~Tz3;E+y%a`YBMF?t_F!r#IhDOGBaM_SIJQ|U z4(_k7)~2PUZb;ftn%b8^Xy0g_-kX(n%Yt~nqPrpX!)iz4K&wLQoaxhepJ-0YZ8{F8 zuo%99H{*Jf#s^KscHM^&AqzJhzr`$ zvhPoFpEv1lQ}+G#mNu!mrmN^8Ea>V)wNB1|dN9@O#Qc2JDi>`Y(`H6I?C2f6rBbsF z8;wdv5gjel>ZaU2srLCu_5|*oIN`)1uQ zr-j}RH%HhIp+c5@*u_Kns$tcSW>e_P!@A$BAJW)whtFwon7#P?Dts=B>x*5l$F3I_ z>|*tQZgo49KRC<3o(=79Uf%6rZ?yKsKAzjsKK>hLe!)Y}+cWCZMj&#?(O~c?=Zqwf zTtGpFg9a_%hz|l9=e6)ghG4*I%U%WPw2j85=mH>B6f|sfMhHnc4oXq*-Y}vgA%)e^ zPaxUohz?M&X2~+t6j0JL1nq=T=yL_BMy1GXtaXX4A?I16s*A^jStTW11?h&hlIT1L z1*$SO2pUB+K3A%e-2^gCPGDJB$w`=C0l>(_D3bwcv_w@w*r2alKtnMnon4+lIXR8C zR+J%6E7_(pM6h0IpPc}-(j_kwaJCMB4OEb8qPKMxlXFs$lk5Z4*DePTfrZPH1itwK LfjkLfRuKRIQ1ls@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3session.xml index 465d85e4c..efad6391a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3session.xml index f1caa89b8..f81ce7b65 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3session.xml index 2c3d830b0..ceaf32de7 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3session.xml index 5402cc813..316b50823 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__5/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3session.xml index 456b99491..363260854 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__6/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__7/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__7/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5042681041dc03aa49d32738bfc5c73d924cf696 GIT binary patch literal 573 zcmV-D0>b?tiwFP!00000|Ls>zYa1~Tz3;E+y%a`YBMF?t_F!r#IhDOGBaM_SIJQ|U z4(_k7)~2PUZb;ftn%b8^Xy0g_-kX(n%Yt~nqPrpX!)iz4K&wLQoaxhepJ-0YZ8{F8 zuo%99H{*Jf#s^KscHM^&AqzJhzr`$ zvhPoFpEv1lQ}+G#mNu!mrmN^8Ea>V)wNB1|dN9@O#Qc2JDi>`Y(`H6I?C2f6rBbsF z8;wdv5gjel>ZaU2srLCu_5|*oIN`)1uQ zr-j}RH%HhIp+c5@*u_Kns$tcSW>e_P!@A$BAJW)whtFwon7#P?Dts=B>x*5l$F3I_ z>|*tQZgo49KRC<3o(=79Uf%6rZ?yKsKAzjsKK>hLe!)Y}+cWCZMj&#?(O~c?=Zqwf zTtGpFg9a_%hz|l9=e6)ghG4*I%U%WPw2j85=mH>B6f|sfMhHnc4oXq*-Y}vgA%)e^ zPaxUohz?M&X2~+t6j0JL1nq=T=yL_BMy1GXtaXX4A?I16s*A^jStTW11?h&hlIT1L z1*$SO2pUB+K3A%e-2^gCPGDJB$w`=C0l>(_D3bwcv_w@w*r2alKtnMnon4+lIXR8C zR+J%6E7_(pM6h0IpPc}-(j_kwaJCMB4OEb8qPKMxlXFs$lk5Z4*DePTfrZPH1itwK LfjkLfRuKRIQ1ls@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3session.xml index 4f062f1d2..6f06acf93 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__8/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__9/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__insert__9/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3session.xml index ddbc6111d..06e1656b8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3session.xml index 7e4d4c7d9..1fdcf513a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3session.xml @@ -3,427 +3,364 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_gateway_internet_address/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..859627d3ab37371d1fb0c4ef4d184fc1b8b06a6f GIT binary patch literal 6048 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 awM?);Q{Y6x#eQtXSoi-bgfPN9mjM8 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - + - + - + - + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_identifier/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_identifier/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7fa2ae12752a0668642d0e80c1b06394644e96c5 GIT binary patch literal 6084 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 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_originate_timestamp/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_originate_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..481592c4de279dfc336c50278142a672e75cf92b GIT binary patch literal 6762 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 K5Mzx4p#BfoPWKl8 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3session.xml index de5c0e1f2..f1caa8ac5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3session.xml @@ -3,443 +3,372 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - - - + + - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_pointer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..354cdaab1e4cb6b34ccbc71575d01d4adecd30d3 GIT binary patch literal 6142 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3session.xml index f715ca6b4..08b08ef72 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3session.xml @@ -3,530 +3,423 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_receive_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7f7e98e3769ff77be14921082aba998c016d56c4 GIT binary patch literal 7083 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∋wU(}bME2-PbUaq@x(rBiEx8q4@u%{+NmZoDyg?nk4@=I5rXOP!AJDoLgU8C6 za5(aO{0P35(-}6jHYUXmBQFr}I<)fh#DTn`sVm15{LL-kFu$-5jCCVK6u0fE^O0RR z%Ud%Ar5GW*uX>N#0!w?>;2-ib~wz!mE}|tNiBr=Lr93gTC16=!0wyq zDl&xslTT?)R3*Sr21D1Q5o^W?Zms;xQo98|C!_j1+-Ri~qf8*hd+0CxNOKq0C0JuI zr--WbZDP%j`b>C)OOp%lSQF7pt*=lsVhf%clyMjFjj=u83f!B*iO%C^%X?;S6x$Z< zRvsQ`Ds%sgCdkM z@Hby=uGtWog4?!{N1;wFJX-}XK#+S$lrINYw}nWEWQv^OII1Q(G6IbbNRH7G5kifn zXkem74aS=KB6EO1JI7AO>*LUzG$V~xtet7w2p3?Q=9H`zuLmCsG3^*#BhbYjy49A= zNG3&|`5r%{vyEC{V0E7ZF+@b3Pl&S@@PhF=r*-8xDe@~^yx(R;0jzUc5aZ68YeuGwVV>nuS&T_`NQ>5>L}@O)^YG$Q92N}zow2DOU5;|cLC-O8s-A$NZ~|U^@bEcGr3=I zu*R#^jeam`$uOMTBuK@Fabs7pS6C2v5X-|pUB?Pn3-L&85)@hD4)oJ^qnPWBXp5K1 z7vj2_I{6JoymvLjY~!laD)<)90c&aG=5m0`-KOjBUUZeRPx>d9zk&!C*nBJiG9>90 zB*x-5fV;JwyBq}o9)#b@_d8?vWLktbQXoRO?o+fK^WH)2nSy)OGD|^Obrw(yA$SUh zIQO6ml6sU5!Pul-mbDG1=}(AG9M4XVp5cPe(Sm(mtqL9?9xueD`!Y(q{ws3SY4N<>zJa+PImk9{_2nEai< zAVIqN9(plKdq>>(G~Yb44WE|~ZR(UKRxbShCPUJcNsfr@v;Y@Ch{{^n3(K^4J+8BK z8o3Sm*mSAKy9G;z83`p?&5{~HQ9vn#o`Hm0!N2qV%Jp2Vw;V@0)jSgZL31a-l*_Q= zWV4AO2!2YQiQi;fN=PpbCykXFCi};1Y`@x{s0_dkW;wQ+9-m3oX$Fzy+Pl`|UX{QD z_|M1$#9JiC&>eE&*3(at<2CNEKQM)9uJx7hgq3334He!b7mDkZd z)XR)XqzJT%ji9-1{B$z57oJFqNX$Gcu)3jdDTTYDqvcs#Qn3vO`XFPC+S!sk03kCLsn zD_l@oP|1egxJsJvk`SlmSM!!3y(r;^+A3m}cz(V9PpFGrOysGr2yEsNBR)}&t~mb1 zH)c3S{k@r1n$!bYsdE0`)ex(d_#5O*thH8^@t|5>aysN%>{&4~E>ZI&)4PaXcB8yr zZbm@~-Q6DKpl6$9;5(d*k^V+)Lf&XBI=Cy1*m?Nh$TTj7Ke&fKgo8ie>vdqIi8Ghx zNGF>(lfaGo;FF?T?Gv$~vmpG^+b79~JH~nsCvd1%4$&Ko67T;2lyJ%%9`AQ{UFVM? zrK5u%_Yhl9!XxIPIU>;BXeNj{)$zgO{MVYuWGLZjA2nyw#w5hesL<#$5BQ=>3n%Uo mdO4KsRz$LUeK1hAao&teB*Qz&T|Ib%&$Cvkc=`zs_kRG9-(Z;l literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3session.xml index 5a67cde5c..3e5317ade 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3session.xml @@ -3,557 +3,474 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - + - + - + - + - - - - - - - - + - + - + - + - - - - + - + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - + - + - - + + - + - + - - + + - + - + - + - + - - + + - + - + - - + + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_sequence_number/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d90cf0a9f93951db2dd73812df24034a871045af GIT binary patch literal 8162 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3session.xml index 84c5301e6..973932b91 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3session.xml @@ -3,524 +3,493 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - - + + - + - + - + - + - - + + - + - + - + - + - - + + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_tag/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..92c0876cae1954ee4518e6aa41a89f0922779364 GIT binary patch literal 8481 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 IG;lEg2S}qQkpKVy literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3session.xml index 2729e3665..916ea6b5a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3session.xml @@ -3,556 +3,441 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - + - + - + - - - - - - - - - - - - + - + - + - + - + - + - - - - + - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_transmit_timestamp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d33e1a90f1ac09baec72eba8ff6e3581542aa1e2 GIT binary patch literal 7483 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 bsj_;=Ys3juUvujYKI2n*(^?AtMMnBRhQe1& literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3session.xml index 5c96519a1..8791da38f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3session.xml @@ -3,480 +3,387 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - - - - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - - - - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_24/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5e0bbafb9c119bea7d5add6193ea2e2b75bb3718 GIT binary patch literal 6370 zcmV<87#-&yiwFP!00000|LvVgZ{tXo$M5_Ua~oh91H`@nT@7R(5|cop@-om>2*y$+ zl+&4I%Z2Xw^z#o&vKCXaB+51|zd|8po55hb?e|`U$l&}-NdLYK-)C_;yZtNN&BE^1eH}`q*WBsS6H4oG2UH-~X8K3EOklFB3iCpX;ZZu+N{H{Qc+r z-_!fw!_VBzzx*103GI&`H`DxQxXTgOPUv*`?_Ih1*K|6I-+xZ0-}C)__$^PT@yG2v z|7$*-whyJ`J6v}dx5o1A*GC;bDrwQpE!4l&w05;>OBOxHq8QV9xRa%2w(U_(JpWPu zFyR~;|GfSKpKvzuU3WhGC>YCp;yyhc8jki2=WFez4flECj&Uq54|~@7IJwqyuEkID zEpe7_{r#5+50PKj?lV@;QqOpnBF`F`XLZqT$hF9|F6>&pMiOghq6|sSb}46@e_3mA z*8SL>GF$vt<{N$`K)Y|-zw4df)z0s7=XcTl`p?;KE8jfQQe~EJ(lq6t`8MU-`4oD2 zz@O*gx5bY*@&4z{Y`$oCe^RgU;SP>D?d^!8-TYKZ8E1bwiJUX>crFz7JmOFzMLM=zFMm%aU+ox+8{(E)g#4Fr{dt|iJ zPTrQd_HbEI`Q>fVO)@T9C0u4EdqRz%cWMN^QzPh|8bR;W2%2gHsu4c80xAdo@k>DL z&2B<_lX0yO^ON#nF|PaB|2;YMxTLg0hShS@Qliyj)b@JF>KFbfWSZT_yL~V(}ptA8PTT7awNvVHY26@!^-Jv*m^O&iEHc`IFD>WwgDu)~Btn z(4MXWeH!KWe#@1of!V4L|7H*VR~;h*GY#&8uOiI7A{8XJ<9m{7wclD(d%&X7nFwTN0ot+7#Si3vSS9?@%ReTG1S zs72HwYK@OtkB=2hxQ%{!#m!4}${#w3>Q(+(lPJO(VU4hMS*&d^z(=!>0j@5HhB$u+ zH|IP(@#IeGL-mu?Sbyk0cM4;zkY+fkh-z_-#g~++umq~m~a*8)1=i-^-oz17jGn-F| z&CRDaw>eoKAl?vfh&SU<<3ZkR?gV`1_6v&}tufZSx(&lbxX*+8TI}dB5q5I}zEk^p z9FW=QiPc?77`@B47Fj^oe|Wm-*^*W276qluEI?OR2>F ztYejY+yYMYPuAsgo4^VGBsrYS&qLYa+|K&a!?8R*oF0xP&$H>_9c2e`RC;Khd2H(I zmWR&f)dAInpT1?rBVus6lUYTzj&fAdWj4~1|q{p zBt!Sw5c&9Shhg)Qa+7vy@`=>M7Gevr<=wHRd+&=h8}EG~HV_+#4aA21yP_|G@5N|A zQx!r6A>+LwUu1*1#R`HeH_5K=Wh&Q(Cto-0~yxK1%|Vun1S7>Pl&fM)#>#{r|2Rh4iE>310R?Jk0Ds^ zf}F)L&l9zI3pONway#%uvGdeWN;-MAqb*Z;4OW`BjhfkDv%WbQMOj7UZ#dnJ-B zwrNv6j|#jE8$N#_juFR*VR{xIL?GdYQ*gRDCpQqSQpmJr6G_ z9og2iOK2>&o)5yg2;9&6h|0%4orAzp$jhrNE`YeP@Atsk)+fM&O>Ax1V~s)nB@a zj5>1yQ%}4f9MERrFPE)-UWTB23!!~mMf5TByzNKcEkwt|(D5&K^#XLclIX81%KHsO zTqCX#*G~B=Qj3E{yyiV4*Q{^5q7CI}9=CTB(rmfEP%np0UU?l;SnjE|-Luv9dlvfr zutdu9=)?U(+}$`3vnu8HEIMrRsxPw;u!aMRcr_MY z9a}pM1=a;t2`Q2(k|~nkJd!V0dTj5=HqnbGTE6ZC_re~REh>ma?=32cL{~_nrsqLN zV4!CUZXyAZfJkt)Bv@~yw7E+^k$^}*B=~3~=!q2bqF=iCa}DYT8Prd-1_WwkYQ4ED zLgcpYf6#4%&ozEq{;29E1dAW*_5t(Sw0rEn2Kzr}zkPt0RaKa-g{`lCi0<3Rmfv;` z@=-LfxYa;k83TH6H6ZE{^@w`?@-H#qhV-i8Z@sTR)cam=x$0uk!&a5wbw+5q28jtx z?*dIr1o)u{=zR^L_U9ph5tax`gr&E}(t-_U$U9+b==8meu=aXR7NA&8h*`ueV%BAtwFZFY(d-3)W%YiA5a$o!<|214 z{QNP)$nVB`uhrgS%kC?-aIKYCpy{h&l#h?2e0(6~<0B~_A4>TK4rJu}aUd>?gZO)n zf80NOA2$zrS#S4MgOvv>xj@(Fu*xs<{`q$cRz5niit&+Eyd7Dad9Men3zJ~fH(>9b z%GiA+XmwqP1e`v{(F?`@`z0yA7)r&7@Bg_rl!`Y)X}6#leunw)^-!A4XFqNyR&Tzu z{^@=w>*Ieu9=}De8wUtIgdRfA$TZoDp58Ly%r{l;yd8GpHn(d&v$N$JBPZ5xZYOkV zXOBa&TRYdE+Rfu&Y`2qA%)?&^*5mslyfV6HfAr>19eMQ_>Qc;xDUGpvvAIK%n?p@>jKD0&AdTHJ`>#O$0x z{^fm6EqqS(`<&ZXJ09{m_1eTc87v2pcW!UJ%sUxY{meU-RL?VSWbQ}EJM`G|5S#Vw z968ilCdzMP9F?e6t8N3kJ@JQy4{bwuOz#!D77Cxa%jzBqpW9n6g-^z3KZTEt?dK^x z*#Aa}2R%wW=)-u>D?E&C+yq;K?S9yf5&&wHE~^f^tQso-2&aV8m%!--zQ=fZ#mG^b zOCC0t9INvam%$dBtGedzLzK`>vMyZPiSV~U zn5;9lOAo0o6Q4S*eR+2gk^Q+g<=3!b=HYYvSI!S(8rDe(ViW`4eyQWmm>&y}F>Ubj zJ~yU%Yl+9Y!{;t0}i3!AnQqspm7xv z6Ep}Kd&M4DWKeZ+MG_Mz2o!t89#&RRJ#jq}6DB?cCJydb(|=S?=o^r0k(ib`X{qy+ zrOv)@Ko&fBe17b}mn8Ir#`Q={zvOH2s(pa@v*T)h+jPydXF zr%1mBi7C=QV5AS2CTzaIqmL3#j}a=aL}Ee(q2g3jEZ@A-M~Wwh2ozT$F@b_WaSABf zA3tuU`OoKG1G@KkxBNh>4_6~G@#BN><9G;&gAkx4$m@}qAV3h<0|9vu0<X! zK(Caz9*GG81c5yea0ema2m)6lF+qSJum=MEAOt)?;A$i$2oMDJ-7Lfo-z~%l16Lz4 zVSq5O4+GEKG)Q+1UXR3t0m8r_41Bt9b#Z)u$4ps{@9mgXkmGwhW?}XC-j4aM=J?)@ z`TFxk>H#-j2EN^#uPt;#T@k=RLu*I_>0V1Xm{>`SfvZ-ZZh5)-kJu zu`au;O0vQ0;zH4}$m0Kl{|{%jaWON;S#gP{Y-J3_GsPsc!LgjVMKg9>qnsU6F>BGb zN=uEVmKVlbZ>b#twAH-WWhuBZ89bEY)z8M3aMF2+!$44=&aY2pxYv>veLGY zN-zz*@m3XQmC_;AR=lyHWQ+3^4?3%Qx)UzJN=n*Xe3g%jrg)4Y78p7^FFi-2kSvSN z3htS#!{V|jLY5*JGfJtz1uO=|Cj8Yp=dvxem1Mk6tzeYcwk`7| zz(uu10QjO|r|QViy$Cu9TrDuCVoJg!c(Y3pd{YRw+KM+!AlQO}24ik5kHrL3UW{iS zm`|N=3Fux#D`n6{XOoK5%4aKzg;ysJt5!P-*}$`OD=bWuIFu4&(a>h`iQ$@->)J{+ z5FV~od{j=rjk9Y_i@0GqNhPA`uBe+JWswh0{F^0=Z_-)D}2_9RUwYS~qUE_F!JYMl^ObIqeDMeJG zBxXyJtlCldMlz{0mpU57Fu0&(E2PLUns;2tjt{Kyhzf%WNwkbJiA(w{5d%&$tFz@@ zE9l;OSSGgtj@oiAnD^Oa4$~LJr>IwyqDd0x2)Klj%Cm(0lOyDoD2au&Ox9LF5&|{2 zRJ2Zx#hAG^4p3@A(jsFQv{E%uJEypFT1fa;fFWY5J=ljvtr1oCQa7nh3ZZT@s|;-0 zyDH8zFfP`fm@^1QB#zq3 zHj;xbhFjfYbfUGkWl(xzp@0;~XSJ1Ucrn>pSW=ZBzzl_a93`vS1*&kB6UsNxq>mW2 z4uB#rIl)R1*)v!;5`L}Oj5Rt*fu3D%4e+End<1d^34=iuvGPl!_J<@6xgNMGs=663 zs#O`|4^V4ct*u1^uP@1S&=P}_4mBCf1JiqxEL^E-LQ8lKFl4<7FsR^gW6vu)xd?DJ zq^sHry3aNs*k!QDGsY@l8RbDTvFaI~P+NibEfO|@&jCd&mcR{%QLR)7p@sBbTbTx+ zYC%vyIdH}!gF;%A3(7&&__g|%Mmk2^K<`i!!pvp`93o$3L~@CYv09O6*QgAUF>qiH zD2kQ1M(V<}#sHApYAfF$k+AB#a0nPjs!Gs|D+L#n%CfdHC~ts-HljEH4v}Wycgn%u zQYn-;u8T(l-E)g{Q?e->O+3OQx&{HkLM{mXXRbqzZ%?N)T54-sq-q z2ZbRcNKq510!)ekp91_G)mpWXK_yg60;Ot2k-;S{Qc4*b&>jdzy;WPGWX!GT5Cfti z;=#lM37lgXl)zcFl|wut3os4$LeXLkDu|2%tYBu+T1>I4uNp81E>b+l0SK0@NA-qO zBdbmetX5;lGSIi>o+J6ecN~(kD9ES?aEyQ%1PbvaDlwpM;K87smLhcH(hW!&y|i!}Ttb4(EP^B`WDQeX`xle&l-v$<)|(0`)kMi#pa6)YA%6U!H(- z{0~5e0TN1t1`!#PkYXfe{YSkI{O-p!iNk zuQ1m`ap|BgI4J6Q)X^PmkR4hV7L@bI$Zf!wQ6#Z8YFq*gE+``~Yk<{tS7Ul)1#cYu z2p0tcI6Nl8jU4I@S>RNm)^gr9P$axc0`%}euUq&UU(_madra+WEBHNTmD;3Sa?Or0 zBJU#mI&U!3!R0F_JSx#(6O0BRa%nJS%c0T~lMEvbpuxKt7z1=#n=sMqCK@QJywCz! z6^O{Sc(q+Kc)qaFS0iR`1!{Fs4cJO1EK)dN)-}WQn3bAB0ZoqFCTdyA;AdbIaxzTc zHItY^3NMkw1m@+)NicfgFehRJ6D8NxbDW_Zb~s{^nB0CeXPvH$=8 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3session.xml index 3143b75f3..4c6bf4360 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3session.xml @@ -3,451 +3,370 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - + - + - + - - - - - - - - + - + - + - + - - - - + - + - + - - - + + - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - - - - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__set_unused_32/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..91cd919472713f3ac96f7aea6e590b9947204202 GIT binary patch literal 6058 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 iwi3&{XoBuIGhSHqMAe{R1# - + - - - - + + + + - + - - - - - - - - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__structural_valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__structural_valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..34ad5e3ca624cd2c8feb7278719e8bc435b30278 GIT binary patch literal 20081 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 - + - - - - + + + + - + - + - + - - - - - - - - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__successor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__successor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c371389108073cf31d687bce0a7c17bd9aba8dde GIT binary patch literal 4767 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3session.xml index 778ccbb78..11b48beea 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3session.xml @@ -3,52 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8c183ee910666f81f41caed5e17627efb91e6331 GIT binary patch literal 675 zcmV;U0$lwciwFP!00000|Ls>zPuwsNz2{f-URCn=+lL;wpdxXs_G(SWcCnP*O_MBw ze_v+t@rCvDf|_^PdPTh)2=Ip^AD?7-ssyV z4-;Yp4=iQMDj_dJqJR*GaIvkmUS?L*bQ26y-^-G*2rQG#S!hGoSj`_ zNjNuHH?goH#gX9C%uXoTPcu6S4gbl^j(>ehw7H+3e+#g8gd@8cX;4)WqB+$4~gXDfUlrDBj6usy^#~()F*NKLm}t8D7$-VL6Q&_Q@`$RZr>8 zHfvZ;x1LnY_iI>A!=7Z!w`_R-1IQ_zKq`@V9Sk|tI=B>-RHU5Mj5|>~#l#o*VXDL# z2ktN`V-#{89BCs-*V0j{LtQ|u0%K~_KtX{uOlc#m1Y%kn3{eTGOgg{Dx7Ew~5 zl36r{0u#zWawJUwiHaZ^p`4Pz84*#VF$hRW3T30Uyntk-WGxDlNL57w2&WTCCZJ%6u#B|^=b}I-3rJUip))pWRN9&-xZ%NyvT9gHj!U~=r$2(Z JzXQJ$002VyL$?3` literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3session.xml index 5ae511700..5c17eb75c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3session.xml @@ -3,130 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0657b7fdef7e0b8a022ccc2b082e383da63f25ad GIT binary patch literal 1409 zcmV-{1%CP;iwFP!00000|Lt5$bK6D?zVlb~*6S|zeaJxX9gkomwKBNSgJ5lx^%s0E_P*ncx)phq}v%$Yg*QMn{Uq1Gqf3m<$&;A^oJBHZ-Y>)AAzUb!{c=dec?diiYfdJY=yndrVQuGyp~MlCJQeHUP&fiPIkS6D{I)LL+4C~{mJ^Kj z91q^%Vf23Rm+XIm$?{Yx%X8HT&QhbkGPg3fGWQCZ%U++st^4JNl0TEn9l{#VQ@79c zd1R4lD@1mJm|&YEX(o`K9g-d`K6h1RtIGa(m2LV;$4bXa#|xq3&uw~|PeWJhlIIC~ zt`Pt3XaQhiK5PkgT-N7CEmf7VpCMzi>e$Wc*#3b(TrSt|-d3TiLRE$8#|l+5F7$58 z)gy`;E@m#B$y5~dWGV`3if#~Kf_4yg3pyaqR-Eu$M+ncaA$@-xOopq!Gst>t_#wB3 z-FwT*>x<|0ZP2>1`l=efOKl|%+%)4Ar>a-&N@`a!iGEGcOH^WC8L@AJ*Ok^+_po87 zV|5jqDmGPYE<sT!;qZR) zyZc*qFCexHjV~M8)*Rd2#QV%j`bzp6BmKA~$^TU@W=ob|J#9m*q}9kwXX#tF~v z@28q3XA==2DCLE+A~_&$RUunqRHD!?@;6Wo#stB6Cj&tNO)3~DsW@Q-`j87-iPss) ztR+ea)?!LfJS8iH%rW?wlreI+UXw6o(1|FLCCDOs7Yqp_F-4V)Wh2#O?Xn0a<`jh1 zF3&oO45?7&BPO1_ZFL6iU#fVVIlDloTeGWFn&v PR?z$lL(*?&8e0GWkfW;H literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid/why3session.xml index 04d77cd26..b69b4e028 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d795dccbed6e4880a6353a42369f1c0fcb4d75fd GIT binary patch literal 599 zcmV-d0;v5TiwFP!00000|LvH|YTPgshWCDo?z_>EWXXnhF^hx_l&*@m;^^q8HFz#q znvlGG7^l+JPE_E%2{j=kg(h5Cb~r_U|zcm(KOH+B&!5l<*5X7keIpqurP` zqjLkM?A&(b(80&@KjX-BJO39hv{`4qEK~PJsR+|{==0t_A>~VqLs;VbPLL=c%o{iI z_L=tI2bnTvzFQ&miNeC5(t+;W94Oh5MHZIh1Dq1Uu#;^&bwbkNE3zX22cuQcVU6mT=KjHbo=u+bM#@>$-hS;^Tx5Ryw$=ojzN6xm1jq% za%OR6@!zvpYLN1{qr4k&a2GiA;dbHsZFAm0XJ}6h+H%NCTnuMcXI4*|)x7*PV>x4a zYFPI9C!6TvcPD~7niqL`=1q5|`w!_}oWunW{CLB2uts;LvoBBc!Cj*{;PueMM7ydI zwU2Fs)<&&@f~FNMwGe}B4Kp&ofe%eZ@+1F-Cxhl8~%I(J0no%C4@2v9&f}WdouZc#o#>5WV+J!=-CQ lWU5*Vwh^!_D6Byvgi$pqC^5 - + - - - + + - - - - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fd49295060d6de2364bfd1f59c67639e0654ff30 GIT binary patch literal 31994 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3session.xml index 2d96d7a43..f1982642e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3session.xml @@ -3,1062 +3,1051 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - + - - + + - - + + - + - + - - + + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e23d8c0b152064b0909a2bb813040a2f96746bd4 GIT binary patch literal 19872 zcmbT8WmH^iwyq(#ySux)ySqEVy>JUoaCdi?1a~L6JHg#ug9mP9?{m8Q^gaFKUdH#M zY86F|v1-+v&-cuiB8q|r`RnK7B1a+ayw$n%@tMv-2#@s%AsWjvfMuw6aKb`)EmZIV zY@NwtiR0W~$RR$lo>h)ULqqjTI>m~;hnq|W25OMffE?uLl7GeO$BXT+w7f|Np^q1$ z#Vet2J>8mHYEan&;nLYU{Ih2G#TZdF}J(jt`&TfTwPu z>TVfH?~hlb{I|pq|LSJW+Jv{tq?mgOJmVc(E?>9TyST&0bIC~mywx|Q#eMi^pTrH7 z$yPFs!)Cr%tg>m$%UC;y*-L1!aStg@*7l-yN2#|L5IvUMWF)(?)1*AnsCTd)@s1WI z#|S&5!Kp=Qcc$MiFL{!yl9{J@xEsNer%yo+#gRg-lm;pa?ZPp|Phf&%dq|}+9%Dm2 zoTTs6ew|Q9QMrSMc~2KV7l{mtq7KUTA)m^lsvCPbK_&q^?%x5ZLE=-DVnZk!MR8XsoyS6I!OWrJHrenW^)AyEF|lg_t3ITG>aO$kpBr zzD^(6NQkU-1XfzEPr6%cyf6iDf<9Gefb5VN4r29)fPAJ;yNn{poG9RarEHOPf2{(x zNZ|VK+x1?zH(SS1H7+@`HLj9%98~5O%5w#aegah1bakl+Nuzx}yuy*uqQq4C`_(6+ z87IzGjh~Ja)%5v=p`~v~%{6J_laLy11@UPw@NRb)VO-N_<86}G)#l{y=9k~tIfW1= zmDb;CDh{mezToQShAPUeU*BvsOvWKGwFm*2;GKh#5EtFcn>Fk$7QlH;cQY^;oR91Z z&h2>E*SHq#;*gw;%@~E1m)bo@_B_2boC(`8bj68 z&e9nsi7o#iIp0QhKW=!C%xj{vHzpz`WED$6bn*!A&?vP)M-nXa9Ereeb7@v~Z^qxf zMLCcZBDo`ahc7KoWl?{@%oeX z3Y7Qjaftd)erh^atD_NaSHqPNYQ>`sD)MHU(fqbdcp`y44xSLA>^>yLo#EUw;DVaI z4zhgu!S)uD+o3se*rKHFQj~&N-~rvGQE!2c%A>_=DG{~KqesoBhgk4f6|zYd9PC@r z>4u||Ai^g#L~=hSDd{A7B}h`IU=Gi#u7-BJ^~wea!w zT*Dubs+!z zqaiV!%O6;mcm5wr@B}wKQn8Xm5xLf7QIAk~9Ph$+O9$vFhe0Cgg>!FiToNVEXBLsN zcT0=FgEiwcw3CKJlXsstAYb+>MwVn!5&c-%T4#u_0fzEgWlC6x(N>PL12ZgMsj<;k z=4PQd=}zw9gV&~MeR00^*QRnvLY#U}ZMNG^S+Y}YqEmph)oP6qwIAq{UY&EC*pv1q zH(?DvIYoXEMSgIxhjhjxZ5-p0au0~jKAfc%eAQMR=nUT?1{)4y$rYIhsepId%etaP{InlpCqNXIwTDNY*-HT8A`K<>dK7IozT7U2XcpM z%Sh}l<7=$Xz3|(+S)98x4;WkW=BD6ed0lm3vM0Qr<~h@gqhHw%*NrIX4ECpPL^E!j zrJG2v6V;6QO>8AMRcNndt79}*FHlj#G+$HWpF*UB0cvVAM>e#R#~>E2AZ*+LIJ{*z ze3se6X*CM%G&}(~_`U1L*|v*khoBwKW~EdFpDvLdzg^SUO7hTY?gLN9N}Drv%hk8_ z(643!i{U4OUbXszJspgACF-2CL`YO^kYxrfaa~n%C;Jq*>az{h z>y)q=_@=J*0Z;#dk)82#Q^@RC)N^?qq0UyN)L|~0{%`%-QLQ&U=Py^GVgY0;@{!yv z^E>J$=N59J{i-rn*d*Jzpr3$!13p~OAT<_*lNGhsU_yFtiOqO`DHP?y&UgTeNYba9 z*?CEOXHW6_n)}g3lf?ICZD)(Bx~*G0Zpc0dxvdQJJy1HtNK<`t7Afx5E&HDOfv}__&Q+ zVUX7CFLl^1x&Euq@tb|*bEQre?$z6Dq6fUO=n=tYPP6jil&MG|W)_iTTI!BbXpke@HLRhl<&eRD?Sh8l%1>%^jmc3^&&E=nS#uH0p?n`~|hXD6O2KS{3_oV{&Lk#yr z1oyj;UNxU-n@}Lw*w1R;D3K=t#y6(kc_rn#rR84W5_gmM14$-#DGi6k(frJ61L%Dg zZMuqZQNt5u4IEt~8B+8j>dd59r~}!a`5QY03ts|T0;pXLw-cksn7vJ7Vye z*$7nP{#r-`D!}!R+b&W*F+rs-k_TNnC*d!k;|Od?iHL2Q(9{j~vh^@jE|)U9&a#2o z!3lg)@a9qzB#W{l@`^Dx&>Gu@#nazlofE&hD@KYn`F>V?Yu}KOwo8hgTD;xhm2H>l z!Nc8(iMa|L@(|nWC>ZMVz1b#s1Zj)MDR3QW6Pv0+WzSRGF4Au}DA1WD^_apOn@SZM z_O%86&JW?+5b7(HIiA1E`thH#{`FFjq@aa|S9j8L$kWx;6;_D*Pw$9R+>t7~4pMt6 zIC=ptJgMtSjOlA6?o~cE-4kT5uo*oHTS*dQXV{2rs{}qvICIN!lKbwa8SmhDW+t;c z;Ng+{9I`!RFLSaY?gEdz`0F+3i0N$Ztzx(!%i!7n>K4qNlC85Y85I}#s94*iF>M$IuvH2;WWCK;fvPTnW0nNU!tPgWX-{IXl0U=t-|wQ zSdP?nE5t(BJ6Ad;sYPVr+ph0x?^6!8{_0BiKyT7KqZ|Z7U79E_5ql!&yCSfLTbJSh z)`A}?woKy_DPs4&wzFL44Y;KO*L|M+Lu>vPkAp=w)bN=?ut7sb%+eEA->`;=-hgHL z-O==OcO21T-O;46%%H*RjC2onocK4-bvM4z1;wkWvNhZ&IK6K-lnTzqa%m^G^L90< z@{E3#^g8dDwxbi{63=^#QP#2!_GuD42EV=5aoUvb)|sdo1!n!~lp4ZT#Y}&m)^mUH zHo$lAYywyMh3sju(L}$Z|1f1UJG9FsfIIPq@q~XPk@m#Pspw7Fd~Du)97bWW!U-zJ znbwt~+gRt>9PRFh$~Zh^Z7X-32ZdyTgJc1N6hc4l&*hx@ozaJ{$!Z_Xt~~X;lYGGC zJgfPc`sQ@38EQgM;8FDTXs1~3u-F@(s^PLEHM*N9sbfn30F_T;zxcal(bf-#{hcMh zEsSlCMBZC3x-K8(Av{{FUjQ1195cbGTfa6`PA!UEZlL$-ofD;O{D_I#*M=oi|6zeN z>j_*fYIcHJ@x;03%JYC05x~*Zydt{WIn0Vl5OJwD+8Se4(pFpRWc{Lxe;wk&dIi71 znLpuRdPDYmD>NAgi~lg&XF`_v3vqe&=+K38Qzs{8T>j^jDghIYVy}WuSuQ#yt2BNZ z@s)0*KrC?@H}_jynvy9+KMSE1+e%fP>&6VB^g>C=u~Q3z_O}O3^-O z)W=f5932U7QvDK@HJN}ltd$Oil?P+Awp1neTao!lU8dR6w|RNpoKm7`!mgoQgO>5W z)2Wz@hUV;fDNIU}&a4%E;i>1_ET)k_{KLKwf_fYamcxs5MxjY`GuF0anh`6LXSMjz z2{{N}&6)AFGna|yTT7Ff7z!RXmeUAL^uxT z0gWp-Zxx`f-*Wo&aSki_@{mYCCRgdK3Mu zx_OvNd>5Wc28Vb16aRo5;vx~fTG%4?Y=Bn3fb6|tg470)Vkk_7NCnnkbkm{IeY zA+BhmngL$|!DjcNI+}_63B7fN!Stfhm>t48eslV~ z7cvbc5fzn-7}?>4F4TfuCI5OIg8^xo_9QHyz}3R?F~E5sG@t&AuC}jIdH+j(yV?MK zk+b7|G9|1sp}@wh+$6M{^TY#8a4}qoV_OZuSOMXn;B@F6+4i8I(n|esL*58Y(}Jt+ z3FUW(afN*j%uNIv5i0#6PUm=(}CNPQDFO zW1oAU48GrL3#3#@c**`>Ldl(Ul*FfTqlAu$a~V|X-mdCprow9lY| zb5c(u9!HCeW$o7V%G1RK@+Db0-ksdO&DXh;511P@I*RC9---^OA1fw@_tARZh0$k^ z`|zdT;yl87=_OF^I3xK(YABMT9-6IoYnP961A74vRGC@3tYm!?;mmCNN){t|6X`-3 z=|WwcC#A`AnIctL&u`X%&~bFQ(eM4XS<0*}A%o-hugunDGzrd8L|2G`I=jW*<1$&3 z8?g8k>sI}RLA*Uyo{kOc^kpG~YDZJ&=bY}LEPZ$CUo$aG_7;LR?x2-dpN#Fd!T>TR zOVWKl-a;>Tg=xZt)5I)V#58Udf%cJ~t@5)hwJq|cQqzrdjn;|2a1yRq7?19G-sptF z0ug>N3y^E1gvxnKiXBtrfBJJfFNe{OdQ+O^4cT4rlFDQPW^E{&UEa#_Meq`{h3~`F z?ZtJcO9)rr^^xnwtY+@jzmfG*uc2Ad+v}kAZmLOycfIzmY#arn9(|iF{;UIQEH@X1 zC>ffy87YE1xy7z+A4!Z_ExY`Wxn6PHbm_YhX&t>o+xAs{-S4i{feJ2COG~4har=qa3Or~~Y zzW$095({YGzQ^kzXuUkZnhH5qz zVK*jx`;)-?=RSUznsaP=^t=tJm-c;A>zJ6IKOT8JW!pMG0(`&)g}MPZU{VM!eG-JO z&x>e3*UT+=80d2u^Cl(*qtlG@XB7G-s}Mj4#boZpWY+r3+^B(_&%!k7Gr|LX??9e0 zYPFH-$iRb}7!ciSL?3|NuMv8MDwi3gTAhHQlGm%!DbULCq%wAl2q#?AFgVZ2ab^P_ zzxd>I*kmG0q54svyoEWT(KGgcQBRLM_Ra>OgjMJ^^bXkjvp@(Ro=MV(vgG z?GBVF%Vs=-S+AK`_cb7SbVT?p2MgA_+35T>G%0}cM%KDIe>z5RyAY|9^CYd}d1Lv_ z-p-GUy$3II3!wz_atLSM7Q*)uw338P{6yI;tWwY1O0Y^enFVVy^1ls{?xmh>8BP6_p(gWv0CyAoT6|tw@gBZ7%ZfxJ`*8LBpds2 zL=pM7)~z1w>205X8KgLA#e|Hx-(=b^W06EEtVz_yKj@b>JEe4cpq*T+xq8d*Sv&4oE9XgFynOJxHNzJ!Ty=?NnNBphUHL~h z)qo4V?6Q}-nQu2W{sG-qNRnSh(mPA`M2Gy3qaXX1OBClI?1PK-K6+i4sUm2EV3{3} zai53p7UOhN3CQ+l9FasJM}8L^n4-NtZzu@nzUvn92_1NZuKDOXKtzn#W?`@*c&IN z(A)<=I>X6WZEAG*J9r}0*T@XJb!M$Ucm@5Uv9e00DR6={_RY27HrRbMNi_MQ1KCq1 zS=5qhi=<>`Wi*cXK+w8w(vD)X>c_HY%tR)lcQ0I3<4=3y1B|TXxVRLwM&SHBGEUfhOx9jOVw%>St z&5TKhIx;3H_D5Pq3VcS|1Zxt)x8?zSrQ_3V5I72q-mr-ZK3{=!dsy;`fbRI@0hR!` z!Oy^E?;*8hloXgP?0Zwo@l=U$zqD1cdWe^ti)n;IPiLH-EtiKCPZ}=`h`rF{hbYX5 z_~fbp`X%YpgGD_cl`Qs4cev?T9JfUzx0pa;t}SkpC;r0o?K7OL1Fpu~iq|ZVX#+A5 zZ3!~{aDn2=MP!g33gga4WH6aXUH)&V-S``7J3Kc3hFS-e8P0z~t)67%+Fwws{~w?> z?JuZ>`X|&50-?6Ha3QnERy$eO{#%gdbh=rNC2oQss~IUWMH? z+srHiFzc91s%Q?4%!_HzMPrZ4saA%w zF0<0Q)|geDD`fbjuH4vqoI%`N`({08Wxo2=fu51OV<4;#W@B~ejcqOYLmuo<_UHKKTIVt{|N&6S8fH%Wz3Eac#sFVOuTI7}yAUH3uXOx~f8fUQ^0pja(w00=X zuZ@aiqHQv<;JEv|ao2gr{ESi2A0=!5173Mxf$+LAvRpPPaT)R1pEwfR)fka{XSjpR zD77%$7f&L$Zz*w9!ds8sN!!MCT6&wa18q{l0YLY2$)ZKQE`EZyyBUVUMNhj^wg)MR zF%gxfSWxc9bq%WqKj<@_SN)n1|e9~E0o8RqnV#?ms5}Sg5n*3OY zgma4j+$$}s@uGjd8fh(YpeiBw`N8l0XplZ|AX~(wMp*S!6l@;7r>UaNOr{_TeqtnX z;r56v#bPhP788>{7Aw!ZJm7*sw{s9-OqPh&h>Yp$EcZ*91H${t$!^##0yEDWvAf_k z)qHQ>GV5uvu_)L4ZP$ks9T~{F1m{@K=V%H)n$#z% zD2ncT?cIjK#Ev19e#*UY7c~-g)C5V=Ic6le=#C|Eaoh-LFcfQIQUvkhXa4n?{T+2? ziH6vDK+r6(mDim1OsNPWIUBbs+lkCYOR+>nN3A%|Nf3I{7>zh~(Ekz2dk3-n3S$u6 z{6=7?G)AI75u}|>zPg7-s6v4=39B53Z*$PV5}>}J(_HF(Zk#OOy&JYuDzj4xvx~E| zi<7cbqOwzhvUBn9QJ}JogR=GirGIh3MLdci%e(N$Cb!>>aHdbR+(_$VCp)CfN*!7^m;*^Hju0(04=1YGB3;Iu?++K#$ zQ5Io%y;_`=2$uc>bRy=mO%uk7kQj~iE(sCGW29BX2UFYdpZvP8=Ar2zR#%r3*>kR4 z*x5V@DfxrHIh7WjkVdZ-i(zHPgDfE)6?;58T=#n>{3`>^KL1K7Rv+1nVP>acjD@ zkYer>{IC_&*;;i{TuJC)%K(ryJ$A6&ll2m^fS71-Xe^icr(g2eJ0}k%C5^i)pJeJ= zt(YPyQ*fdUB;Qt(~DPFWE#X0EyBnrhsZBD4lLcVIh)09?SS_;rRN4@6D^`3 ztbU4aDnMth_3g@m3PmXEN>U4aDj?b#dVA7^JG)?Q1iI(xwCO`DB8UlQ zlVd8-qb12taU>=}oBa9R7^_K{XDI~=1siPRyf zTe<~V_6FTL6rzdhb z#9FoN^m_L^x#<7Hu1<;Vp76CPTvI=-{ry$J z-51cabylFGD$)F7;&kc}C|xdfP@QSNX2&P+mBE{rO%yDT704?V+(4Tn8%qB>x?WO< zXPK3-Yponf5;@L78D`y&FZ{)=oPTlaoIueo)qLgLlZ%g+i ze%!dx{AW{ED}Kr#tM_(%f8@KY>yVo;ysUfQH|#ipD@-{``<*b!m%#w?F4z%+mL%DW z`%CbSsvoV5QRi^A#)fS!=4C?{`!ye@8a)#mN!N08o7kY1k{$=Tf& zLIK4$xh>sE1C+vruElk4QT|~;n=B-(8b&AYUiJl-npS^8#ZYs_&|yc`t0@~2BubB- zlvPAwwe{QAtI8#5`mcvRZR?YZLqQo2&9tT>WalV2VWHmWtX4QU_u#mUlgxAHd!rVf ze0OnNe|+W+TlDCDp(S=v#KAN(C0h}9$#_oBUdlJ_#>Mkh3%bZV!bNRY@^%M@WB@tc zWJpMi?ZVP-08@674%G?gCv!i%D58@O&fh6xyEU~=j-~@bs4Pr*Eq286n_@Up5WzcL!rDQcuQ8{ zw_{gplN(WXAHm!rT{d$-L_ZhHFb54;_Fb=oIk zNXya!T+}DZ00<{mAZ&A{)7KqR)0ys1k%+C3xQsL>5+}7BS}CK+t+93^r*TeS;hmKs zm>t!u-9X*#S!NPsQl_3f4BS3dv42#t`_W|>V9h?USMh6Uw=wK%!qGi;v9&8)uzDzF|Zpg>mU zR%vNw`Iz`4kOQ946&F;>?tigwS2Lhba_ZerE{0a36=en6$%aIhUC6Phk-Ci4ufXG-59H z>EY%ab)Jp;(u13|<`<3}+lQ1^f=-PqbwekCw%MG7klJ{1YmdymeYj;YVW2<1#&iQ8 zxp2(SZ7=W62XQE_07*}~{@)lp?|(43!@n>%9!_1l>Q;{IGm0Q-pHw$rvpdhcLVut; zB^(FB#^w4RFw7P5XxH3w><37HFL|`#WPPyqPVnAcA_^zPG~k9rz1iEqVU{x<=t3Y< z+OY$E+&369u?a4#6M6yeK!LoOIB&l^Z?U{*xV)#iJg>MsFS(p8)KyAQJB(0!bXV52 z!k|M>-Vj>@5FG`Ywwk%C{^Gb|@i7IVO#;w{;L&T$r0!00h-XL`uGQ+}{3#|}f^~YX zackq7g*G<6j+h+dDURLAqC)iYzHx^=X#xq&f|f=@t?c!9~)N9$W25Yq`Q zxp$n`#_?oX7DW`vC46w*pXNRPi2an54EesFszQZ;_L9+kg-c`a@qTi8f70je&)#}` zd9~YSSn~K`Wey(DGa~u?7*$73KbUxJR!5#pC?^U`1bmh#ST-YevS$pIB%ccx$Bmbc z9#|3=!?l*~$EQbd*<&Y8I7GXtO$=B2fj!Bq+=3w0kfq)E{exG!M4$A;m4i-}Eq9RK zCD$?yjp=q<4m2oq?ZEnvN@nsfvq{7RxeH*BCb!M&gnB#N2fv6$D~W|Mj4zxK`C+S$ z&P)4*qrP4S)y$)5`JR8FAa!_fI=Z^%Ad-le?0Vcp%AMhMmjGbSaJWin<)qFdT|So2 zF+dHiM*~_nbL79Q8!0mr>y=2k4vz@m(Llj+Hyzcbs@Nk<2tYReK%XNYhoCna(FhWX zS?q(|^n-mC&M?bW&G}E>qit4bX$*7{ELqedV6I>vk)ma6`jc&Rg9$J%MVFjI7v}f+ z^94Z7utAB{l-Uo zdOK5}m(+Y#zd*RG{&eT$B5bC^Xh30+7sgci3S2kzCZ3#T#iemB z`EFp39`}7qDrqH`Em#~?Wd^POwb2KObu_NTCL1r$Xt*u#!!Q&$%7$h~#0bq23t>0- zt^NH=1Hwah*c0YqDywAH^T}7G<0KEKB6-;I+psSSE)!VgcY=erk)Oyg?Jv~$sobA3 z(nw?dy2Fdc89$ z?NdV#V_YWdGNalbFX8$uTHWl~JV2&NuDcxXF{q~~IfIC!axUMiC!5TR<`@#8YWYbp zJmNK3cv%u=;)1aI;sj`uUx79`1@OlvtNyXck2FA=jPpoClAwmN9}FB*np5+cBMxdJ znmfbBKv9FCGLhfW24#QG&uQ3Iw%^JC=B0X2RsUl0q5sI_eXt&T6DLiqf-PM(BM2(I z>Kg^8nmCy%bjQ(cR{tQ`8RsqCaRE`*V=UJH#U?ufZ8F~;j-c0&t@D3KbO!G&}J5C4@m4E`%^c)USD zp1e+uqPn}vW|*WF%mM`~HjVIiu;cho3=kOXz~(2L@D4?#%S9oKFSn4SBM`kp_WEWv zNkxusE+72QOykV!Pthw-QPJ5bRUNc~zqR;3V|&ECKpf{3Qyj!`{_dD$8j+Q4 zv%assPdQA>#gp15!*cnR$=-GUe<5O#7};+V;Y1yX{pvNDGIuWzi;bT~`m5#& zT=RkqT<*h(aVy zZz#%J+b`8Yjk!hVYwFU_?hWhevrISsYk5`GkUt^+lR5tr1wVSd;Kv5CZhiZG)#4il ziR^~nWDih$pBFVhJKmh4wm`{?2|Px=mhF&7NGRqq3C&K~j2^$Tw7pg>xPxTwrf&Ib zbxAtou;2b2?kE6;J5v4;?tsOy!NEC&Vb{+zE?yZfvZ(jE{Ezzk&ZE;ABdj^oV9id# zX;Ta*DpvgQBBuVovK=x1mF+kq-;n&5YzGvcv!b8{MLa*U`h?kDXq&DfUX;{K&Dc-E zx}Hd29QEI`9j@-T1gfw(Id9Oamr0mw6Pk1D%}#h%MGd9>gmqP)ff|CjALyP zr53H@^t%J#WrauQd}y+O#y~qEv>1VvVujU>88U=gDhIoL=l(x}9ku@mc6?S7-Y5>} z%CPG=2;a+P+HJihi_IdPQjRk_${b=>Wn!OneSU)|;Zk64J1;dx%L4(Mod^c?=E0xT zI{X@`he&(*{56tJsJzujSN7B9Lu-x3O%)uJ&1PXfApFm+?;B+I*M-{X zg<1qvHciTq?4Ttc6f&ftWLEbs^PhjNFPyuSPK5}H5&ptM>fX>!4k;cPkq&Z+Iu0qU z@6=6)$GDilh=(r-<|E*{;+ow8gXMpQ@`7sp|2HU)-v!&Tc#J`qhpfL_+IR~3eZw}1 zsDL(p>h3iE-&DQ=r1Ic@qjI_bjmo_sJyba^IWJ1T9mQb@VxTiHdQpZm(EIDM=w>u; z<3+(uG2Rq77CP9QzDEGY{7XUaXtIz0Va8Yg)r`AK-mMmIA?&M@@hl1}a)`5YEQD6# zWr=+UVtb)+hKJm(f>p-Gz;4(b+xFZhKgRA}nIO6TDjVYk2O}Il=7=ojm;4g=$u?us zKl9AlL^2HT{?w-a#egim{O5^Ti(%X{sA{KGPi!LqJz%RJ1nzG{hvR%1!YxC~Z0n`p z?w15GD#dxwxY1B%N z>E2fr=0@A!qjOB+p;_eG)H}JMO|COb;qtVZ)k?LQ6R@wRIx$BE%)50puLD9*-IieJ z=+7&|x03nXG%$kW2_F}#A5*@0m3bYNxHV~+IVK755On^`S*mPlx`c0155r{ATdS^Q z==thcX=g6JnALphvy?cmAg1YgN~dyGd6-56(LLr~d3jwe9aTwc3J?x zwF=;+uf@ToPt@K#EZ1*q3y#P13#KiA+}vx)*4PGnv&C~$SNB_vO5s7rgiPj(MtEfhfnmD1-_n^fb_7jCxG#uluhf)Ux12^z2 z>UX!ASwaPZyxF|qfbsHGY^^27NW#xMuQPoS$rWdrzLKG6?@6m;Zia3mn!W(OJ+A^W zx=v_H@COyA)0niJelEzW?*Q6wmECNj>aoGd1VUt^NoHJ^JGPX_f{c1NtFjtyi|$rI zj4ymS=3s`}KyV~9IC)Q8k{z*qtC0<~qXcpR7uoinX6AGST~q7ZT=j`U4tXiD}Wm>nWU zTfH*$s@IwPu!8$&Nl4!kw2@4iQ^-NMadw-{IfN)UGn`QL@=1k9|6z@=pHX__&`R z$<3K-2f5a9Quv=Yp;VsRPZ?NEjVs7P7{|Ay0b5ehGcW|31yx{~ttZ)728&!{He|)e zzVqDOayd3ywj~|1kmfKKmtIjGw$~25;BnI))}0!Ta2JbU$Zk>Z*yQ{@XRnHVWN!T) z8A-_jWZlZ!{j%G+0ZhMEsTp=826BtGAKk*HAFLEKiW+S0si1^l84MLJz*?G}sn}yg zv$mPAJ>{t?iEZDA-tfEhB;0BI=b9G@uj&8^(dC>A`L6SK-Y|wZ1Ro~c1>^U}CR2MW zGrghhxwLRZx3asRdNdFY!QUY5VP9=~gL?@bWtN`6JePBOCkq#gAL%UH3);dX7Qe2=w%Vc$nE1=Ju9|^KAJI<*0=3hcrlDV>w68BNEg(J$x5zZshE-_0F^RXo!^=Hi>E-N4yb8f_J7G%`hc& z_DRwDeTGcv0mEI}o=KX0g@A(J=RO{2x9*^w8#qRLJ1AU6BNF~-fpsHJs_g@nhN4Q07-D+Ow}lL z#n4W!O=U}ty)Vx^7YZ2&mcG;RR$&hwW<=C(+IJ*4$p)djL<4mQ z7X*1{h1jg{QIk_y9+lpc$u7tW)N;|N9Yp1(9{ovigvhI3<;NJ>6V=Q~R(se@%*9N@ zO)FE*?MZJ8uGNbzKuIBoZ8x*m%${M0r){ zACXlpFTq-?yBaKF&;=UEED555r zR&R_V?Epl7B-V#5PyABq+U!@J<9R~=rmE{yUU4YxAT#I;sJ_Z@eK%12Fd85%~1*TARA~n-s`)22pEWM%(}~ z=U`Q^sBMHbi2|!+!{R~DhNpxD88dA0U_Y45i;~3&!cwwAP=M&a;kM53A(<04kNLhg&d&F9mt;591*0c~gQStRBr6~o5f zB8EZ&96cd5kJM+uS_g#Ve2(9?2|^eCIf4mMFSQ;>jpRlV=#Lz^C7!Rgq}xh!IZKRc zn--u&!}Cs(1-19g_|#Q_L5vokN%H*Fym&_GbcTcj=Eq>i_M;<@6+AoQ@GnRoQB2tP zem7pT_lZ6uVn&4^EI8~RDCn1BLlvD;yk_v^q-ey;YC+@(pN46J%#@okg*>t~LJ&`E zl-@4E(&wEPgyqkH|DH)mt$aAgychS`+DU8fH3=)ag8wZ6^8%rK zdm0CPL%3HcUcY4Rew6245DVU!Uz|%3$$XI{DR}BTd$D8ZBr#PbIx32OO+gQ_0q$`; z?tUN@skz*ig;Mxo{OG3WFbzh0PW zur2EN_%J%W@q;2*#lvXgpwKCBDD%SW&4^Q1@%;hlp2)?PR@7HT;$idI$N@9=+c0I? zscOa`=qKL-qg6T6J@H%_gBftkN??7zsS=_@c9gojE$txOaJmLZdIh(@lKvzkxvYd- zZ6K8v2!ytoBWp$LgF|(ID})veziP)NsczvAhBcNyS&P3FQy}&$@*wkDB+*ukg;9h$ zC$=eZ5QA5aw+W{qMI)n8@t~Td5{f4be zv0xv!rP~Tait~x&2*cBHfKOTkTn!Hpv<~soWY0I=xCc&XQyOyafQ%dHoCQgq?}4&U zoSo1@vH^>E1tu8Fe6Yh%i8jkX;_2O(D!eZGXq2uRfLp=NYDQ=XkhtffHjL$!-YW^4 zB6gP)R!WeFl#MT?6!`Qa8f6$VWi#?H*KjOuR^!DS0hRY%u6{E!mcvXBVxM~?ZpXQ| zHIk4P&mr-<6e=i_D1SW%2qGcLmW#CejNG+oA^w2r&q{0Ytpcoj&(FNn{EBh$s{IN1 z;%nq*fVlTh@MI}Q3|~7Dx*#I3os$EyWyy7rwj01hY(mAzz6b4&1c1gXdhTaYj(YJ6 z);~+C^z&foqW{1JjKPN*sDO+7d?d!D%H4*+3l0x2Hh_3A7bn5t1GR4uSXH|H(B${i z;4|Rjh@TD$F!VV2^@`S+#HL{u!kqd^XnPBbQ8G6Gy85pE#0oc4z3V*_qv_ZmKLvx@5+%bFcCUna6 zb!lW=J~u-k>Y+UB3hjibzi>+;E}|_;ko-&0jHn@LtymS5w7t(KWcYY>6;?5_VJZ#W z+bAhyJ_E7JFCkbZPfB|o+)O2uh_*B?g{hWc@gI-ZNMY#Gx~`OP&%sN!`sZK9M6qv` zp+)HykVyO+8NuzJaaXE)da9m-)An}pa3v6EFLND_c*-8j%}8hwNI7;Zh{Zl2=f^98Bz&b0 zPLxtLS}niuG$PrgR3e5;q}^3XkqwK5Sr%>}M*D#WW6&NGUr8dWDL@jGfVdPNMDpd@ z(=_IX*3iPgX zdHzKh9d&uBYcPz~OlahM<~>Jxua2L*mxq6ow$_B-Z`yRQz%qM@Bk^NIC`MB_@??8& zhACzD90ofiV31CnS;YWXLL#@&XR?4pJu@!}N`?nZd?;u$3>)7eiAov=hPtpuqz&d6 z6x!B@f;auKKFX9qT2txM4VEARqDTUX%2zwdB%Kj{<%tpzouYV!`VZWa7^@k><|;fG zk*oGfR)aLsVv)qy*ih(s*C)YZHqYVuJCL3vklMI@VUR_byowzc47kfuKz2dtt_q%` zKrLll%SzHtg14*4h(oY&?_A*^LL5TlryR0w!@YR?9|#%3$Az8>jwa&0sd-x3A?kda zp_migb9vA^)7)iDx1CW~g1A6tlau>?{m< zSvF!#vt~FcLL!f>*xu>FHeY^Ias_uT_Y{S(j}{q|v*Zv8pY<=8g4ECWjZrqU2l2r+ z)S?IUNEc))aV;cz!L`MNI;0@o>>BJGteWL)Y|UItkNSKIl$oG0zxob#)mkG{b)*aHtWmD<*AvDWfun4aEZG#i{9rG>Uk|&siy+|? z_TCBNFymLR7c1@SFo$rZC%oEwOLcJB1qV4nJ55*Gx|1qW*wQ8da=2oTgu6#roOlv_>yg53*w z5qr)P+byD3B2`Nj3rle8w(I1;k4s07jdXyt6^b^z7T>T}q|xtN2_XZlP0sXoGala| z5%vHhm|xP-k&uYnFu$Y*od!CH&R3+0S#~mHSK@ZZ*J(7VLDArJ{CZpt;oA$K>+FtDmwpw>zy%Y*`w$0OwZ8J2Rz~P(d z9PCTIYt5HNB9sybVuen7dj}6V)5VZSs9F=9XAl2fAmu0l ziyxFAMJMb|0{qg5CNZKtm?2!1IzWJOX9{~1g`%if7b$UME|puhu-1^?QQa@x=eBSr za$;Vxkl-Rxy++?Sbr7X$+kJh)0z%1Qb=m-FM}Nv>@W6aIn+iTNhhqtT7!14UDSp3z z`x?sDI4C}0>rT@*p4O7xFEkikT*v<>4+-%0Q^&b21P_EG%tL1(4OK=^V1l}Scm$-g zf%zghDX4jfQFMLFSvg`aLRLt(*^}rw%R`RQ2J}DVCkidhGpGjXhnCUbf;+Y3q2?{T zvFdH>5T_c>2b3m*{+9R_JotvUgHGJ|pj(zk__Lr&sL6BvRCG%oMX)?Wh-TyAJ%SiT zg5I)ZLx?tY9NhqGPdw_w`C1D?dLEuc*h4}BYy-wN4sVccq28_`?S9M=bMgz`I5!3YsG# zA-KldkR$c{M95Iux&{srI}H>TG`oh1Q7-*a9>;+$5O_*7f#M-gr0-N&^a{|t>(YFv z1)`e@(iN&sS8dNz)4JhNO4abpVV7QrI{`2dYv4xH;t2w7LWp$nC&)r?Ar>@f2cN671-`&m8RZ)K0_1{6WJ8wF zYseL1X#yyrx0qp&92iBLHUv*ZG~k)9-V6Wct+Tc$+#wrD;Y+$C&3DF!(@^ggUTWh94G;q8 zjg>*5fug~a3A`n=8J9IEd?g|+}e1hjr1BR;YzbT5SfV5>N+0<8x1(eQXB znAvvl0Uj4L7Qq$Gf`q6_qY@IY7Ya*4zgS2G#Zv{b5C{1SI+=`fXV91s#az;%8=-lK z5nw`cAUjY@@|0+DOK4~GI>;C(u1eJs0S0j5Q8S(|Xc#E*Hhn_$N5F>6r2tGJ^Wew< zHH}bNq0^>EFr2PHexTV~xDEOaAv*<0oP(2uD)}3S$x=NZlkjKs&Qj)~wdH}Vp5hA&mfhVX`9L_CHA1`8$QwaI;t4^E7uTZyR#Bu7w6o(v zC07H!zzCd#8lFc*(x(u~;F$3?$+YCL73RBcL7^ZJDWwpiw~US0Pgy&2RS0Kwz=1u>o`aySBc18XlIB}mUUb&#VIcWvOr1_%c@M%rdEJc2tY?GV0e9;c9XhY;Y?z@R-L2}d_2PC)UcNNz}Uh*k}Bn+J4b zcZPPhc!`LhHJ5jILa&unLp`Iv;P&9sxA_xNWxuRQI-ta_03PbCoOCcHL@{YFUB$pZHQp~bE#^12!=?y|#!((oc zH5y4W1qblg>Dx3U4+xFa9_dhrV9KK_Fc#@2;=Ist>Y1ROk}$@Puz+0&i8IwLOJe@N79=QM?VUfc(Wc zq=AA5H~{9a8YE$kOFbThFsUZsME+cK|6PFK54~vHYLlv?lO059x{Qm(0 K-ifob#{>YWy)Y60 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3session.xml index 460c9a7dd..35060c9e0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3session.xml @@ -7,22 +7,14 @@ - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a262999cc90f69967f9bfbe9098daa9dd68317ff GIT binary patch literal 311 zcmV-70m%LziwFP!00000|J9SRYQr!PhIcU(zCU90*ys5g-{Q#lf+6wJ&gDi{ z&Y+v&g1aG~A${P$1+MXk!8;ftJ0?!)5HFM0Ra;!|%cb+*XBx`~h&*6q0zijwt+5R! z08iZj&`msiXMomoa6n_6@bF_7KpKM2OJWY^KO*VSXFg^4qNZOYxtDuEa`k+D;lH9M z@WsjN!-$ag5+NT - + - - - - - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ddd8ceefe98e78585cc96ac0dadb030cb783873d GIT binary patch literal 1473 zcmV;y1wQ&8iwFP!00000|Lt7MavMhsyzf`!69&LM4>{!GiZ3~(eBGJ{#@>oZG33&* z^Yy`MtDWCsAmP?QoaeFCMje- zO)#u<^@4H5_W$0-S@FIj+04_1NB&Tm8@JQip=z&QHLUc!d>S0(04B<8FvQWpJ(_V$kJZ-?XNw7a?LuU@NLVO0sJ1THsHC9D$mUI=@( zXTQxe|B*k+Dl_l5Jj*HCUXD5K;l75e*X~!CReh?ydr{x4+E8t%Hooo7G%Y_&^5XvV zUKDD)dbME%R;8`dR%xH!_Ed%{LzUrO?y$SZr>nlx+iR@p>ZQgNRkaYc5VeqRvDCUH zt8`VmD&0Gi?#*}qqo7&r%Mlh>hRj;bod(rC+$B~QQJV5)I z=>RI+U~YOIoYdRY+tk}G9S~HqDp{56eMt6}mk(#p2#@>e?eZTg)<1$i%vlaPJuP5` z>rYVdX@pXvQ=?O(yL@0!)v9V$wRfZ1TV7F|Ju}G4JiY( %929~*cE2dKjJr#E;W z-_%#tS6`;DKF0#dI?O`KHerbGg6|O(U!SfiWhNp(7hW9Ne z2$iqOSLJ(u^1bD?#`L$Z`KOmNR9sNYSG>LQavkpi+`j5pS-14l3u^g?kM7*kqc5o7 ziyu&aa{pndm5Z@0WDLQTYQWjXV30yIm^1$XKNAd;Lx}~VJnPWsn0hH#*#?tbw?0dh z8C>=?W!X_oLhFq6g$i_M6U11OAqm1En(P9EN}*!R7Hjg(#8%L8a|~`-Z-8Do0|ksO z=A4Z$p%)}4%4CBOB*+e?WRPP*fNV?4&b4lH$q7nEtR5xE4P;FB(7kWTHBR7+TOtET z4!J^-AU{AV7OiO(*f-$76golA&6vavm*v8ci71*HC;~QugcMydLFzOl2`-7pp%|#H zgCR<;y3*JhLCpFPr64j^f|69{Lyy>E0*Um-H+0d2-Z-}u!Ap>IM$$)A*pekrls+stfEzGHD@_$# zN^s6c>pF2MMNaG*!qV5+sUVZB?`YJ zk?MS^3%$?{jY`6hr2oD9T$0eGc<+cpBImg+QGPI7Q<0vC$XhG&9bBwXd$SR0YEMyN z2*D>Y10pG@^kNFf##F@*1pMcyI0O_4n21uHC1Eu5R%p>9cR{i(0>UKzAbd$|Y6Iyz biQ`CN(j>#eHfi!AeKY(8&>{7oe`Npw99-m+ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__verify/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__verify/why3session.xml index 3d3840d29..f2b04d40f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__verify/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__verify/why3session.xml @@ -7,3152 +7,872 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - + + - - + + - - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - - - + - - - - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - - - - - - - - - - + + - + - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - + + - - + + - - + + - - - - - - - - - - - - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - - - - - - - + - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - - - + - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - - - - - - - - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - - - - - - + + - + - - - - - - - - - - - + + - - + + - - + + - - - - - - - - - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - + + - - + + - - - - - - - + + - - - + + - + - - - - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - - - - - - - - + - - - - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - - + - - - + + - + - - - - - + + - - + + - - - - - - - - - - - - + + - - - + + - - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0db9530a4ee9c7250ea82924ad797adbe2fe8943 GIT binary patch literal 14430 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 z z39RNaTKkgXl#>G$R86j9&Xm}5;9`Fw4jIv!zmdldPRgn%v(ySLj)UHWoQ$0VG@)yv zDdGw)e^E*CX$DDp|9WdfvAWbnU1fw4279>(Nea>a1i{5N(NZQLNsLOabcbZ08&5snCiMQ9i<*S(`915`?dSRDyz#LWm%U8j;9K zRKXHF3)TP#aRC~!LhlT9%5g8K!dj9_4grs$Vn4Kq2T_vyYx$>L-*{l(K#Kqv4tafD zw+yx?v!ZI-ixN6yLM(T865A^m zC<;$_6zGB^EV>KsdvQdeR4c5iw+3V*5)mh=5MoVEt9ffz6UcIui-vXPdu)1QkvW%R zbBIHIDzR^6s5c2Ju0;$JO$9n)!p#-9rAwN^=r@I96c6Dh`Hf+ceN1F9vHQ?u$*`?g zlz$XzQ?s*GhY=4lV6kESpqvFeBO(r~Hq}13O^!p=JHaU*&@4NPL$&gFc4uhwiK~bxQ_x@Q>kDR zS9jkQ>g1s2l>{nRe4f;^e4@tGEE;~5Tc)-PyQYjXBUQMeprfUZ2zS0x4+*0LdBbvu zALFX?9AM)X3<#!3D2D&;J;R(jTDOi2i(l}QjHUZ}3)mk~ua4l!lEh!8t`*D7q&3N* zLOJ`p5>F|y+vk8H%F4*^{G!efod;ml;Xq!8c!fllR0~^kqSAfVR1kq zDR?9&x=qB&MUVbO+fj1|vLWj4Rl-s$N(Eg)odsyv=g;3@E zRX7)7;E+n1WHxB30jm@@ZbA?_Ng+EV%0IpJ?#MwEZh>^W)Ur`j z7F1f?P?Unu=ePwED72v?7c*ymb(qA9&U&a64;IZl?&czKk3mT9!m#Kw{1sz zC=vYvMPw7aXscS}sbZpfs*dmA34g=iJW1NVEf(i{MjVxM5 z4qswT+ixdN#p&&=s9h$eS+e7tesAqCn#Gk2#!yackI+SLbP@f;4Cfcw<*tG*lTD>7 zaP;1u646xUgO$1aWl+x{f--iJXqGAPy;?ia9?nPoYmqOyYo0lx&XjVdr`OvGZu2bQbZ_osW& z`+>eu6^-iaRRS4)1+2qnH;&xvMcpWSy82==9(x;77}dT01~edbqQQtO$%2hUk`SzikNMVk+2P~8c>IN9EU28Y~Ua8x}KSZI@{2; zWSpPFM$VRnMFUjUP(p%8^@>_z3VNo=}B_vGB2HJNFR+6aLdMGkROMgvx|ctLDd?GS|_H^h^W zJZcYn#-czpwawrZ1~XsGRKRgV@LW~a!f1{$Kxvy-vXESiZnlO@rmVVXq1zpiVSjpo zVEfAf_A34-rk@fOXjgy9$zk@&BaZ3B$)U!uGg0B#8_NJTiIJYwQj_H^fg2grT>7}1 zA;o>rE^NkgmOT>^L#Xr78#>gp$9ff_-#kBGLMw?%SWg|Lnus z&4$7uo#spCul+TS)7N^e@}W@C-Zm>T4S64bWCVWJFeEr{YUy_ymCgbU`JtjvX*T$|Os_c%TD3i}7#& z2&+>c?Qt06u8`r6?xm2xnwDs)swD#Fl5UK66q;QmLo8ALl7QlnQ{=Oyy7H?{`FUX= z5n?j(9JFp4-ER{)&QMwDii)v<*O}rnVgkUlmZ%-AS}^heI#sJYA}u*|TPzx*JBXE9 z2F4ZiTtwtVPL1vbqROV!sE){xp2)3lkB>j}-hg()ARN?_v5P+Kz(!)cdq>cz29Fk- H!a@CiQcz - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__icmp__message__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3aeb990163086fd569cf94c5290dab4d9811b515 GIT binary patch literal 1870 zcmZ{gc{mjKAIDv}8iXM^eo{u05=*YoWZgr|$SfxJeGX4!9XZRj?g_bPT@6Y|j&crz z5HqgE(PS(!7$MAtQ9nDozh6D=KF@yt{=A;o`}LJg<7NBn9dDNCpyk^H2KW98B$Z^d zmEPk7Ia2#4$d4SOm^RZJ#!a?i3)C`{k?$b+ErmU@g}UJZ6}sL7>5-L`$gq?pKnUwG z+Ih*rmwoMj6dc*xXrz8_y*#u2$<-b;^4|R*%sww9HcSzZ%>%_eZIRBu8y%%9v)oJi zfI|_cpfoac*FXQRh6x_Y)gAi4DhZ4{e;jif)i8A@df#8mDY-+GSOq$cIg*t;ORyTu z0*x-x8b9xNMwVv?g=2_uoYMWeRx6(t8ArPZ=y34VdLMr1S$J%0Q?BzB(bP|lc^z4r znj?K*)W6UUnm3i3Ka4HzOcflfqxTt_9~tX?zo&HX@R(`fL^q`^tKUy0WmUVs?7nn3 zHLBUV$Fu)@aAbr$@C1ULL@SJ3s;|_Y8neyUIsAG2P&f^sLPNvDYjq3vrpe9*edsdc z_LzJXN2z|wDuvzV?yI=m<;4;08&kO1I4iIuZN|X;`yd=)Q{M0$U8p!cfwSs59)4N?s&9OQm z5aqpQzDE>iBLCxlz(ij0G=>v0U5P5t;LV7-F$%yAXDHMjG4}IqTDv9R!aLGq0zdDtx#4`@904eA*nO5`g1xqaGscK#lnP3xI}$L|uSAB3^7j@? zzWM*J`bKQA2qyw&>nri6gSAaxbGr>S;xKd3wU}~-Ir&*h@tO-Fq^DsmZmufo%z8yWFDO%*&4lTqo&S9uc2XV9L1 zepFjD>0~hi8p6$@SpT}(u7sXf1Hm+2IM*u^2U!x2za*IdNu>WSVa0r#b&t3SfR6t; zi$x4Itg(oG)~xRc_)_BELdw5|{2TGlkbtit$*hn=F&Wj4e61&uDgPEC17C7uzrNoJ z0ZTI;9JPvngoG^QJ@}9{{{qpE1~NmnCE%uec-X#^pM20Y{H~E#{(cKz=j@qA-h~1+ zM8ORwknifUqFLk+F_sqLg1k**DDAMlg!K}sS6#>>(a%}0ip}FOYS@gl zdlOB4Zpj0JX|f{X7FJ(YepR5FEOf=p3GbkOk(l6|m6DE(cjxI3d-q$ovu@|{31;`! z*nVjAPeEggCu6B^wn^l5`c=BDNh!XK#F$msu0Mu!w#5ivsPbvnB$*|iJEFtio=Q+f zq`+p>1IWjX z%{T?Io2>(srG$L4`13cy5E-UoNnRfJVuF+Dtx79u5nWHo{VI2@&z#Rhgyf^Dl3Jp* z_%8&hb&Gnr`}_o?D3^j+Jj2EzozLM7*>nY=c*TFwfuU~SkXokiB?9#jz$6ZZ_*q;7 zrz3Qd*KjkL+;fk^LXSQ1bbQto)gG+n|w%m&+l;tW+c~g@4j4djjow1LJCwZV#s(+ zzkxK_a17A^mdSX+K(F5z_b%fYlPlo5j8>m=gCQhEGB*^A@Tm;Gf2y;h)W0}A?QC6w zT`C{7hHh4<0lldqF3%2>uN>|>&H~48k3*Fz1Z0P08VVK?EnA( literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__in_ethernet__contains__ipv4_packet_in_ethernet_frame_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__in_ethernet__contains__ipv4_packet_in_ethernet_frame_payload/why3session.xml index e9d8606cb..ebd33c5fa 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__in_ethernet__contains__ipv4_packet_in_ethernet_frame_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__in_ethernet__contains__ipv4_packet_in_ethernet_frame_payload/why3session.xml @@ -7,30 +7,22 @@ - + - + - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__in_ethernet__contains__ipv4_packet_in_ethernet_frame_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__in_ethernet__contains__ipv4_packet_in_ethernet_frame_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..145bcfd6b5714eb9658d6ee3ccd5fb6962d438e3 GIT binary patch literal 506 zcmVK$c{Z z3Y>pm%95QnXn`iF0UPN;P`nR56qv&5sCQp$#}s zry;}b5TA6|z<^m?-@^^mecx)_fk&e?SkTAOyLPWN#tr%oqt?#D7PU5g7jd7y>(M#% z$ukUX6SZrwwV@(up&Q#)4}Fsy{bAc3+*I^1yMqmcCA1>1=Z|an0Pc|OmYnC#18t75VLt`aBX zDRy=F;-8o=Ui=Ai7XQr2-pH9KBc77mCK!JPP_jGK|M~5(U*FEpayuHYpi}Z|=#>0V zoszz5pZ{Ir(hL6~y2R=l{-{25pU6PUqAVP6T9}#|Lu$&v)WlK(f=T;{-ttTcXO(pl zDL7O_=C&+Z!Ck3 - + - - - - + + + + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__in_ethernet__contains__switch_to_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__in_ethernet__contains__switch_to_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d0d694be40120f62bbbb288b90f0d36a16f535e4 GIT binary patch literal 3074 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 QmPM=o1K-&Ux-F{!01D*ow*UYD literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__icmp_message_in_ipv4_packet_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__icmp_message_in_ipv4_packet_payload/why3session.xml index e2d503ca4..dc168bbdf 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__icmp_message_in_ipv4_packet_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__icmp_message_in_ipv4_packet_payload/why3session.xml @@ -7,36 +7,28 @@ - + - + - + - + - - - - - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__icmp_message_in_ipv4_packet_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__icmp_message_in_ipv4_packet_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..36be2cca7c8a5aaae8b2a676e9603f178eb2a077 GIT binary patch literal 738 zcmV<80v-JyiwFP!00000|LvDeZ<|06hVT4}-g{xccctdwOI1rzdZ~O}&3@3J5FoIm z>A&w{{9VUNC`lb97qqa$@b0`bkL+*>HayJ1{Vw4)w>mHHp~;~P{bTsibRND!(fVQ8 zUlM;?hu^xrhT11#egzj`s;bcb4jON@1_ye5ZL;D)>%6|FTGwE2e9+ofW$+JiVY)2y zO$=-6A`d#tec{?g8XuHhQRuqLV_>uV<{ext&~kMN*U+wBU8K(!ALj4{LZusDKTYmZ zmbP8fR!x7`wBbN9{Pf|OM<3F)2Z_*vSR~-{N*@{{uz;7=XVENL-iD^Lp=+Sf_fX_+ z>LRRN$1B&Pq2I5zU68MgtsCF^!SDX9_5RddiC(%bquim4%YzJup2zHDSmhxGtj@Zi z>wsfEYQ9}@SD^wZ*4QV#`JDu_;yIi7pC+q3NmlvR$SUmz0A3FOv;X&N>w^hXGGX?dKhbX+ z8A)OsD95Q`#7jUHQR28WRuE^1bHaW?-$Ww4unIYoDkKCrEJ>CrlrkGb7*`?&r3qu! zDJF?ynN?I$OqC*nS%Vb^L0JsK35QfV?~(EGbtW+ZNjb|L=Lir28G}fI4DuO@0bbdd z!%F37<`m(a2$TWDAetbIiBW(p0h&sb5#yt9Vqz+TIqQR10$3{MsF$g-MjF8JOW1N` Ud+9`^F^DIB0N<^9u)7oh0GY9MKL7v# literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload/why3session.xml index 40f3a5c68..89dcab1f5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload/why3session.xml @@ -5,192 +5,167 @@ - + - - - - + + + + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + + - - + + - - - - + + + + - - + + - + - + - + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e4f0a1d8326a16056dc2a835b4241d49641ba12b GIT binary patch literal 3057 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload__2/why3session.xml index c58afef64..a9ef3461f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload__2/why3session.xml @@ -5,192 +5,167 @@ - + - - - - + + + + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - - - + + - - + + - - + + - - + + - - + + + + - - + + - + - + - + - - + + - - - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__switch_to_payload__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..81045a2e7f9e2cd3744b93c046b781ae95ecc2d3 GIT binary patch literal 3081 zcmV+k4EFOMiwFP!00000|Lt8%ZzDGnzW1-#+a7`dtl}HU1n^~$0E6shp{u}GCqiV& zk>uG-e*G4^Wxd?8TWZ-O+w{Sf*<^K*Ro};Av71_bapUnK-TnLa&k>B+uk_z!Ili5L zO>uJpMtp?7y7+D8ZYN zfAxrc{#>QoyVbYx@(*{Hs@0*+pWJGm3)~`w@z`a}$BTOUH}&Q2s~C^(7W36S%%|gV zn%&>h)#crEvKrTuG>uF5ds=O3jBH>xB=1>4f6nIrn{6b;$ucYsB{eqLNa1w6s#Q9G(wF6+j;W^p)XJUl|^Ci^oH58`{YShg!Sdp6MR0pTf0J$hMH}5V9pE_>Bbm zIn^f5JWc&IPco`FyPrBdS!}#~%cYMwst`~iph7@bLO?kl=oRHW#_=Y$I&h^& zVOFQB-8{n*H@_X~wT$;$_1$W;PDv4?JRTbE+E?7y|+Zb<4c6*X(hVVWERukBV1>|ss5S@-~(_0 z_U8gDTu`{+O>@B^6;$r0T>@w)yDk1(_`|!#f7@s59}8f?f5HE2;Quv3flL5-;{Sob zAE2xN$_k*M{@u;`Ppklt5d$>X*PyLY7PKlXP*|X_zz1T1{4C+^JW?DGObG%C{0sa) z6#SbYV9fwP3{W-#3Ih}d_;?Jk^L`?>A6x9B81XY67J3@|iolQZ4DgdS$d7@4{mR1R zpS{x|woQ5fH}`VW%>(ddLA?NYL`Z9oECu`6_K1{SZ$WWNs_1Ef587>0#oh0i91iH? zM@ZJj?RbRb^Zw4#wWOA}Cw}yM-2C{AvG=?=K9gIfQexw&kG0pK!sLy;E3v}11UbuFo-p6{a7bKS^-rYB- zPNQBt@PJd8x085JW~Y~9-b)kj3-j(Xw2QC6y9WoGaqK$Sta0GRCEC+sIfV6#xi<%; zva?ilmh#S0>@0=OQr1;!y9!NLq3$Z|>{n;EI(yaGsqQ{)3J(vIYA*iZejFCq3(6p`W)xKh3cPokt&Tc5z;86BEwf#l+Kd>DZY}zn)zBTiM0zHbPfE9j;*? z^VFmAunPg_>|>s?jd^Xmn8%Jo-I?UCj}tDmy;d0ErS{j}I3IlM2OFvjMfH~n=il*j zRVQ;t7Xh7&^!Kp6UmmM^VfGoy0X<2mmv;k7air#{2bb7}C*F7bBX|6@@?$u$&8xOz%BlM$XtxLqNvO9JtGgZh1A z`WgcG_n$!QA;gsAK}jBzH!@y4<9b2Sd%@_Ngm@vEq z=q~+bpD)h|XRCLSu;cu_mCj|)5Fx{L8F=X7eir7m80Xw$PoCUd8Xo;Ty`TMR#_z?u zuV?;#q`gnoRplH9j*gpXBzo@>1_lfv>7+ss;a~8J;8oB_V=JjHa&KxaYpu9Po$8ta zcu%!hWn`+sXyH<<1$YCs0bK(o9W+RcR0%6(g$yRtHV6#0i=Ib~7Luq{;5F7%iB~o` zBb2eOb|DJInLtC9^|fT&1g^4D6*Jm!&kOxEe(^ag_6uV5~-9| z)<@&H4Vo&M3bo~&WIlmVUmJKYQ>aC z99ZReOeV1)r43d~lEH%GHq~U&+DFW_pu%7{3E@sD!MHS*X|5D9VQU+?&Nl?CYAet? zbeh*>W5GkLEejD8&|JY|b4Okw#^At$QprV9S_!Y~pc&Vk%OqH?C90qjmy+DjCUUr% zn+$)dL2l5dg>P9bB1>+eAM|ub*TnL;yav>9y zvS<=!2L)XT!7K;T$nc0{9ZlMxC;vhlksLYKGL_RNabGhkQxvDyE;%HGbZ=o~Xndm2m{AQ^a)JSs>kMh4zCn1ISyoxC=N zppu+7&O{!NYXSt_Ut{hgVx>*3RE;uVO3DQ4nyzEASs>&1IjY6ktDao;9GErJmQ)%P1b$L`#S2Q>_018fS=fM)68*7;%Cz00sBy%lO zS#mzYOd9WEk))d7)x+M^%Xg#0i!LD9DU7rx|E+GC}sIK4co?x(cXb zU^WEjq|(;gL`JAp%@c(aNi=sfgf#k}C`=n7C{9B!u(pP1-dLi7#tS)FNP!pGSv}|4 z$A}^Z<*jDg%9_lZd7kDKnw_{#)=J{&z=8SbB~1w!LK4_8lYpv5A|{$Iv`>T+MqEu) Xj9Ldn9IY_xC9wKGjrPN-@T&j-#IOQu literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__udp_datagram_in_ipv4_packet_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__udp_datagram_in_ipv4_packet_payload/why3session.xml index 0c4ad3271..cb97f20e0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__udp_datagram_in_ipv4_packet_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__udp_datagram_in_ipv4_packet_payload/why3session.xml @@ -7,36 +7,28 @@ - + - + - + - + - - - - - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__udp_datagram_in_ipv4_packet_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__in_ipv4__contains__udp_datagram_in_ipv4_packet_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..dd4c629fbde915d00292c54be324689f0e74a9a0 GIT binary patch literal 740 zcmV!;X4aop=|AN z+g}oU+l1e$y@tjnVSWV{kk@so>>YTkl>!55ef6$jFJre3-)*2(|LId79j% zETuc&*1mu8Z8(q&KW%vC(T8;HK_a|JH5TxBr4Nr0Si(!|(|8swZ-ei2=sc9_9?HT@ zU4*skWaWA^^!wGe3yPJojkm2G{O)(H*Qf4E{L*b1(#Rc zB0F;+vPXf4$G>GmgY7V{h;p%ZawqRzMqh_oN9?Jas{U0SX}L|vl11x|+3<$D*;gxPccM89oh zBnc+Q*wk>0OvbcxGUusv(m0z_L$d4>{w5M(jbqGkmu8GHOE@q|F&2h1lF<~!Ae0a$ zC9zge;~bJC - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4d06afff030e3466d2e43141f2b903a417d777ab GIT binary patch literal 427 zcmV;c0aX4UiwFP!00000|J9N^kJ~U1gnRvp^g#f=^eR$ZibD>#GEhsbc2_pP=greubIg8T!bl*LAs}m4NAR zQ=IWIrK62+FmVRoVGq3{>-mrx*@#W@x?X-=<6iy}Y@Y8Bp9cue+W>yY@D;u_x=|=s zjx^f969h(Ufxy16q3aLUx@m8$9jD|*Z!L~KEx^|H5Yr-xQ}2=`7cs;&xY5sxWux5s zoSh}mJPgMr^q!>7aZeWK5XW#8w;e^;ak>-wLX}VU}EIBe0(BdBT!!c zmA;3Qcw$fNlU)XG=F734hnB->^D6H{J=`*SWCN(NdfF=Z;dbXD%p;1xWw_#h)Pwp{ zK?{*lJY5DOe?%WW`(1iFZDyIMp)^`aT@aWOnM$sRO36j3s@j+@@~6%e3#ElNS_oMw zL8_HdV+$>rPDtt&k@zT5nk#A005>p$Ibu% literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__byte_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__byte_size/why3session.xml index d017157ae..40c84bb92 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__byte_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__byte_size/why3session.xml @@ -7,32 +7,21 @@ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..406933d44dcb235766093881ef59c62cfa876213 GIT binary patch literal 417 zcmV;S0bc$eiwFP!00000|Lv7eYuqpp#qa(Uy_bOgTJj->y)0b_Jr!TYXl9fOyk29g z%jVlxZfF{4Lddc?l#Ior)!i<))OUc+ag ze5|jkP@+e<`P*p~z2x(5^_55B3g>(t?*{&Xyf5bcMd0#v;*iHM!+6hqdsl(n^tRW( zcJA#HAM-jN`xYN_P0|0AqTN$1uaUY&>f({we0;t(|H#+(+~+l8XJoAL5iBaHy>7_~ z7Q_m@AhO9Ctp$FPUu=UclT#*YuLxBXKpdm)oYp=W6kJ83LFHl_Q#3{=;UjZZqq4DO zB9Wx8BGougijru33(|G6b;ejUG7?zt6L(dl8(J+ - + - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0ba6b4dd3324ced4d0823bfd69084d264da5bf77 GIT binary patch literal 725 zcmV;`0xJC)|A(0UqTBW_x{qV+b=u(e&>Q5U_n z6v#f_yR^Eqw%z?kYqz_h-EOS)+szQ~25VQ;4>_pct=hqcw)b7%2(LX`yikQRWmDUY z>%xM*m2?UUl+n_Fl3Dqxs9pL})aj$Yb`#=VLFET2ex{bYO(}Nck_-C&%4(sUUSxJ$ zb4ZJJ$lLWiNq^h*+pd37OKn_*gTuJq+5JV!WfzxuY(q>ILFd@){qy?QiG}?y+q8e@ z`H9~1EAW!S?RtHGyu0HD1Q2bRkIo#X+C+%W2%nX1zWXZr<-<9s8b^@vv(ijNnaa{@_IX!Q%YEDfxpX`Gb@32g~yZC*#kBX2&&i z0W_>&Li5&dpy;gkiv03*%FV`%iWwC%DrQu?i3)mkT=AFgsgbYSrre2*v`c$}9L+V- z^Xum!?bHdH&Yk%?*;G%!rZQH?;Z(-&6PyZJ9ivkb=?5*G7*B<=dXd?; z@l+tA`+i|A*STEha{UnH`m&uUG3_dUGAxG0N9zUlmWv*djOG9ub#iuFVhzo - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..22bd7a13c5763f0b45f918383ebda1e8c2b7a727 GIT binary patch literal 2454 zcmV;H32F8piwFP!00000|Lt7cZW}ogeebWB_r(A#-U&<=@IDx0z{tET^x7!i5&?>= zk=jALU%$oH#j-ArJ(d;8A_53 zr?U=6NFV)Iz`NYybczoHhTUB|O%wF@Ij3pc&SN(Y_NSJQe{^P-Z&o=C$KP=}#Bo=0 z#s5z46JFzJmgZl}$90pwO}dA6_7x|o!B6-VXYIVX)j2o#X~5^-K2wChyBoFXZ=9yk zwivNpeoph~N81i3-(}n0O}gRTxNXDTxJy5}cG+gz&L*Q_N9m_goDF~ujPFOIc5*kQ zz-fP#zgO40T}x*G9|iHQ04kQyE?ayNoIPx9Op`Q@Y23Bnade+nKacOfc}l83xPkO* znh*EW*&X$5S37`TQuoTz&)b`Aw8RH8h+waJ1pYJpvcLfj0Ysp(%+3f0{s@7`SqkiG z#S4B2JVt5!rTcnDfY86cE=U>;4#({j$6pf8OEpjfx#kT|ENGyvcl=b0Xdth5S<68r zb=m-KQAqFdmV;>Nyu3v}=Plv_y+uFumXp;+KTD|kulle0zexQf8NkQ5)j|KzrFJ&_ zU+M$re0lK|3tMO1^geX=Qydj+hOzyYW;5c%>cUrhZd}hFz;*u2nbUvz`{AggIb-)Q zNi({+CWL40q@#;0ZlsqColH|a#GQJ7>%Bg<48(9f+kY=7u6zK2?HZuwV;A2$cENS! z$|0XC)B>Gcfes<&fxNAHu5>xN_Yb>g@tg|q_{XQULx1&S{{rVX^<*IX<}2_2A@5;c z1-@YJ8>!EaGn7@nRlXgMZwDEf)!`UZ*K6^wJucEc_%rUoU+Ervr_T5ZxW`K} z+vgs8&OOZR6xcz_?^fnv_nU|NnR(diZPnYVx4p#MniYTpfPuTAKL>7LZr_MrwS}{> z1=!&WaIVGxJDdSFt)V)@Q)g&;(c?TCss&t}1uQkbH8p@o3pf`CSoLLdZUA+1@Vo^) zP6JH!fQ$2hIt{2E@JHcrod#U01=MLkwSb?mZW_SiB_w^hT|I3qEzBP~md6N-8H8B| zk_=Wh+)psB9&b5z{9GSHT$1^0JOY1WKZ}EBH3iw~5A5mBDSA-T-LAbs7=RkU{w;&B zf6oxe>z(Gnmv&4`>QB1=tq* z=c@Lq_Nw-er}mvwfK%E*`1!&%f}GoS)2>$N#4B`a`^PI^K0aTLw?tUK?-F5sz!CY< zh<}!Q8Y|%{;p!IhO8-j#v!TB}BK^&~Zmu%N++0%^PziafQ?iyB)NloA&jkH3` z{z2>7p8?+b-1Hb)haF;nkEPN_Q9JCA`+F>vu5v%D+)rNZYqFldD>+ZGuND$-j_ikB z6n(sr9d-=uhh7w2#eOPd`>}_1I7^Y&5xt81my7)LM|7wI`DsYJ4&-O5@e?1&pJCe* zz27{#!D2zwa`%=A{fel~$^TZ=***f;S|elLdAHI#8_HIH^n34Cs-AMHYXvqpf3dQj zao>u~orw0Zxt$9(&4zbw z4c!^7GRkC=HEQWxpdj8j$s{mmnBY3|$UR-jrUWP~x@<~IqG8EMmL(US0gsN;g}v0u zXXzo8J!9gq?(v?W`Xj~=%p|@1un9*Odw~B%Sb`G zQ9%6@DmtB#OwnktnJ3iBa0l39U>as5QYw~kumMz7(zD=EddnhuTUxS>%h`hsMn*?1 zIJ!vA!hnsK5=+8UkZVj9I#3Q8AyQ&OJC5LdgdBv|-cS&*Mk;4Q0;#ihEId6}Pk|8)zzZ#m(gGaM z-Wh>0@lt58jn2rEje%M6LxP1NT^Aj?n2=G9CCU-AnD;5h6t!@M>*T10lxprmDP*uzJxL|i zL}OEktE2A~M%dF2Bvzh72$ltG@T!yFKkw3j6>AsS-?VW)BcLB9&BbdEw_Oc<_Og!VvfmC5L78>f-?9()u5tN5t%NW5V}Fk z9F##aE%Fb;ydeGP3;{LxVEgQe_oR%{K?BqybOZzXps9btdT(=&mu(E$7Ln9NB4;ur zZ(@}L4mvAGuoTq_*GOH^_YBE!2_EL1b;K_+Sd&SP1y#u!? - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9e4cb3470c4f2e121497e1ca934d2551e4aa8a4e GIT binary patch literal 1197 zcmV;e1XBASiwFP!00000|Ls{#ZyPrdz3;E+y$HZ>E`hp$dMFye=&9H%F&qx#1=f

kZXzz`xgFZYypfIA z7|yus4!SnS<%%*P_5EUX=>7N5JE!~MaQVkem*c#FKBjdk#Nj`S@^Km)FZ*d{pNu?A z@B`)b1^i!aW-G!NdFmMBs&x0e&$Mp4p`FL!VM%?A>0#in<*f|b-5oS98u(~(DIK)?UMQZ3K-h9gVYg^ z0Hh86n^CcE|JyWY@Y@v(i@2iYnZcBH)enbQa@*soXX0+%Z#sAW;n$}ZpTvODOCM?% zq<6EwIhC|nbdm4f3!uXh#W-Jg-5&nEEbL&qhMtGD*wTF1d59g&KMXfxWN(3|!$gjW z9H+^%Y4j0!p13n{=O}lM@L*)nqZ)8?;?l&W(-x`5!n-GBcupsjv*(U^OY6 zufI}!X#ox|rFrsVMEYKucgYA}r{-M}f!C~g-+)6kZWDL=H^ukgdv5brmZW4h>1SS#q8AYIR(?(#@fJp-;4Hz|G z_UX1@_UWU-?E9S`%--}l=Iq7(y_vLU(w<9ePgMm;GWg&C3M8;DD+L9M!mQDVgulqY zq_0qLLkkaRRbXRlkb=%NU`gmwVk=Q8DXk7l1{6{%E9%;XlC?8g*ID4`N}XmTwG7rf z3_zrbur@|GFv+JNI>6j_NuAb843GN9g))|PQqBbasNQW1*47b_Lj7&K~;(KuhU3SdT~P)QLe zCCz~t%HDynkSG;tYKbNbHF8B%Rw>1obzwJku+|Vdjky+_Z?>D_Nm-E#BIjUKMp-)} zq|J^;+61Vz4sNtkm66C}ic#LkV5pEquC9}|cAj}SCMb2~h07A5W+0)Y4BiNv4JYer zgFf2%!+5-&ono1;V09JDZF%I+Y-erYx1S&IPxL%T@ma L0ayCcw=n - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1805e2634566280099194c8ebe5c1ef1b3790e9e GIT binary patch literal 2168 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 - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7cb61b4a7c94fccfc9883076c0bcb6714dc9dbc4 GIT binary patch literal 418 zcmV;T0bTwdiwFP!00000|Lv7MkK7;-hI@WRy0m}+Lvh75t85>+MFR{9ioLclySn}N zhtJt4ceh2>DbiS$2Elyr4CWOOt|u6hw^PQDJQVEsF~t&}Q-LSQ=&gkS_GWYJU#v~j zMOZsdC5(IakD*M)D$JgGSV#@cJ*n>=OW$r=o zEl^7t^f=eaXEgO7+8@PkfQMr|!c#|oF*aKm>!}s|a49=>IKoXB>2!gd;8f~9-*dg% z@6CbWFqNyFf53#K?AqD2vuo$CwNu_x{3i%fo|g~yw{X| - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3cbcb873e7391b7e6df4989049ddb19431ca9329 GIT binary patch literal 270 zcmV+p0rCDHiwFP!00000|LsyePsA_`-SaE>2}zrecDRA%1UtIba$`qC>a|glR@}d* zv_eR*Fu-<;W!cYueosau1b`#vFunoAv}%Ak)i_T8A@WGzmt5uyu;REdK*~%Qohi?F z!Z{BS&o~ywm%K2ZF3QVq73tNUe&Fj2nG}Oom`M);H zZ8O~_yhaakS}{kQ>fSoE9WuYf3cjX#gYt@rMZNp;!=L(y_n-S?PlfI*qbD0Ibu2OP zpygoE1*Q9TQ0hTFwSt^(OdAXu>vcc$RvOoN**4^vtm`+B6wWn<8c)g+2GzT;jZ0P` UNW~Pm+dz$Y2j;@CTs8y%05P6|!vFvP literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursors/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursors/why3session.xml index 119e5515a..bcf14a1c1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursors/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursors/why3session.xml @@ -7,27 +7,27 @@ - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5b16d8b9ad79cffc3efef4ecbe985e4d06e69805 GIT binary patch literal 334 zcmV-U0kQrciwFP!00000|ILt1P6IIvM)x@dN63HT1xVdg%muo&oWy}h({?mT5!{}D z#2&FJvgFnKK0kRZ^q4h`EAG6}&KZ#k;m_Xd`i|JPH;Z`PM!Q}RYvZ+GzU}?GBlbaq zC)&5Q4J@tay`SW9p(k4T@-kkjwtYe?^^xULmn!(YjSuXvw6UmnxKHKdLg$uo+qtwn z^Cz`X;Yzo4V7s)@XhrJ%cK$wjQgo!X^YIR@ - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f320c2076379a24d753636863372097b77fc45f8 GIT binary patch literal 2705 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 LxR(V=gq#2Xsjn - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2880e6addebb23e8d1cf669dde1310f5e1db7e9e GIT binary patch literal 698 zcmV;r0!95FiwFP!00000|Ls;yYui8&z3W%>+)&tWNe36)Lunz$qU$o6olOL?tV(i7 z`s+KA9mO$jX^j)&Qe%X*`~3FJ)9hOf*MP(QHN-l6h49e8szP5ichFVP4C63->ox?R zq3&t>bG#hE%8}?OIH6TLJox?=T1sF6cTiWsH*`M~rqB~)U&W$OyEPWj!f@+x-GpkW z)=eP`F-zt)#?G> z!v`3ce%K95=m@=s0RHjX#rod+s=YJbuiMcM?_))E@PS%t0yTr@g*P-$*VNpwebXQ_ z^le=Y+rRXGLywz|-StO#B;3&OXJq^o2X@5o`1%7TRTwm=Fk_Q6T6S^kggQm)URS)N zU>0hgKggYYb1CxmfqXm3*Oww+9mrRceDwz9C&RxGXS1gLl|L?kAyo}!O>7q+&8fFF zwy%E7L(AXACs>oml4dP{A0l^E+d#n`Nx7;yv<;S zs_`8(H^e*rs<4GZ`ShapJPfW*34urTHT1*bW^T+k$t>pv(C5g}X0s}( zJDPtd`EWFl&*%VZ%$Ab{pQ@Xk5#}65AU9WkK|ZJ_3rgq-#d2;8`@#q8>4qdpnMR3D zmNAogYEx$^Qvl#%sUgcOypvzj#PU318l-SC4Z%hOK}8iqE}i2$28jehRx(GP=a^f^ z<1*JeRU}1eBYzpBk{ETaOE8&2Qh^UIavHR7nZ+`aRt(Zfrb;Uyb*K$GtI#;3MV2aI zjf)tOK_&@N5{T3&9W827WCgDxQr3kj%VUsb;aU@v!b&PhT4RD^I-#t@pp6a;a;&N3 gI+V--(=^Mt3`ms;DG1D5DD7myPj;Vtj8zZ-03no8UH||9 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_size/why3session.xml index 2751f31b5..838027258 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_size/why3session.xml @@ -3,54 +3,43 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..abf3580fb73d7bcfd48c5a5ea30d705669ebf1ac GIT binary patch literal 735 zcmV<50wDb#iwFP!00000|Ls{lZ`&{s-T5oJ6(~@Er1&{x=wj4B(5diB9LZxMK#>JW z36g(b%1T-{a8M_;Qmc>$S%MzVPw#k-C%Rule5m2346dy2pe>>9AypB+x3>r@s5%@^ zhr2H?TEaY-phQ3;L~Vv4IwYa}dEj9otmhJ6AS$ z!ntkJm)qL8RALofxNW;_>s-@f#DHDC$OF2jD*F-9!4>w$MGV`z$NSzr2JM~&8lNmv z-q6)R_718tx;l?|y77`GC(`eiW_-|$?WCKFW^6UEUlRSgL>EJ%`7Ymc(TtCYUS{Y2 zKRd-RJB!^Uor`A0nCPXXmXbQ7l7iPslKI`@sLV!Qo=k>;->#;2#Vv>87UT64*<&Z= zy~~~$r`&{&Gy&=99ccp6(>u}xq^EbJzaV|A2SjYJj#&3kF7SA}!uqPe{>>WHMMj#@EQ7#W!-Od;K97@Cyp_Z=N6zg zdUY~GVW)Hy{wGIaXXEmRn7`;LGoXFQRc1i@kguFK?Y+0|WyM@p%w@&==cM0#tALcl zC!I+v@a3G}S8{uCEWe5OR33YidABBeJHE5*QTF~%nPs!`lRqI6y%7eq0hJ&K;aQLv zlx78ufphr4zA{P}LPX6a3lULJ%c)6d6F15P3^8TYksuY2d5vB%Dl{0LtmX+cXf6aO zq#4ACvdR`I6*TdnVxk2=j-rhRRxoB*1{EabAO>?3Np%Ku3f@@lrPM)d#zF=OqO}#= za|9C&g0PZBNQKA3Cj+ri86=6&EM;9|@{t*lC`8Tkz)tdk(?naz}U#RqRI=7 zN`a?Q1n;>(nL(Oxqh(4y39A^_G-{BZ`YehE&n%4@WQepDLh=v-08NJ4!V8+D57M$i RQl3GU`~aCJ->o+v003(sWSRf~ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_copied/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_copied/why3session.xml index bed10341c..d9c55fa7a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_copied/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_copied/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_copied/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_copied/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2f24ab07cafa98cf8f8641a836a8f33a71568948 GIT binary patch literal 384 zcmV-`0e}7WslDiAGTu ziR(l*`)D`8WwaI@I&YlwQrg6VEGOGVY9P&CMHd;Z7D5>eLQBDhX@epYcaa`M+K^W| eZZu`do^|BjH+Xc8qGr=YX7~XPHE4lH1^@t%&a?vn literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value/why3session.xml index e78936937..4ebe973eb 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value/why3session.xml @@ -3,276 +3,281 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - - - + - - - + + - - + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..67dbda1bbd92a57d9647b30144b268264c51084f GIT binary patch literal 3342 zcmV+p4e|0HiwFP!00000|LvSzZ(F$$hVRd>=v^<01vvaB&=hciT{J+jy(x4n@N*;7 zvAvQUB>nY$c_jHGkz+ZL9m$$qK$3N+Avv7);heLaUA~KX`RQ#epD*HvS)R@=KF0Yh zUMyofFY!O~>l%NH=Zm`f*k87^rEX(uZ6`cFRzxf%ZuqWUtTQhr{#2-u3M{fG+SJq&z93RtLJ4g5%}Wb z`uu!)bvZ-B`Pk>5@y&$BPw(RUxLE&mBA$7snA)A*)OrA8mv1I=ZSYOJip%$XT4mN} zI587FUOL02kMVp~rdRV?YOagL<^1OApEo8(i|_i7|NZ;zJZJ0CtSnr>W8*mc#5QeS zyYFwO4&QIAvj1Pk|I00&)oTrG_w42>d-f@jO&HsKUvG}!#yW%F5OP)W-Ko?DSa1~>q%|tc{X1xALzS>(0G0PIP3q!<>horhE z#S!^I-nt;gMa|;uCNRuC{ILSp>dPVi<4pu8X6G@TR}3ZQI>KUQVln&Q_$On7v2mz! zVQl;iY}_%pGBv)Y>)H8ob}?OkzN!nPexH|kyIOWRtkS%V&907pgJV2%2^I)IVYLri~yL}c-f$+WΧxE~c?>)M+@6-EQxAp88O6(+gQdEVGZ}IxTx7O>8Fo3%RapP_}5EHuo*G&OYu$ z$$gZp;qg`boltTQ6<>nntBZ^g#t38N=@=QGLu@5LRuAf$Qv}vFYy04}y}uM;6E_<` z_-qx!f#JY#IC(f6V6~PU|Ca(>67re@?`R*pebF7)ZLwVWJoJx@@HpjqY&90o<%gH3 z-ugCRxQ>e%!;Cou#vErI*SG0%Tt|hNE=-r7NEfc*V#1vW;rNltevd*P-ARB`JWKtW zK*Fc0Un@$uuImU+RquilK3~l!Ih3q~E4(->;jDyF!nIzUm2g(VDB-HFV}RIcp4!}n zVtjt{Rd8%u{g>qWF9r$&<)nbJwG2#h85m2PCH_hz&IMtN3C09t;-pK%)J^bT!#!Vg$MsVzVLpP)N05)P)M0Oac!^4? zr&ES&su(m3nnM81an@8lojAvJI*5tG#Np~HuC8L(@uQfdd=$fVRt%SefD50q{yBKz z8ml8YS^d2L;4{_?fX4v9^;Mh!{B-$q2JjOz0Isd#4B+P@fHQ!f0{}kl$fq5jhdq4m z@m0`gTZNV93M+;TL+11#v$fXBbFCHYoOS-1bpBv6!DUmdeb)YIYX3)XBv!{5C-%3u z!w_5pXe5KW!T)nBYn{yHqpUtn287I4&^$D3f zmdR%Q>+Rnlj+s#Z=4<7Vejupe={X{48~)VhUPY~MVALd>?RMXE^NX!q#WXgo#M`>5 zynA;fZ!XgVm+9^5G8+CMTlWQ4EJPpf<76E-o}Jk`niY@3wR>V`ymq7Esd$z6$qsnk z(DkvHm->;IpGft!nxxL^PRvU*nn<}V=KJ^G4tg4H?EKJSCQSE>`C+FU!OVPNzA#@7 zmoLu@fHO`p7y*oc14h6w#F}yw-X-5$tJG4?s>sx|Y%zyy|3d$=YVg9P$l;Hxw0`FV3szWK*V< zRHCrnc$q?$(xZ_dT8<9WPQfeJi_xMDRv>57jl7lMubQvgs752 zfQcAOZxseaJHnQl6~bC{X{D+yRSD_n=5%i*#Zay2F-e;GKuQx>p;%gmIDPP?k4wV$ zBC0A>v~VI>9dog|#HMYL8bj$3FXiAH#vm0&ZHk9Q6-~%RsU~EmHu?)W#BR1;zQ^5c zMKtTy02|@p%4}Q-fEFQ~oD-uhJ;dB>w9%)We71mPM8H_c#kpF9@064VSqa9o!S6q{&c_>B%3FctglLHl-5aSBDfr3D=CJZ?zbE3`3RFC#_>q)}|UYAa8^&0`mxvTxTu- zkfN3u^D$tvGHBr`5W>e-AWrJuiUwITA@(4Q9>Fk@vh@kd%(*y(cW)(!0K^Lfx{=;? zkfW=lJsC&Jm>l$BWJV4DWMQ*oSgC|g#65H)>Cecu!f z7$ZmDy8#9Oz3gRH*sJ<3i>NF<0W6eE>l>BwSRtqfv1}w10scfCqyQkO#A=M~5v{-+ zhmTZCLG)u#rDy_iOsJNkXsWYNivb*k5`9-jLx|-D6k~U(jsKG%bgi3{r}KJsYu4hy~Etdx=rxF80wD2w<$sK%>SM5JB6bvBgM% zpo7DJhu%sLp%i%D7_Um-eJmly5`-xU@F&^ntId#0RmuzHbH&_K1*uJTMweE#6EyZ{ zu@9MIks4(X9kW6->u5~11qnxjyn8F~9;j6!8|`8t(VR#Me2@;=hqca({_;a|L4i|! znh|=&-jz})*x54XK%=&G*wNO@_qdxaLnRcEfmUo!XhRuESnHvfN;9T=)nKz2t*^93?io>X$iJs@dR8fk>GP$S6dkr)wnc$FPl zF{X{i43u<$L?MmVvI#On5g1|cNyeZ;=c=)T#MTlpHPhp)XAG`2#INeX4GfHPbVCZ- zdKo;JZ=tSab=4mEQ$?x;-}ha?K(zrTtTeL8AhHtBXLY&fTLK~(_aPIISxILSTvoh8 z&j}uF$V@9XM0IpPaqW}N^ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_first/why3session.xml index 3caa7274d..5690b21cd 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..21e6a45aea73b5e57d448776de83c8f6818fdf9f GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(a5bsga4Xfv2(mW)EW{W4|pPKBnGAX5Pj= Zex_!g8v_i!7%2D&GPoD|y^aK$002vV7Ha?i literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_last/why3session.xml index e3b2c60b8..a9c62b953 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8bf5c3bac3b79f35fe950f0ddd0cc4a4e42d3456 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(Y_NkExNViHC`~ucygY6Qhk=JWRd(yp8-l ZJ^egQy@L(D7%2D&G6+gMych{I0RU5#7Lfn| literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract/why3session.xml index 86d803ab3..e82692afd 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a5cffba162d3a386582c8cd0f71b167bb08d9d35 GIT binary patch literal 694 zcmV;n0!jTJiwFP!00000|Ls;wYuqppzUx=?)Tpd5^ohog!yQ)vxsc|(I2+G5_4X+0 zLCDclN{WT<)pgRa=vTBjW4c(@-!$NxS3d5y_8}dJl}#x9uTV;`-BvFBA9LwnrK5*O z6W_@OaxzstK5hTJpWxn+p=|*(y+uEJSFL;8s;GNMCbyM~$4U45@pm<68ke7kGit+X zJXszuogr^$+m<%{K)YB53bpBd1yGs=-EGD}_*_Yw-ho1*c;4 zNY0n6v0@G_ar6yR^vofZ$b!=%UncXmW5yNF90sB~_SHkg#-&p*hZ`#wf-@)d4tf z!UU}vR+Aw}p4D+o5sL{Z<=h?Pjez!kKzsh0Q)pjDgXcg literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__2/why3session.xml index 183bc383d..fc420aa4b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__2/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ae1cca036af449efeb1ceca6d53b7fda1ed77353 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvAfYaBTc#qatQd)q?@l>U|k_MvkKYcM{Axi+Oz$!QqR zn3=Y-*-xM9G1pp?;{|`>DF63p(Y@a7OL(hOQ`dM|gw{jJP8%a)Z>31j5kl@UtEiadt+;}|Ien7Q zv!-RC)LX^IIW5S+fRmchd2+dxfC@+?#@-OcCv~`}tfA7Bp0|vNDMnIMzzuEgoQm$+ kqH;#JRGZ62XJZVhA^0RJ3rwiM;z8xj7yO5k2;vR^0D0?UCjbBd literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__3/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__3/why3session.xml index 1f20512e7..1340a4349 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__3/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__3/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__3/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..37df04662c67127cc7f647c79c7749b5da786633 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|Ls;wYaBTczUx=)Z4V)!Dyj4U`_MUrH5i}5T$@sr@ zQ12N+yH9 zt~_twO_$uJ-F{x-*);dbKA6OI@Omt_0-bJ=C&VZH9OqBl@p}8I?#BJ}PhIBvCp;W8 zukeWVFg)j*;K%y+yknVHur$t#CkjuA6#paAZu~CPHSg!&iT>Ux5mP}452Q1YgCKo%(8f30PM18d+-3q$wNibuGIr+AL&{Rjw zvsksxl~5RL2>~s4{*cvb2RY+ygP5pwDu=x{YOH0sCH9htatC=+nq?wOiZ+x!&C&YY zIQtB_bCeDu(`scQ+pG%FLe>up4Y_d5;Fn6lSZ+yU1E{&7rWkz$Ew%dC)iR|HipFv7 zK`CemAtS`BzT{A}DAfdc0VU%q3S+JwDfuotr50PMg#!UbavhY7Pnn7@wO2!NkwgoM zEf8XVSYfFI)(C-ut0ktO967U-LWnI}QCs3t3c!SJD - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__4/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__extract__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..68c4ae9bbd4c4e93c622436c3f6c2aa8b6bb83a6 GIT binary patch literal 235 zcmVNw4x zggwTEZrgSF1r}SUJ7Kwv{@>1wrgOda%RA1*kV`+KyivPZF?}RFN4Mqr=BCO$w5q@L zyc};o>L(vs7gI)9Z> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_class/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_class/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9935f7d63ee3250d6d2adaceb4b07213e0c01fd4 GIT binary patch literal 387 zcmV-}0et=+iwFP!00000|J9VwYU3~v#_xWLK7vM;W$DmEE~SMYORmF6Guj$l+t^A- z-@a;-92#~P2ePoe2nl`j=lcy(ej^15qx~Ed0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_data/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..744eeb42d074b6b98023db1dc353c819e76c839b GIT binary patch literal 1709 zcmV;e22%MSiwFP!00000|LvPgZ`(K!$M5|!9G~{ZFZQ8mV>s4r0_%XFl41MTswI4eVD!_*mcaYIw z)MH*(ZL<#Ty1`lX6=!wq@*dQ7u*MOi#t(mQ8_!KK__P7Yb+aN@mraV@-Hw&|A+w!$ z`$SiBvK_PCd3i}E4h+WT^lcWlvA$;I^m(~AbS1n$UXI}ZPtp^`GQ+J_#PPLq-|t}% z9`c-$R`TKeaQF^m{T2TxAwaMJF7Nk7Mi2FL-HD{0$Mmg)<4XpPteMx647^xjbsE~Q zD^bdqsH;;F6#VKC`i`RR1~P=uzxs7OYwLN{-YnCKX49LN-j*%pWt=%XZ`Nr5(lMsy zLvw8}*+ZgH{psOoqZxTvGwMg0kw-5tIC6cx>GFD;zm+9ESk*H3^^}B*0Ku&jWxN zx}R|NB%B>C(E(?C!rA%atk}x4bfYY z2xx%Hc`#(!?0hUi4lf@0wmy$ZkYaa!D&5s?1Dr$o!=}1-%71LVE&sEr{yXug1M!SJ zIFIt5z7d`J(~g~Wz<}gw74W}vU|I$Iq7ZoPRlp7g`tW;+-CGTu0|g$r7&xEJgtxXD zm@shaYk}`=Y7OEmfsKd&c8!Z%VbkDE*F%4>*-YS@9il%sQ}4)?%Ud0f3l4s{Kf&!= zZ8lJL&G>0E2?k$9@2l8@(%5=lP`V$HIuOyc&3Ud|Ds~<~l)%Ra4C8N(E=qt0ik_G- ze1#a{K=1FbzB{SGy$hZUle?5Sgpxg*UjQU;k0TRCUKJz#Z+S`(b@vxoy}40bfBt-f zzvCa+k{j*MJb;L4nJ9pHyLrYqo}Q)o$M)0ExS#Q#i0`3(;An*89Ta8Y!M58`;6LML z_kcBpw4x6$>#PcLcNBxgi>~!-{1D0smqtRjMX*J|Z7t() z!K(f@ZU2{X+AWxN3#Q$Ix3^pHSOi?Qmk%r-E|2=1;&R%rn3fPH=Kq^tLKH=G*+*uW zG9d-bAO%D2G+?yKr)+W zPC#-K8KZVWNn*qb(9H(QlpY69Vv@3AGNYZ*yNq1wob^D zd&dzONa~Ve1Cby^7CVC+tPq{FI27Io8Zu>L%27ga&T7b#rb_P(;k;8R=Y^o*W46nU zPmz`gk@QSACS9qRfk9^_9@&>skR2zDE3Y$USQyHI6h + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_data__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_data__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..469136e85e99ead46d2b186d6ce14dbacb37a597 GIT binary patch literal 3133 zcmV-D48rptiwFP!00000|LvVyZ`(W)hVS(&_Iir~oZ%VRF5sJB0~Gyk7P>WfYz?G| zKgTKB{q;MPe72mUliDeB;kpt<4rk_lG^CVv{@I23&&!F6zpmZ)Nf=LOH`6qm|8jXU zyPdl$M<3l+a5s7EW;6GzWo~{mo~5aaZtlk8zU9`T?y~an9vqOYXv5-KPF)`M7A(_v!rC`1YHdre=Qm#eH)A=H_ag{&uqz#$)Pvy!@QytDocX zWcovl$2ZgYg>!f1{F1!4=;cw)>zp(WceC4@899zjNGk`%$!(b3y02;e#6a}j z-R?$01R3D36E~2R)ZmNMAV>f8Wt}RMg~M;>v%4_Ao4Kp;4|g?*rCpG#cITVIFp!P# zh$MdKx~HZw`LA>A_?o=ZO7iV09+cp%=-o`Mrf&YNcrQ+hBU`m-Ia+lvou!yUx}|Wh z&i=jXVjW?=9pUxptJw0@pr@L?`qcHMtG-S{U*$H@s!90?Y_huT+v(?nE6Ue_#7)Y*z>Bk zlC|40490ybN6*E4zGJ@Z%;)D~KJJ*0o%whM=Jz1bE>3>94|IRj!Ho7nLJfv6^0`c} z7j~;EP%2PP$NUPECz;>4$@O^VuD>R?(6epLMy0z^e6;pr??kCUT66K5D1iekd6FmI zD@*ukXS3J|;vP&++tnL74q`*dcC^x+ZhM=g`1ka6}wCR7B7w$ zd^i;S2N(RO9{*F>v3R1$%Mc5Vi{op2-|&8#L#AJL+g;uH{_BUXMEclbfM5a)6-oSX zku;$K=4Xq?R|Fhc5@)Ok*pLMNW=X*7aj~;?_X$WVUjvJ$B$y{{Kb*on1PAg4&q^^5 z&ftJz9=h(yih0B>u(iE4tt~0D__|-il#{Cq_KO}$z4U!LEFKi_{{%19oTk$Ol*@`W<`{m41&tOaxMRiN{%9h=_? zop-%#X-J>zOIpAd;D8(f59kr#V%$riaZBc=H8eKrl@>$`ss*{P%0&}(2uO!75f_(}0W?0gU>XfAu7;>O zs@pJsE?42mV0|W6`!`^#>Zj(I4G=n$58LT)3n?QptBi08u+ODAnORB*p)?mpscoVQ~ zy}GiSG_Xwho)YK!uFG&0u;v>-8sEw*@l|_OdsTaHuf3D3EsnG_u*Va0oXJcn?=b;vFr!3;gfjDAV{LS)#!|4P70!1E;F#(RUfoa*}hpnl`%^9$4J zQ~`lY25cc>adZs{JReAG%t#%WQ4fwY=foRe0tYvRabQ;%@81^2p?zU|%Z*{Y2N1m3 zzMBvQF1L@sdzC*d)x9PE#nH9=&qw_m6H*5zwBW&+%OBtJnGg;>6vBb0Lb#=W9C|K< zZ~9;e?|Cw`)W6%V0QwbBz5mzy|0x5Y-v5tw|L->vItX-kyMBSNR|ULR20XF|IHQe% zS_QnyW&sXw7U0lk!GS^m1}lNL*(|_EY!>jXe}7|3TXL}P<&MF+YS==^=6=bdv>5HI zE%sY=-~JHz;2?bPjNyZW@WDO!)Sb%H+^Ov9fPJ&vhoOW0$h(Rq6^o^~MdeB5N#)5o z@nqw-h)KtbY!r0p9t6NL2>UHIe%E+`g=bS?@fPcf3$Wa<9PRC3z-XuN-D@@cq~qQ0 zbv}{|?+*;;&V{#s`@Q@Q@q@SfA*Fw*CBWGTy_Nu{C-u`Q0X7x{yT)$R1SH`WwfoSb z+G4|@oeR{5EJW2?_#k$MDvXUuJi1^x+}r563n17lbc#KrXYQ!LgZ$ga9~@{kTt$bW)TZhX;NuYY4Yx9viTmgS&RPTk_9U`R47y^R4BYlD6IZFrA@hi zsd}$^uX=xvdfzVsCIbX`Y+l2p*$1*^wBX35G`7uZN9ZK&8=hUu3Ub8sgIE z-OlVFaht{n=5&rxsT^}4<73VOnBy#D2g&~f{v$-AjR0g$O5tJ*iE9yz%rONoY!*yW zE7oMgP+~HmoioN#w^~YLZ3fFy07;FoVLl|AfI4)-F~t})$u^@;=p0GxND&1c3o;a=8pVNZw@E_uEG5N_gscp>5CY3lP$StSYqjD&Q|}=-(2$Id zOoNJn#&^YV)krOr7Cr{xhDEECX3{xfwB(*4BxWFf(VLn#wFS^ zoM}=BGD+nfxl3S1C1pYcZMo4#x?;F(m;yy0jwWfaB4RK)@u+|?8b0exjes@axI(Eg zGm)Z9JfTKkTx=so(7Ln&>dPf#jSo>kNc61(PHO?uEkA$~J~k9`R(5Q7#3af<KurdW^gG(W*F4hPQ&E29)LMTOc(Ojg@LLdVsqH*4q zR@eZIL80fFrfF$3i!$pZB{;HA5R&vR+ zNaCPuOp%*d;)t5;!sJDa8Lf((3kepa^nqbeQTNsx%2kj$(+~!vQC5e<0hibD)Jl;OY&lNCkACWev8I$=sH-Z%|DLhv%9^DHo> zDablmMxle4OHOdncujX^%0%gjQUoWUNVrH8pj=_uvC@ispCmyka7RNDNqo-QT1N6C z%8De5zc>NMb27)FC3=x^XizPvbA{Y;;EI=4x}kK4B4|apqHdy)A`vMq4 - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..098e637a4dba6ed429bfba27d4819151fba87318 GIT binary patch literal 386 zcmV-|0e$`-iwFP!00000|J9VsZo)7SMfdrNeuCe27A)AHBC)L4j>h&FB84PM41&LJ zD6lAMs~}OS-B`AK=W)--&P$A^26t6}sySd^VUscBBfj-}!Ufg?UAE_?pk0?wFl@1- z0x=>0T-H9-M}Vq3D1f%hRoeihis}eq-w$mMaKL&`09{XU%~rUfj6H>0{P$Tx+hjUs zxF#A#-O$xlzN8<{y#}?!8IA?2csYJF`;f7TW+HXeL~8QQ&h@&cW|Oy{Jo42ve_v3# zv-nJ0{8_xN@oRC7ondaFr|uEcQ)u3^;A^pX8d?5KwBime|Cem%fB7Yh^P1Y#pbKY~C gN^LcxvP>qh5M-&)`e3CmN0BPt0q^zKIb#L@08kpbNdN!< literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_number/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_number/why3session.xml index d47ab500e..4b66001e5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_number/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_number/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_number/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__get_option_number/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cadd92746db5fc87401a89d686a3075d7518a29d GIT binary patch literal 384 zcmV-`0e}7l?DWF zzcS!3v`s}~(sqd)<+tPivy!}`aBOK?d#u|%rJCAIJ|E~M?U$B2F6un}u|{{NXl?+0H@D=bV z64OL7@GNQxQjvDXRh}exXPuAa#^5B9MJb~Zs&X8`d9Naqm6jn|s|1(YjiRz(W3@3e eC9MVm1G1zsAYvD0wiKtvtKuCk@>fb@1^@u+-m{bd literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize/why3session.xml index f4580e911..1db6f537a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize/why3session.xml @@ -3,183 +3,168 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e0bd7697ce827380f53da04473f39c740cb654b1 GIT binary patch literal 1960 zcmV;Z2UqwXiwFP!00000|Lt2%Z`()`z4KS>ZGjmK&{h2nj2H05m;k|^7P=DEUkS0Y zgx7c+5f!elPwwLppocM5&ul{-Y-w8~_ z2TEUOblJtWo88c&qgj9dJxt_8O_2VxxXyGz(`CLrtS>vRgRO?w7kqcw*~CobMSa&3 zytruc(_AIP5W-v_Fu2^vTeiHp5LzeMcZD@yIG$X z?F~(@Gk;ucj&7Aachs$un9ch@VLqR>`R{L{_~Yz)I=yS}-*iT?=kBSmy~O!!*)OP@ zaqAl+*?}lL1?f;k;W?1@?{UyCqn(Mp?XFuL-X_6E-DW=jqG_Ie>OW5~ikAZZ;teC; zk2w82h5kuXTJ{Vng0jj(&rVnz3^S7ef|W>Zy4WxL}OEJk52f*K!PKq^d=S` zoMXG7*{3|QAJ?diBHAvg5uu;4>~Qou{YHOGY=r2dJO4gk4%s!bkJQiG%1#@)o}*L# zGO@oPi!hKzJYWqog8sUoKLF%EQt1}A2#q}a1o4kdya^_rO#N&EV$F$PaRR$I;h0BB zS+TppiXX{;L*(y2(oqYitc9&{k5r#F)n^sBTfCUU4Jt;`PnPsQH%NE)5RH_dH03LH zC(P=|^l39)IksTEGajrN**@>^4Pg=R`OVFW%`J=W>PEHg z{HpKfv(=FL{H1SKvZ?L3hZf+OP25Vj<{};%!DluSu1m>_yL8qnJ-E5M)b7fxHu#yA z>#rXJ^80PkJ5G00z{Q>>fv@Hg__J){7u-HxZ3+#moNdKUz*Hqr?QPoeQb9+(QM~sj z)vl9r*Gb%U@Hh}}vx{AOKA6XshG6$LeK4cxji&dirU!#v58s089nlz2UL33X5D)N} zhlF5dGI+Oyg&+LT#b+#G!M}`|K3C?WnGQ44fjA#1$3xBZxmiDEri1ctp8R=v66?nC z7Q=XpVZ6n#bD7iZx_kNqYLDRugY5vG?*}j%!jTN&TO^;On$Zwmduw9g&cwh_?HqQKKIgEz9U7|mcbgT2k*iQDeuj=?*3)AsSI9Uz1(9e z$HZ;xNtGcF8Z|K*D;*lAeFhzDu!=I99luGJApZmYlDZ*60AHL<1fW=0K}5)ff-ydU zv>YWGmk@oVgr;~MMD|2B#gx!y6fS5ELJm?gItWoHCACjVlXE1TQ4yR_q4u|5OC~Fw z6sRJt!EA%f*%_mQ181cI!9l7~w#Zo5a8X%d zDM3(V$Xe^Q4H+ToT)Q)kl+whalg^?fEZm9^2qIb|vFK7qXZLIAmAfOIBVyn;$K;tB z=Ls3mm?X$xILIBbyW_Rwt!Hgvj@b)}ku}J98$p35btO~cAm0QNv`O58DHK5~Dq6De zii;u^Zwd#2XhN|{vnp8!poNqeB|76wNm@$nutq@>wF~SDQkm#uak}P)UJK3;E&7@j z;GS)|?TlV`NlLhv=o}FR)Ox1<`nnR!5JShZm!b0c{d7grbsVMbzvO8vc-z z6GF0hoQvqQvc?w8DFB&Vu}5q$Dp@Uvi$7#(*^4wW0PJ7Z3t4JjC^>soMWQsrU?B2H zeAXHj!&|)f6$w;~1e=Lh+Di5pDP$x@(`Q4VjDgh{Q8!X0ubk&l!EmB<(pq+6%S%v| zM5%0}X`*0#%783)$HTXt4NC<{A@C5DT4itdj1nS5BH+?uS1ghHP$~zAl}yFrtWmBh zmS>2PEvL(Zc2)q(mCMtHC_Up*qqv5+#|SC2jw9;GR*i+-vUnkUP`WyV - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..13a80e5f4f0e2595814d353c73285cb3afca2032 GIT binary patch literal 2541 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 D6Jh9p literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data/why3session.xml index 743c40875..5440547c0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data/why3session.xml @@ -3,253 +3,191 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - - - - - - + + - - + + - - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fa52b392999a05cf9cacf9da87afa20c0a08b4e7 GIT binary patch literal 3375 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data_private/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data_private/why3session.xml index a392785d6..ce8cc2197 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data_private/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data_private/why3session.xml @@ -3,524 +3,219 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - + + - - - + + - - - - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data_private/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialize_option_data_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1e7c4f7ec1b62fc4d3ecb0e86de40a14595a59ec GIT binary patch literal 4091 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 - + - + - - - - - - + + - - + + - - - - - - + + - + - + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b8319572899abaee8b435e672cb88005e5563f77 GIT binary patch literal 972 zcmV;-12g;|iwFP!00000|LvH~ZreH#h4*@jyDtjxU*w_-6==}{LAxomB`9)~3b18Y zl7r;!?@+Q8#dVt4P;iy>W?`7&=M2;)E(S*)~=y#-8I;iYdZ{Xx2vkNWd*CyI^W&q^z*$mJyW}^nu%zrTHg$! z1VzJL?bemIRej@{%GF(*aX*?JxX*6Y!tgbIB(UCgceefMwveEi8@H;0t#OH*d)kLw z#fQ;o&iY}rymj5rXeCt9RWA0C*(k7WAb`j1Z<=xT*C^2|e*cDJ>fYzX)2nLl>wftd zf)9=%Z~7%*D!le2CRtSR=djhVTd(ijyYuYzo3nn`VD|0FeP2U&=1vE-_DG24d~c0i zVr^0-FX+(ISVw!G{2ZSFwonJCJBxL>gK@gvtqW*|UmmS@Q65eS&6)x3b=IfgV|Bex zgqR}{9*e7eMR{QNDJWbEo@8TT$T{+{g8CZCIB!B8VtLQS1Bov};sYd1s3l$kg}fJC zZ-N{4HU##&K<3eG`iCV~Q~J>({4I}ua`E(&e?9%=tEXSmeXa0pkbT>L->PW`@gYy~ zh`i5b?6k7Oa5ggJYI<;U6$>i+y}7|vPqj8z4%t<$T(JUFbsnNX-~VNE(@TEJ=BJnV z^c1}Kq4mwp>w=eFJiPQ@4=>%r3juKEVR>j0tEhwH>YmGF&hRbq?+Z7`e)U($hqq5M zj1M%8EW`f!qvcvE~2%P|1Jf&0m>c{A7o=IQ*8-3?+*`qR@@b{T# z>5u#!RMnFJmLq^Eof4S6(CwMdSDBPt!nP9(UN#}{;ue*WtU|%7|Zfh`SB4HMUV)154ESE;&q|5$i#DBzyWoQ14Q)1c4UmhotAcZ8%DV;hcwU;aTLlLRzKz#x@)fe(Q91xukMz-b_c uGv}laTopxBN)wI}Abcq}Rg!xU5Oj&Ezyu@0rx>K47xXXA2zwKBAOHYxrRmH7 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__message_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__message_last/why3session.xml index 4b370e6f9..9dc063e80 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__message_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__message_last/why3session.xml @@ -2,32 +2,21 @@ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..721caf9bae9c3949c2a58b45fcc1fbddb9535a4b GIT binary patch literal 290 zcmV+-0p0!|iwFP!00000|J9MPZUQk3hW9*0A0fHq5;8EbR7FCaDpt#J91$tp9d|hd zZ{MQ`)RnDWEbG^2|NiB=L#mf8#%qViOpv=Xjv2dplksbu8Q-x?d~a_>@NuYDm<~9w zz%?Flf-tAV<8x$->%F>np9>NCz5t(aWCFm5@Tg-d7l1sR4M0EC+;;%fca<*{9ya)izVqmycx zybsE`xN^>uwr}dgh-4b$t&=N{q?2r9R8~{#DTWxm)e9s=R1K4+pk-j`5m_-AlFK^V oY9;*wHG(*JX+2tM*(Et0I)WONB{r; literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__path_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__path_condition/why3session.xml index 23008ef31..09b8d8fd8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__path_condition/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__path_condition/why3session.xml @@ -3,124 +3,113 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__path_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__path_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..736e2a44849418da5d325c3bfea22c29a76ddccd GIT binary patch literal 2007 zcmV;|2PpU-iwFP!00000|LvX4ZX3G}$M^FT_Yp+udvO-s6sJIORu|qH`k>A+kS2lc z7VX<#Drtc>b#ihu)YQ{>6U4DRqA2n=e~M$|_%78i*XhHqYDW#gW+wJ|&eY^U+-R^EbneF!G_PD#b z-fr8DuIjdY+#hcC+wG@x^^vyQ+db8dd7u8KW7<>s_W8%JQf{t~^!d2`dZ7c4JKSFF zj`x>8bX$vlm;UH0EQWvC==;~lo9&)%pEt>mrgj^t(1Bk(m<>ej?j~>a+joDl(O7Ur zM&rHFP+&zy!@bd}s1+Hl-gaX-d3N=OiNC)8SPl#2`!jRA(k)$Ax;}o(@~>}SfBcYX z|9$Ge#NT%xf8ZZUgut>4k+pjvh72%zJVOQ;J)R*0jGn=eId^$G>Mn14hMK!XT?@v| zecW86$wiv1PMXN8fQ@@ECIkd21IuD&0O`kL=AvFM>g9W*r{l{m^&D6{Om(;MZ^gg? zlH|aDBL|!f%}-hWC_7eQ_9=R-!0c1}Sb^E62m*78geY7j^eEVbUBRM`Z+@<6HsRz! z$NRpNoDTF-GQI$3Aj>mcvfdJoR9vRuI)AGdfY|`6ac+fBuF~P~0~SEZRS1HJft4`^ zWf`+*u_YY$3sqa^Z}kYq%uxV{Y&6-t_aL&paK1&7+!L?j+eh;Ug zb%5T0k-T?}6h$KGbx}nx$j9Ga6%A+=f?%&uk}Pb_FFFfe#rWk`+%tLYfgE3JH7&36Z#d91_xu07*#T%8rs}B4So)Fhu{s6K;p| z@jFN(4u_UnqY1aNT5B-jR#a=r_Xtt2M<|IHSRG?fnlWQ5tTBa8<03Q@3ED9M?{dxgTFId^e1zFoK~bu=0@;_7IY z9$0hN5cLK{fjv?k4euJhGI=zpjnLHYy2cqB|P>?f2^uUwA76#2&bu|98 ze^v5m_-X%H$)h=1K*O4~K-_30dh@#|ql+^79hA`kWuQ?Gcaqfk10?>e;n3=9_!k>qS^4$KsxR@=MKP@>Ng`M$iclIwW6QJQUwwFG_1QAz z*|a-j1iU#DDI*JzH_H`n-w^U#NB**7qd7bMJ5X)z2FbShrpap^R4Cb{iYXZm>Xb53 z%mKA+rTqu~)HpTgA*oV%1VGc&eDl^g{z$gg1>#Zad4sZ#&N<5ib$|rkN1v!AY(YCu z)$$;oE>bE)CE1XQ_ck~mqKmo#QTCy9qoxq5NmygDwrPmgL_$hYL(P_#q(Q$Yrumyfo*ndf-*_Dk}3}hQ}bZF$_+K4t2xKSAJ4h*DSYXn~hw$OH(A z*OFpvim>$+f|=MF6&m|B6z!Cvf;mJewPaEj!1Ymf%E6#!FRP$hGQLt`qjW8W*Nct% z4gx!#BJvi8XsV;6s_9EsO=kzrXW!igezIhprc5Cjn~P1sMrB+K-DsG7KV}x#_kEU6VFE3 zn#3M4x*LcQ$W{Xy0!K-Yd2|!!uL0f<^x3)UDUmARF;rUvC!Xn}{1i-!CF{bQ7ro;o zG@LyibYxQkr%4|bCKWjcz(DQ+U|IpI0gcIqqr=p@EW(1w72|R6c1{h9W#b~|v p!D3&dRuj+8j*ggsdQ`fe002@T+Vubc literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__present/why3session.xml index 8bfe1897a..7b38f1d24 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__present/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__present/why3session.xml @@ -7,25 +7,17 @@ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..810f3ca14292ac0c6950fe2f95af6e11c7284123 GIT binary patch literal 371 zcmV-(0gV11iwFP!00000|Lv5|N&_(v#_#(SK0^L&c5~>Vm!eScB6|(f$wUL&-8D%| z`}S^YTTlurTCw0|7{bRl-y}bh=kQ1wBB8b5z#eP#?Z(kVD^Di+z`AlgDNi zQy+Zm9J6Hy^p<6=?(B<7RJj4~j4BAAm?XH~B^1aVFaY4%= zZ*6*lfeQF2?LO2Ys;2L&KV0;k - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9a85842e573712c78b9ae1cf8976d70fbf353725 GIT binary patch literal 1165 zcmV;81akWyiwFP!00000|Ls~!Z{s!)zUx=?)96m|PEseUdSgqQWH-#g4|+J9*Y|NqrMtp-x5Pyons#}Mn--THHq9oje_i}lL(TBd z%}v4?&bMj*v46S3-)m9BtbgY31Cg-$ia=Y1fw78j#)ilSQB7L9;PSo^Zj5^T4Pt{1Qv)1xN(uwBpFu8Hk7Y_`2__c)f@G>^M6i}7Z$ zxZA(N{*C_^gxUpu7}wecJt9U&a(||(f#iz`k}oGtKD;RVFf#q(X!?N<-D*<~&3Y$DB4V+-$b1&6Xw}7P7&M8gzgO4qUKHcOk!@oc#E6_7ktne*78ziD&e8 zDoY%pzcW?!$*#J?I;z3#urYLQdIJU+uKYq(?-t*Ms(wtWn(l6u%c(9`xtIV!oR8=d z9}L+;xo^4VZLB#9YS&m@J{^=pgJNiq4-LZOAl_m-M?X)LM+|BI<8OE|%8PMv4A2|4 zSVi0w)%|d9Sg`xwc78NVn)K9}^K5>CaoUY8#+v{4F4%3?l9~UcKHxhG%iecyX!XA* z4~oabDdJ;>rnCj6E%*>^K{ZVaFo6zH*k%;lz#!e6x(OG$d3#r0k#0mimH?h~nj=&c z_!syW_`f>*fuBtPqqhFC=YK!Y7t9yTpK`)Dn*qk`{bkcHHw*>;?*jk3Gr++`=|TL; zO<=)k!RdR!>36>gJWc|aZ`UVWjz!I=+2Z_%T0^%aV|0u+y-4V3ZF^=}c1WWkLdiluRiwDjMyQv&gMeIY!QH@{)x3%Y=~26ij9qxisjUcGdu5 z3{i0mu3t`6nsH%-5|KPqEJlbrk|yWKN122mAz20Egtm%h(3vI&D>T#DI8x}rB~3!A z!o;i(FjcLNSdtdJV!b zh*D^kG6maMPA@@wCz%%7=t#ky + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d4e210752f9922c080e55306d29c0f6d2ed79f51 GIT binary patch literal 1793 zcmV+c2mbgUiwFP!00000|LvSfZ`;TcfbaYj?>2`ZK<^7MKKLTM0fIR_=t@*?8Dg}B zqK)|d`l%*mMRusz66M79bPklvE>>69^0C=$jiPUqyvRabL9r?dRY=43Xj;&Rj7)!V;d z6RYl1Zyq*6x6Z1djlQlSpyJ)JO^dH}-E3|}U9UG?vtHG;U$46OwX17)lTvK!tOG3& zv$rsQ9CP2v)Is-3uwUKlR`3Bra|<8m(o;+Ydi}k*C^Tl`r));E3i0b)zI;6BNdaM} z1%#g!ko?u|{b!E*&pzcpQ)2ttV*4kK*R9u!I(|88z}Qt?uWlBLdb4h@rR{tAf?EHA z?M~)<%SuYU200qNT>l|z(_hpJ`dxDB>%{$>I_ z(T3gd?O4|gT56AXZTjYKU9%Irz8|+4_dGSnyVia4g+i~7^skTiulnXo1zycArAbcK zbU=+OSgu14iaZIv-u>NoHL&gXp^<8;tx=Y0h3Bqzu=ucR>`&dZZNSb{`>K7oHf;=z zhc3>k__W6ke%WpoO;?9z>)UM)BECPFnz#tVNe1C&xx5>WbogN3Jcw6$cHmJgQRdYV zPMkujQ!C{KP<5sW7iAUyb*vJ?7OFhM}k%SjGnWKQi^@tboWq`SD>)cGHL{@ljT_;(#* zsu|G?F^D8OAP6JF^z0!;Y(Fo1c+SAb-CU0zA>09B>GvL{ql~3bLY6(IEI&$F_JFeE zHjHqVJ_%a(n6&&-q&>CHUx2h{n()e>Qv3Br@Ez)au50^iw_OX(Duzc36@?Ln5rq-& zk`Yy2PbBBfr3ya^KMFtIIzKW2FxSqRUK9Wn02Bbcc>oMAr%NH1LN0~;mJ506lK?hv z>*e}3hJDa;LGgai!APJ_>|`0YTlgFYXOn}xI#4qx=#TEES#-^+?(Q~mi*CB>@MDwl zgjODIgqbroc;i$(yX)&)Slq;{<+Snmn|8Zyw{tT4bS7HH(!KQ}LC zWoA@h`7fFoRTtX*jUeIVG8->5lkDvLC!f7R%uLu?wKt{T)eiZwZPA1|Q(pEtbN%q7 z7(2@iM2s-_I5d918_%R+Omt=5!Fs>*6%+3Myt?1ue+B(W>J?t~ za5(2#{eYf$3-~zM{x7}1o324S{~xo@cfU9&x5Dplh1HRtp!6=TU(TtEpg9QtV-Dj0f$7G`L z{C8xd>mpN>@X5A3TG^eXrMKqCFQIZFT<90{k6&L;3&u;lzkVODuYdmA>#C9@YDbt> z!f@-921Ol6$sN^#amM~b|I0+>DI+cs9$aJ^xbVUVZIuqhITE=Aek6D;u@uOi~o$RkB(;AC!k=gJ+%^E47iy zaA!aggF!oC}*B zr78y?oX3lFwBDFtj5k6gNgcC7$b>?=0w#q@$tZNN#hfvgMWLl~$^mmUkIqz(6hq%| z=>W|VEMFj51d3zS6ta-5l=nDVyv9dsIQ3Q=#Z|;eLJ%r&6r$vrQcfhHHFJ!J5VVuj z>qG(x%zHwNwpof+#&Mdsz@sDRGeIF3o;--?7!UzjidC9=bfouGf?+(8z`d~n(=2%< z&|z7MS4yEhCK1fJB!UTqMWvKw6ScjE-21o`_DM5*D-qg%Pp@4fEV*DGZ_1 z=p`#nHpqd}5f#d$0e~c`VwO@Bu}nq`aN^o4OMu28trNWkTn|$EnNmIwV==8w0v-g3 z#9N-CwN}{Vi0rL5RZKa;EE-f9m5DJ38UVdVIT6W{EM=?Yf}shhcUHN8!Vz+Ep|`Xb z+Gkx1>kGXkI2gd})=@LSD#HYe-X%p$$_dYCrL6QAT^_B@Rh)d3s4E1JfnsgsXfsw} jj^})`pfT-&(2)QpB9 - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..62c4ef28d1427c5fc12ca790038e5450691efb0b GIT binary patch literal 8851 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_copied/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_copied/why3session.xml index 075f996ba..5cd056825 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_copied/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_copied/why3session.xml @@ -3,271 +3,240 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_copied/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_copied/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4248d160ffd6a8f11c1d477ddf18b519354a2ad6 GIT binary patch literal 4290 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value/why3session.xml index 247162974..e2c1a7345 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value/why3session.xml @@ -3,446 +3,431 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + + - - + + - - - - - - - - - - + - - + + - - - - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..35d0799cf838b6501c54a3310bebe727bedc855e GIT binary patch literal 8243 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_first/why3session.xml index 09d9cbc8e..0a009efe3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_last/why3session.xml index 99c5a4e97..ad8acc2ee 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert/why3session.xml index 5a6889f52..e670a7d54 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..03c6682250871312992b2d65893eb89194b1331f GIT binary patch literal 568 zcmV-80>}LyiwFP!00000|Ls>zYui8&z3W%>UJ5(=z2F?wgQ=n9RCE=yv$Ki7v5mZO zaDRPQb}21&LlQ!1Y9q7^qc=M$*Y@k`=r$8!`KsQ@6@rHPJRBVpiXx1{7Jmd7lody(Cn&`WA)-9)ju!Q{c_sq z<8X6?4J0aL*~c9n(pL(rF{^i99@hP4{lH_t9lr8na$Yok3mTWj^+l|=BGzm3brJf% z7P=kEi;wW{heG?Z*LC~XN34CVZ{@bMkN>opKa`>8?HNsI173)nY{o1Fk|Bl|o$(x# zj!sH?2cJMRo0nOSC+APQxruOQjP z%tn&a(n8(NYXj28$Y>C4bk0?fYMeJlU;x8aKc}Se(nT^NTY>~?0_i3bv++>~OTn`O z9VIHyAqVtetf(N<5LSfelrxYDNHPbPkibbx&WBV%w$VBy0pKEL^o~hU&?aLvPUoNw zAlF0zNM2;HwMo`SI!;m5q0kB?iYc9M0K6wo9zn!pF*@`<`^>d#EjZZ<3e7jA-8Icb G5dZ)pm=n+d literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__2/why3session.xml index c9e738277..98d51ab7d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__2/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..13e61fe3cb353964d8cecb1e1753f23650556f19 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3W%>UJ5g#Z%7W?gQ=n9RQ9@zzLEvUHfzPf z{q>dYQd*jZB!tq`K1c}d8_k>d2JLR0bJ{KWc8tTg-10Q?vhu1F{xaQVp7COnkIVfu zAAf+?(`ucky5llVo5~Ar(_x7%df;i|T@PGW!<5&YxbiR@k-uym!uHd%qiT78IP#Vk z!|)*YnaH>6x*Ik(yw2i^FQbbv=gSAO^)&nK!9Hh?v(r(lp0#;Qn+s0kmOt=&t}W_N zXrzeI@ggs;>&=r=pN?Wr;NHt4n_hnYiBL~HKED&M%GsgkI&^W_Ta<= z=;L^OgpCmzWHE$oJfv?DM&gS$hI+pm)~owG4V&?6p6@r$9=`>T>-_3$)>|>_we>n1 z{a+j1jrGM>`1ebpd)e!{`|B;%z1FvKSG&i5+Vmf2s9ASH9V(>K(qf9Bvhy+r9b8hf zbyZNo8Pf0Y6M{&|F=5iK^^o;!4XRAKctzT9a@bHHtkKf30U!biTFW3^aFzp>h>%SK zks!&zp^>PRQNS)ENNFWVO~!ME29iR>P&DX7x!4qZlEexNC(UfyQPe<6pvgKb)XEyN z%4=ZnOe_Rcd^E%jqy?1%(&j)>JEVfiYN;J~38k1)LIWAWku5>eswC7DFtYQ=V3=bo zK<=xvf+072E*T4Qu_!$fXsJ@blmn;+a)N>{rL^ESoCIGSMzjc#Adpn9fxP$zWYOhJ HL=gZ0Y~LXC literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__3/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__3/why3session.xml index fdb85cc55..ecfb693fe 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__3/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__3/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__3/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3b347b4529bb068abaffc8d0d9129e4330f66f23 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zi`y^|z3W%>UJ8=+HG=HHJ%k3zo{Fz#G#c$1vPp2X zS<+u$IVq*3>9V^lrQ77-v5?=>jNTh$yDTv6S9mv2Kdg2*4!A0~&KbXq_l$E~ZuvNz z!eaOV-i+%Fk7bW}7`FwNSi@ncD!a#V#C<2RtoxBSn6O~qACbRI9cWW{Hml?lg)7|Q zvhPpUJ{NqqDf@nViyIc#ctt>RfmbK8b~6aLKEia{Hvz=cCvYYVY*1nofWIsi3au)bl&>I$s=mu0yk{DvvXZi&g);Rrkwj zp^wAO5jK#lkYyitbVy$%B#X0p_2psRZ`Kby_S@krFQ&{yZXm>1 z@7hP{=$-ncq=49vq)1un#yO1Wweit-L!fL>2&9pnl!B5+Cs0l0}A ztOa(_WXp{*DuPwMf~=q%8US*tvQ%ctQu;uNK`F&fPBl4U(6UL%MQzzDoi!+MTC)kE z3gf4hyf8X)jy^03veMJ;g7^k; K#zam;5dZ*ai6fx^ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__4/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__4/why3session.xml index 11f272e1b..b97ae6b2a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__4/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__4/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__4/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__insert__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__offset/why3session.xml index e954e5faa..34c21c24f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_class/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_class/why3session.xml index 1307b2925..d02751e6f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_class/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_class/why3session.xml @@ -3,292 +3,253 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_class/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_class/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..dd83e15dd49affcec754e8295a964bbb827b2fbc GIT binary patch literal 4569 zcmV;~5hm^*iwFP!00000|LvXIZsRz%hVS(hb2q>YHo)@%nA$+*BA5b#?wf&c4IaCV zok~)%)0m#8-#_I;Y)5u%%Sq&fU5!-5qNzo$e|=n{C~@}P#Xs-dk4YF$?*4F(6L&Xr zf4JN6*!}zQDYEh>OzWvX5JbCy-jK}v6v&sG4cpUEUX6Zk( z@z_7*oE~x7@%ZlP_ICVmKf#g5_N+f~Hr4*?SJWS7sKw1@kL|aovqv|%OR+tCGg%n? zyPGa*+-TD;`@jA%Jvh6WpQL=Emu1|8oBdu4jFZw)BO6$I=n98WdJ@MEk13{*rqlb! z)zP1;DsDC``Sq7o53agsUdtUif1@aBS{AL|Ji(i=>Dk;7WgXrq?w#G24@Q&*cK!T2 z9Z@o}ZEbcESRnX^3FPXfZ6n)h&rPYwyJ;GkLsUiiURkXUS6%Jb6+KQ^>?C3R<6D3} z_|3C+1}iJEUsj^ZYDlswaW1Q@s;tf_t48fu`2DnN-JGE(qTu&wQSpc#`$J} zt~zC2?WFy^Ei%D>dA6oS(D7M`hdCxs(rp~a^pNgix|@w*;Zs^2zI*!N)8qU@)G&Rx zoy_K6nI2PpczT2y$DQ?1_gk7BDWZ9OQ)rS0bJaHapOfDf4QJ44kKo|{}? zQ3$iy3*5!0A3y#K;@2;y2zDuo*d)R>Y?lx*CCn#*Oct$~JJ$Wp{g0a!LY&jPx9RRT zj4#9WE;6TJ+&BDuCf!l)U7EHwN}e|`gV=P`!dx*_bNQCJvNe|v)m*k^E}IS2Qo3a+ zZ9A5p&D>_THy29U1|%j?X|%bn#fbY*m$OvB?8AC;>X91Lu$J>}3mZnfByB&UZzz?r|RfErW0nJb5bz$ z$=xn9k3Osm_Yad4hf2Ak&*h|1sbyhq=OkB+sTxxU##F}?tJyolYMv)p*Jt<4uGzgB zqcuirjP@M&miI-D3ZboA5a`&)>1F#7ydKm|YrKn1{80>F-Wz&6I- ziV5}NqJp7rAnKpO?CH_nj_2Liw;gkOEH1OImJ=@5l|q$57fPYU>wjvb)JUn3 z@`bJwR(>vz&Xq7^3^pDeha)CBW3Q_uKd|K5qa-kD!IBqWJN2at%l5Zf$s-byHY+*R z1?zPz?K)}oWV`Z(u^wNh_W9(eEx25r{>1f~YXm8C<$1X3|jF;Fq^6*17Pg0CzzoCG&ZBc^WF_37B*WW9-D!D4T21%~2tb(t- zrqsQBe20^l(Rxab^d`@KFdYyIcErq%M~65GWaH7HQh4L(9DEnidc6ywbSMm^8xW

b4SIIH zMWG9yC%us4Lisrqd=7mo>i~An=L@;`JW<~1sLHg;w92$YnAVvQ=>6He>Szv^i+8|n zywqpC$JEw~e7Kx{&`G0X8#$N&?M}Pbd9)+#zSIU^2$9&Ax<+L$c*I}3Mr|ht)%m<= z`b`c33e%^s{fZ`JFIDzmUir( zdX`N>2fbHjJBV~|pL)a^;Qbvi@IAHB17dw=*mJ9Wz8XS&CRB7Thp1$%WUOR7nT*f- z;tKI{V_c;Bg0(vA^ZFOTx;F_FizTTC?-JOWQ}zk0V7uhzRYTXAS-(sBH& zGPd4IGm`5oNl&Y5@xb{=*xtKNms(8UZKq2mdcIG$8s5g!2>rb~Pm5jK4tH*2I%i4O zMyBsEyc`&Q$B!>V*nxT=;|nddb|w&#uDvbzrH5CCw>-T1yfURSr84C*m@>b4A=%(I zTr7~E z&mO#S&(1w?1Uc%4$?-$TKqmO#a0nTQ5HN&nzB6LW;8mJYm$zJQbL*Pqi&>L=-iCk3 z!xr1AN@d7rXl`XlWyrfQWIK!6PDoI2Jgzjk?B-UQRGPdCO$01Bf$xHPb7Gw(VBdjQeL1jre6D{Tl>!&u+)9BjNP&K7 zKpp=-MRRN9UvA|0+pzGYsPC0B)Lh{+G`AAts}f`1+kd(b%8{ryM=rg&bxyO+X_h(7 zUH32AAYVNgyZa7DeIn&EG`G^=%hF)~4b1%r*nmU@zy&wA0^myn;Q5`q8^OH_{;uQo znfA}p+#38}Hu&2%?;^lPgulj!N`MP)ZY4k^fWN=L9jBkK?a#FHc)1v$l?I=nxs?WA zkOt>Pz||`W!_QY!j;mMa9DW`!b8&V09geFHyq$V=?CrN*>pxEWx;%QF>;6?}eJbg1 z%T|~4szvUS<@$R6S479>+S>aFY1(iaJbF`Vf|5zHETZ7rD`||ij&hVDhZUkqdd8`C)aRJ9Bf@$Y z4M|FSg8xy7HP#wMol=Il2i5fg)uG6YJJ7fA@hqtA|7 z6cUYbF$AkD%P8i#GueSXHf!#w%T%I}Y;0sc2Sr@enMk3u)HXWLN#;2TDo{u@Ql;#v zwlZi`B%+RRs#L@#gLc|dlWw#nQYONM!9ihzlEQN)vkd4HB@+snhDxTm$`-aMrihkF zYno%wB*7w0QOGtyMJw=;b;eO9d{mw$s||6SSyYQclr%z86NK^B3lfFOBxJ%8OWf;_ zp~X^)Ht;%!49QG+ub`jYI>1;8IF9DKM?H=9UE_ z10=|aVj=`#9gmI`!BExktTSZgxMUzJM7HsmOz4T+f?lA@G&8%inLWXVfUMg>!e#c#mVoj8;tBeRwvAgopJg)j&)^jUjG(+GGh6OBJ91_H^T7LLQt5Ua$zlx=hbAxsIK z%!8)NAab%t%bn9PxndV5jWQ-gmk^`)i&!C)R9QGE&~Tbmi4IO17!x(?@o z9*b&%&Bc$LH6cjp0^&;~A5Cz?0TrBh!LoJmdMU-5fFRU7dx_q*E|5Zo;6$b-Qgm?f z5El(6!Y8gXcx0o;FN%S1P?%;Sa%oB_*)Sj$ekO^tWT;1vJ7Xk%Cg>=HqI(YAYlxR? zA+;b5jq=V}zy$(ONg_&1Dcu;sQI9v!m9xyJNQg#9Byh}m1aK*305596CD0=Cn5orV zD5waWL?}m9{K#!%&^(_qx{0ThA_sN|gI_J$0Lxe*Ds+#K(w=4p%tnYfdY?c5>V-mk zUFmy4o20B_G($QW5#eCA5|JW$xzv%7wk`%0+Jra)|0!je(Ufo+MWqK40-?p*f;Su= zLP^0w>lq=Wb#~6^wuGa!08@wtV}(r6XOfvq5;O*{1W%!_f(kIdl#-1}vJ6u=9YilF zYBI%;O+AG`t;AR;Ii!{iBxVx37(;|d zeI?vVDd=8Hnpo6`42*T~rb zB4bQ2UW3pW^n)(CR~Qu#j@$?U5FO`}71Rt8nFrX6K?g1>k>K09bOVbiQlY{lg@!1Fn4%?#D#FmI^u02TirF*I zbU_zJJQCrk - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - - - - + + - - - + + - - + + - - - + + - - + + - + - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - + + - - + + - - - - - - - - - - - - - + - - - - - + + - + - - + + - + - + - - - + + + + + - - + + - + - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..aa50362e0898914df2fd03b92671d899c22d3c39 GIT binary patch literal 5573 zcmXBWWl$7u69Dj|Lz<(z;ppy0S|pBAx&#raLmKIn<_?e!X^?J&6An<2ZX~3UMj8%Y zc>nvGoq6`d&OS5yWf|hI0soJOgPfuFERwLu%M)M&jTJ7&aS)0WjV?b)ssfYq9LE46ry*%>nQ<4|{j}*32w#+s+O=4h}jLgG8FLsLH?b=$R|D_A9>iTW>Z@c}& zH+=1xo)5V)Y?t#(FAOg0?she_mmEbj5+9HU50Mb{4|jhjlL&XWPvvP+M)R`H4%{zn zMUa!SB@P#xmA4yry}e7Ef!?V=RTiMt*`0UF(LH^9f8xiO@tr^JVnMA8@!xxqJV;rZ z_&b9Ur_iAU)ytRO-bDjZf+N}sl|cj3D!04d8w?JEh+ht=7qgS|eep*I?_NHLt}pSW(*Taf!;S39`t zo??URBo&y!GZJKJSC@N!WJ%F)ZsKa1+f+QbE9vC2LrUW}Svx8}zJAJ|RF@^22IP|q zyuIi}Cf-i}azoDF3CIrb_+}rjah41~7$%YL!uRCAAa*+-4_GqgveC39iQem`m#Mpg z^HHTZv@TOwgkB$u=aUI0HpL@MRjlB{RxLFX`=Vc7jej>CVh=NMEwcJu>T#wYHzXd* zy|{L&#ml$I$>$t5#MjgcDQa!x<&%BwPPos0fBl1L{%Yj9BmAZbSo47 zmO;4jFg-N8Mspx@bL7PvWvOmm`j^MQfUohIC1Z!q>i)I-(oDmfsgx?KdWvkZXh

  • =+(Bq=RdMWfct3lU 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 Pypu - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data__buffer_last/why3session.xml index f7c3a90c2..3e518b8ca 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data_empty/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data_empty/why3session.xml index 7f22a9d35..8d7d887fc 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data_empty/why3session.xml @@ -3,294 +3,247 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - - - - - - - - + + - + - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_data_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9bdbd152ff28df5df8c5a98ae8512061f107b569 GIT binary patch literal 4552 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 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - + - - - - - - - + + - - - + + - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..834cb7063b9b570977017b591060f40cae296455 GIT binary patch literal 6500 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_number/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_number/why3session.xml index a5dfc97b9..8d086b8fd 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_number/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_number/why3session.xml @@ -3,347 +3,300 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - + + - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_number/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__set_option_number/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3ac388cf2b205aa7a7d52b9fba18e6e06c1d9c7f GIT binary patch literal 5339 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__structural_valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__structural_valid_message/why3session.xml index e8e64feba..e3f7b880e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__structural_valid_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__structural_valid_message/why3session.xml @@ -3,160 +3,149 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__structural_valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__structural_valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..763d1bc1c172a83ca7e54b2c8909d2a91067b080 GIT binary patch literal 3011 zcmV;!3q156iwFP!00000|LvVkZzDGnhVT6=_MQt_{026MSs=j%7;G*JT?Kwl1UMeA zBnQdA-(uU6ZOLkTq++LgtbuK4)a>qJRq^3lWZT;Q;?rNZ{`XZ}u5SPE>y^LV`ndhm z|95?#{m=eplOJBzA6@?aZu{4A^P9iR-S%^B_ly70|K>N#a9>JZ@6Y_Et8RZ;ZSgX9 z>%7Ug+XaiffBzG{x7n`mg(-tSyuTbE#v)q^L1VSx87{A>E`ZcwS73Y@n7=xebXY!>4@$Q?$4ccM60zEjwqTpbx>3jdr*i2P{1iri2cErX{CqeA3dx2M^AhH z(NyzK=fCYFjOBe^E-~U5(a&T(dPu8^EA>iV$tX|f)$ZW_T>8A?wV&_If;T$an@gQo z#P&4<7NLnfu+$4-jc*T5dS+>2@yj$8A0HIAPe&oI!8YQ@SwaJV2FBRh&~AZS!1;ER0F-iKU^|I+bWjcz~}iW zriYOS8+(lC7Z_2G82R}WN9+(s>}ihBrP5R@gtPcFl0r36MgHs5EqpPp?TUW+vgkj| zxjqbP-|o$sg0tsC^P95rjJe{htbgr7K%BSehdNofS0)QPG+EfE$-*6s@Uu|-+6aeB zv;uj_urQzJQ8i3>baTv`i38}t#8C*u$0X2Mqw-bROPsmrhe{yMUO|u>LXdkx(C*}C z48meztU_R67WQW{IB-fjz-c<1H6^uHqwXahCTrs;e1K~)Tk!xr9{4MGKn-`A50{h& zoDtUtP)DF!)t&F{r{f1H9yQeAV-%lj?1SIr$VP)1r==N;Q)*2R6m@=|I?Nty90g`_ zM3|jlZCzS6#2dfayhI77D;p@W#An7Opykp?CD;VVJg>rH>R@^_auhPD=VZD_H3;IV zPSTF9XK*@pcl9{sv_EAD)qJ&YmKth;yPQ=vyg=0yY`jz>+~nIY+uvT2LlTMvLJIM5 zF$B~YnzmwUzT`Jc$uxx_emp&@0}frJ6I$S$aDYAs)UhWdI)hXwG*nF_BkU@h&Ka5C zyKHK(!N>`B7%3UUM}`bgL#C}JY7ChVCW=}^hFBDhxy{JUf|G7EQbGa_Awe=M1}H%d z2~J80IHUwgUZ17}H6%DGC17TY%@;D_lHvfG2tYpIc0L`yb85yx(_*VN;$~KDHAdWw zsxA6$L?GNoq(ls#9bPzD){L21vDKI{Au(vCE{@vo8O}-_wFV8jI=V;?%z57s6-BKMj-#7eV z@~HjJ;jH9QgS|r_+&iS?%=mkU#Gq-bj+*ZselU5|e)o_VG#BXsH*GyI2y8G5AO&_y zb<}>Le^&CS`9l8(lSd8ofMA5oC*({MJunDtV$ifzN9|YpXC;rCul7$$9$lgZ1k6|q z2(}QM6!%wUbX7**gEDHN3PCM5xp2BSKB)i9k-xJh+x)*K+Ld zDaYuaJQjpIiL zgMyQi0%li6U00|{SEw&36eRUlYM+M^`aJYM*3YSbEg2=ek&JxA^&w)`LDTB1`7btn zu=4AJRbS+*i)31ll0_}lLO>pJYe{cQ>_ z{@8nU)W23=79e&n;N|fJ@F)k)V~;Pm+uh{gd~TyVe9J^}_?C{QzsoDP>i-%&fA#iU z?p_>S5F(tuAol6?>+QO8XtIr#_LDjW^a9zuMywGqNq+iNGvY1&!<+p7SRXRkV8Kz- zA)Jsv{2~O&J&O(z1cM0TPb@ltAa{%)dyF76gdlwqL2A#U!*j$Cg5VT__?|@vr?~ML zG}RAAtdAf*Fi5<`ATb>V!I;a8dSNJ+fe7gU7tulOF>y!-F-Qk^!o=%z0Cr3VcT5L6 zLi9mFX*z#bEar?BUEXk18;&q>By4tdnDYiH*+F&xJm)X70hh$QNWP8#}r^p6JWW#FiNL{fZvbmFFv%44OSSt;X zO`Rg!P$@Sa*}jK*q1}oi`P$cf@B_5?nNHbt#m|KBbAI79VQ74shTb6}&ZqH;xd-OF z*L{D}^3f&Hy+V)1&%XqcC<19sKjf$xlsfv_LM}fTzPHQ7&wMlh& zCu2kKHX9$5);JY7o0E2EM={o6BaNsOEM!ES4A>rAmW&nWtY+9F=@K?Foio-4CX0j! z3AlD5G7BuJP?8kJVk6s0A%gU>7?XpF*(B=)9t$dPuC1@Pa~<|2Yjlr@N<$VlbCZ)m z<3VPrU3CFx=qOWEwvh3rF=I~y7>yV9HinEjSX=QfIXqv<1TJw^Jo?|WDDd{i6c=Nx zt)TP9bE$ktJO*1z28-SI(fXvK)}>|w7hMtFn3SUCEGX`c;?4xdOvbk{g-mTFI|Wi1 z?eLpf6O3aXGNuME%p|W(brx4$lIS-rj8od?f;~j%YHN$t*ve|#DbZk9T@D3( zr5;{8yz6%&|k}TnAsZV`sgti6srL*Xh4a@ zc_%R`Yb*4~LK66Qa6+ou-r z4kM3lvdYPvXjN7!b|Z9!^fOqN-~Zk8GX%@WHko?eJ`>CM2JeMgdA~j zIEP83F`gcs+}}}moJ(}7#>?dzW-p>nGKiABj>hondoUdjmZ7z(Sev7_qGp>xck1jN z-lD&j?U=+-ka0wSj*Q#DlPdsVaL7oGxmR1cPI`oLVHiFSB^d27r>mDUc2a1T>(FPN zXDrEx=~OVig!kYg4&RcnvxuNrBP4idIbdStq%7c391~h0N3AkOE8+TF70`i1SY?f) zD?#xwVQ-wke_Vssskcjr&V>*lF{Bz&1n4ttFV$E?BtM;zc*ngSlZz$`)!dQ_tC`$4MEUl_-1wU#y5IDa6Al=FQn*I6S% za+Y(32#MIhV)l9*bQW{HK#ilsybmb^w8Yt9AYoEtk|xG=wMI F001L&vwHvl literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__successor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__successor/why3session.xml index b0a92386a..dd76f1c24 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__successor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__successor/why3session.xml @@ -3,148 +3,137 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__successor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__successor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d9ff75517e91b089fb5f896a295ee3ae589f4366 GIT binary patch literal 2259 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 - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..41bfec22caae0391784608063d62a6b56db71150 GIT binary patch literal 751 zcmVzZ`&{oz57?}ykda9ELn#gvO}=~Jr2GKltiTl9LKYj zqW$-ioz!hp7i)vGNPy;G1QJa?K8lZ4yapHVt|8R^3jBQotICzhrGukc;|y1Ayf^&~w3x*!_z5k<8{^iEuVS@sN?MZ9aFModp{~4XJM`$V z@7LY5`*+%H@GefvpOL`-BR@45{X7I7a=L-u*i8u7O(8xDt0?(PtR<_4pCc8-wdt@0 zzgeyB;XC|*n1aOJGKCJEG2p>GJiAce8B?{l!kBeCRL_`DVeO5_78{REG%5TBr|lY> zWvceLm^}1tUB&Gy{d?TIO_vUXne{_qiScdD(xHoq7qj!%?|EV+b;2=MB$9~B6PH^i z*db7#9O91zoPdhwh1|gx=K`Pa!Outd{9NF(J@{;d&rT5jo;avd&WJ+}7lRILGkRZ` z8u~b)^;Pe>z7()cEL2@T>XD<1mx7j}&Z*foB)nA(w#MWY91ae?wCqdEP8R<8XxaW( z4K3;1cg;aUFgE+15)58TeL3`OG4|~9hP^nXQ6C6;COo@_JXT$4sXnH5$3$34N2g-( zV`yEoSy}96HR>Q9W<~Re3^?wJ#Yn-gYPlmq9D@j#4p)ChJg`R!EcEEeVmcW4v4>#x z`o(AHbNV%$Umq5a)0v*jcpgT??0}}{GNH!|=4LcK%_03t26I;qdZKrZ%u61El+-JR zpoQX=dFicVTyv1xextutW~Fz6D73-~U`|sdsIoz^ypW&+CL@vwEgV-tg4Ka?$svFY z7(~v!_nZ$#>}^I&Gi3!~%&J04Lcs@CD4imuck@CgBc7=oSqM4R15y?UqSi$rh*TbZ z4k{UmOn79RDCwyOFECH9qokTjO)(|zl2M*n!K8HHY!F@oDNy)AiWHL2oTh6{GLo5K hgeW13M1^;bNRBLbgj3HT`BQr2=^w@4i<+?$003r(Y}5b% literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__take_buffer/why3session.xml index 79b64cca8..3ca9c7654 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__take_buffer/why3session.xml @@ -3,130 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5bb7f289275244d4898523f8a33e4babea2dd4ba GIT binary patch literal 1408 zcmV-`1%LV`BY5N-MaZYZI8v}H9vTAgegqf#`Y_>o2i<@Z8^&+yS;7F-Ku|V z*Pq-fH9h^FdNrT*ZJwohTobD6QfONj z={MVBm*=0`cD8yDZM$6cv*n^~!*bE5&wbn8rS;nVmD;&m_cWZ{*!EF2{=?DV&*uGX z(e{t4v~FAf*wbm%cLcv~7x(jdyIRf&xtjuR=5r{{*1vsl^ZQg#4x3K6@7Bw1O+ov3 zpy#F@rmWOQzbs)m3V;&PQ6#B6hy0C#8gfENY!3+zgxU?q?qM7n)a^LTP>}lAj7+}f z0)f3${~z7Xd+Yq1^{+4(4y7<0t3r5`3iXw-m9dqv7sOZ^^%11HTRx=tg;jbtt?>la z+gKk(6X1jXs1r;HhZuo8f#htE#AwmEt>Rk6^&Q2v=_?H@4J!?Q<{qbca$R*P&VuWy zG|b1n=lj$0VBpn$IUhM^;8nZcU%Q}+*R_e)_L1J6E6r~|RE4SvRTb);6sj3F?{*;R z9ycWwGL_A#)Dy+2)D!s$)Dv-h?}wY!8f3@njD4y7!33W0q zSAnSlQw8RSHVePMy2F|B{j_zsrvCa;e|`_Q^{vI(zqKfG;g`#KoBsKF72&_kxB~g8 z&zV&}>YlP^^3j~8Wp~@NxNwE20#OB`HW=MlRoK+N+nlNV=>dzU{nsV^+3b{x&MM)6{{p`uZ@9~nb3iUoM9)QV8MP2#lnGiHMON%>M%LME zv;b?Ff@BPf)^L#+HweP=SgzNQ34w)-LI_k|@XR^-oG=)X$eoOMW0MCRz0sPHsZ>D< z5Qb&2k}fD18Ht8qo#aM%#!RMbE3}?@Fqk5PkOCRWhG}Cw3o?3-z%?+42q{Kj(pVV{ z8L77!N#%?W&LY#!NFD{I;7~hAj42z-m~_LCnP|PspcGX{GKurxqmaG~P&zU)gv5nU zTq9yq!b%V#mta}NkZV>#U>o!?`yjJ4UJ03#VJ0!9DC{&xm5_{py$#9>CyWjXFfu7* zL@hCJNQ!bn4kb_k4ULXcYB5HUXgWUVfCOkEOD%Lr#R}hu6)+xeun z$_g>Td*zTbC=|;mOSMDEbyk9EKtqxcLog;9PLNb5;H@33Y@-xYC{rZP1ahZ9lD$C= zBHNI289lNl1YOEBgW*v!k%?P6CZ_2YZX~)~te~MXL#4P5p5mJ=IG>|en2?kp1U0Z8 On|}d(x5XA`S^xmUH?P0| literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid/why3session.xml index eb04c23a2..f51cd30a1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..832d8163895af26f55779316b79dc7fe816057a5 GIT binary patch literal 603 zcmV-h0;K&PiwFP!00000|LvGdYa1~T$M5?odhbPVt)M;lkkCNssq9sZG^13ov6o#r zB;UT;I1e{XXhNLU(8aJ8_J7_#WHSH=-uvBiO#PMjdAL;GZ-$aLYwuI09(~-7(`NL( zhpBi!jD#Kk3g=W{qWl#CnI0IY0@_gKCbsrjpO&7Qzxsp4fqKn-yuzTQu{0-dq`Fs9gPp!ij#Ne zaiMUb@Ly6`J1~`T8_RZt-d{qW@hW63$90lYyCGjQFXXbx=?zgl$Nt^3y=$t z#{*<8&s?0VKmGpSbG$0^Yq@9_u3ydd>Il|0{P(@hp+?-9&c3?Fz15*P+|Fme%1-Yu zeMHkRi$R8@r9^>}rDPdta88F{K`Hfte`y;fMG(nq9ne~*glR1?NV*LPqn5FXSfi_@ zbULA~mj$bz3l-YXI%L7MGTJH - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a8a9e83569e6ede3e4ee7fb07637ffc695f73c31 GIT binary patch literal 8724 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_message/why3session.xml index 1d5a56808..125a71ee0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_message/why3session.xml @@ -3,160 +3,149 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - + - + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f13882695d674d3a96058f314b980b5943bd46d7 GIT binary patch literal 2978 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 - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6cc8a1a3dd4227a52291986690ed307aa1345cce GIT binary patch literal 318 zcmV-E0m1$siwFP!00000|J9SfZo?oD#&VW$u-!i+d`9|s?kjFp@05!rj2ID3G z>&FtH_sRAhfU)E>s3FY8a8m^!dS}z7i1U6>2JLM#ObBi&!QN<27eompd^_w3by{OI$W3 QsuowLA48e7isJ+T0LM&@?*IS* literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_value/why3session.xml index 8bc9c3686..9f7569a06 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_value/why3session.xml @@ -7,41 +7,33 @@ - + - - - - - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..36cdf80cc61f9fc9332ea1b841f4e4ba5c5b9a5c GIT binary patch literal 498 zcmV1il|diZsT#Nflg6ESJk10a+F#*|_`r zqo7=87dgX*FL6Ur;*gx#ouwpz3^B&F9ZUBbV;zn<#{DqYeIH|~)a96IpgvPS$0KwH ziV^oirTlR>jFh4EW8A{`XO5y>VBW`(1{euH*8l5WO1I3IhOW*r*9pgI-Q}5YwvgX? z*j0?RKf+j{pVu+?H692y&`q>4yNgJN(9Pls}-B= z&pVCl{0PB?*6I(tMB{01NmSRCE7!pO-zl6Q!TvJ!(oz3=emPw)3iY++sx`0=v)r&U zA8Gy9(pqbse|+_W;9>>mUj4T+;>7~ad=}rz-k;}x?jP$;%Y|V|PGyb+mb8Q-xeY`=^Dr~Y;3_hr5Y$?>x>heYfMHO o)8sAc9JAI4)T#IYyzs>3!abny!6sRPY#`6x0lz4l>zNM#0KsPV@&Et; literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify/why3session.xml index cf5fe86d8..5ef553112 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify/why3session.xml @@ -7,620 +7,410 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - - - + - - + + - - + + - - + + - - - - - - + + - + - - - - - - - - - + + - - + + - - - - - - + + - + - - + + - - - - - - - - - - - - - + - - - - + - - - - - + + - - + + - - + + - - + + - + - - + + - - - - - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + - + - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - + + - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..16a9ba64f0d94d611d38223b4afe80c318dd157b GIT binary patch literal 7561 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

    e7EZK>hGM_!=pB4a5RbLc8#t9AivY(x!iYnT z;3x4=<;#f%-FpSnVUHBN6XiHU3+-EYM8Jor`{=OtSYW6&T<=ibKsfNex`ejW&_SrG zX%4)PaEBof#sWCrV7HX9FmVtQd>E^&I>JJ zF=u1|Cg7gHUDKvxwDS!dSU9vcbBq@5j*rDEm?QW{I&<_|g8ZhKNdp2_*c!(aU$w)V20>e4@JJj`f}q4#CsmlL1u#yg^S?Zp1J-D# zJ;aq)FTvZ&Ft}uh;$TU-(YpqbC)~yWpTfdvLJZ*Wr63T%Lcr0ywgPi7MPWpVMZ!Nu z@9=?OX5mt{I+t$k;l($Ili>dq8LQAj)F84BngQ=Y2m~3rYX(mToP=tAS#jyScz8v@mM>4x)5tJdO^f4!J z(OKR_J4`hinuqT~!{Ka~P#svzss@H&UC5zp2J!?%+8)S}vN{bqYQPX~5&RS9rAS>f z1M{70;2r>WXm^ptBi5`@fQj(plD2i^Jc!r${8MkN$}_3=GH(`I5-!;vn{!^4~Uo`9$2NeI>}lk zxX`?Xa%!kW+oE-tH{(q~#0Fm&-h{3C4>uErS=9eyt##YY6hUsP@NCgx?8u5}JHn^V z%Da*|EKb)V zD8vyE<2vxJVR(&-+A;9BAhvM{Tc0E(v1{fUl^Lw6F!+Ia2nH`z$q2QDQw|Pwf`pKm z!NY|KL|B0MO2eL26M+5@fmi3FTVBM(N^`7)#|EKSVBaEsc943HC05Xot{H;j8mR+i fj$<0dW<+hKvJaAkNYc*}N}~CH!wIxx$pZoaT|I$S literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify_message/why3session.xml index cbd051bfe..ff08a80bf 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify_message/why3session.xml @@ -7,81 +7,57 @@ - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__option__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0cd31260975dde1060916a9910a3805f9aac36b6 GIT binary patch literal 1060 zcmV+<1l#)`iwFP!00000|LvMPliM~BfP4OmbZN18qe!7flWS6C*m4%Hu_ii6mUtff z-v?Aqvd$UFJ}xBr&TM$P;qGFwj}IWo{sI5Me%)=;2Dd469Y*X9*KJ;Y?z+Y1lkB?n zreCaAT^H7?K7H=H&Ohaxwq0IqcYO=3nNuw-ac@YU7=l+?Iyj?FZ17jwcy>b;6Y2cG4>2@D* zlbZhFui}?qua{l=I4VkI*sfbWEtlP9y(o9K`%ym@s~>RpEc1UarzBrF$^FBkFaNj} zic6s{17qKB_XFypW0x{&70E42>uK)uLxk_>?t57@6>N}Q`6ePX{+=c0k&9=^c`UX0kF5L688f2g$Fq~m!`!Sx zNDcDl`-8MG7>kK>9YWg|5WTs1kNl#0<8x>@Y5niPV?x7(h6xSt6AeGfUP;^xGOvx) z%l;atO=v7)M@>8Q_k@^{)kn~#BBEN|On{gGF#+No0fLsLUu@TKhuBV!CKDF!fCc(P z{q3MIomWgyc)L)z^?AiTk#Og>sr7k5jjpNobwQP;Is0+J;qdwU9W(1^eXVbUzj*~t zOV%~sfxm%Q;A7CxSd`2#&a=%%I>j+-mmS8Wm0^yh-{4P>4H}j;b08c_uf4NI+sGX_ zZzZ>KkYWw!5Uk-+gEK+8;6v0&$B>M1!9pxTyh#9_Daj3E#!9CFb1)#K&mwB>co7l} zV@w&YG6d^{wB=?pJV`5%XM;8rA=w0O5Nw8&Bube?k+I-)5DK|A5{r;(OqrYW**adF zGAJXUc2Y7eP+0_Bgmg2^Mlxxliy3W7z%&{gefgb*Fu4es9}^OS`KYZ;EO~7PZxeGo zGvr)o9tWRnBYiZE1*tO2%Ja;@OE63_m%s@eEV%|t{7PtqjXEGNw>|hIq;V-42w;Z1 zu*MZN#kAJoy=0yxtDHrnJW7{z_Jb5Ok#oQRQ3ES~i=4_XXA`1{*<>jPDc&%!JlY(b e1ttV9SwYK1$#GN>%5(=Q(fkWUTLtWTHUI#CbL_bQ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__available_space/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__available_space/why3session.xml index 0da8ded16..de43ca67c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__available_space/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__available_space/why3session.xml @@ -7,18 +7,10 @@ - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f4efd129277fcdec5fac61abdd8c99065c233aac GIT binary patch literal 193 zcmV;y06za8iwFP!00000|DB96ZUQk7Mf*KPE`YQSVKD_QB0bu6^lgvHNXBdI0WG%= z2&G7eXr8|GpB^MrMLseXqZ#{eY@riXE~xB@5I}#dG0j9$u3tn`QJHch@>5oxl_;U< z-D)L?Qjq3rgV%X9yZ4)o&lk>~|Hq?n3eR|dkB3{vNjyouq6)G;9vte0u|sP7oDXz- vDte>#gTh^BoaN=Pif#x?yXM|`>(-H-;ZJMhX817s{x#_rRucNhL;(N*$q89@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3session.xml index 31b63815c..51fd3d4c3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3session.xml @@ -7,32 +7,21 @@ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6a85c9bdb071304212f8752c77b4e73aa86824eb GIT binary patch literal 420 zcmV;V0bBkbiwFP!00000|Lv7eYuqpp#qa(Uxrcy8mSp*m!(NsKLQln4F&d3pfunV7 zW!ZfD$b|fXCWNHjL+M_Ggdciu{Cl8sg_l@%ZsrMRCg(7qds^o>9-K?lUOBg$O4{Yc zIojpIhvHmJ^HQp8nZ{IHNDIviQaKEAd-WYJ2f&L#5WE<`XB`&4z2i*mMttQI6OZB1 z3ARUwFY2Y?KI2Uym+~Ixgt@F=@W*_|xW#ed$L+c_d^44MxBSA1oAUKIAI_@QS%((S zF{FL{wUU4=!RGg@RrFTU>or-*fh(aufbwbVN2UJv;=hR<-sg@fyBYIO9?W$eSr6^X zM?dpX@AJ_g@lmH9{eL~e^TDk1KAquItW&X$RIJT$TekUU9>Uj2Pfhz`(;BoLnLZdJ zS|5!B(ODUE2xuu1csPS^x`|!nt``+nM>c2)K`ASJh%tJN;HyY9t+9k%ByWj)A0=z{ z(CJ=VP$mdnMY6G?kA?|Q000REgwe|C2vq%gtfIEjR(2dgqm|$-STt1|dNAz!URhB^ Os(Apt+KH(D3IG67ztB1W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__context/why3session.xml index 9c8bda13e..a31e7b548 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__context/why3session.xml @@ -7,31 +7,23 @@ - + - - + + - + - - + + - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0f84ce1973b9d41c765692d8889f47712bfffcdf GIT binary patch literal 519 zcmV+i0{HzOiwFP!00000|LvI1irX*{#_xKH-b+EU{#np1_}08Yu3{vOT7hG`wouL8FmaXN+G(QHj4n99s z70Wc!rd5V%`3Jj_V)$5B>x;rP1iaKl-&xICm^;Ua^J8WQUtWo=RoA!4eGJX9OBr5v z0AI^4#Eie8F<~FBYer!u!ruC`l0Ys$CIV@&GYsDlJ{_57hc&6;k24M)Z(HS_qBvAHAF-ABhz-m~Y-&ED zs`-fR%tvfsK4Lrbd8^#V(9#M=TC=F736898;$1l}>@B~y{ND2Kr{xQ>sjyh2TwU&J zA0V#C{m;fe)$CKv|1s4N!o1`(NTWh9N(aN02?m(dEHbZ}_o)g%a`5|{wh@DLQx>$4E5C=P+5q)>t+`2{Rl J{ljM!000nn`1$|< literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3session.xml index 34091170e..6cb659b36 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3session.xml @@ -7,52 +7,44 @@ - + - - - - - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__contextPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..81b3c2ac3c7c19e5e128ae9c03c10796b49c4e3d GIT binary patch literal 736 zcmV<60w4V!iwFP!00000|Ls=GZrd;ryz47^FA9(pAL1bgUxEfGaw>8qmfR&OK#>%Q zHsZf8?KG&1HqJv;|qNb#9;@1`5srf_q+v*gQH{_Z#V4 z*QdH`N9RJx8zQ-dSa+>Uqb`UY^@!hIcF-ELs0p-ub0 z;QO#9xQ1qYUUwS>-S=th#vjmAaXXdYAGEL@!|;n1zdoy?Cl?y);e|@YL8W{a{oai_ zgMev{J2I(AzmAcHBk1e^U7YT`?Sz~CBH3yVP&1DJde+ufv!cs6bS~%7Su&kBqgS^`k2!n7$)AHS z&SQ(GlcJgh)y$%Rp2GEg#yA7KoT_wjnDi9BU;VmnQr)_=?J4K@ZOR{g8l3C9I_D2= z1I?Q9&w=n`m;GM_ef)%9ZJ?)vZoA~ccU|M?;dHd~Ub}9ZXKnU|v$rhu+p^>l%Tlje zmYm=%Z#3@3w`aI@Y|5kX|9pGOT(ETB(s@hgo%_V}F$pehJUG%aQ^w210v8LsOba~0 zV6gPu(sN7CUFO(vX7j-+t&mtM&Gs@&3Rfrf^WHA`!Ne41Pfs#sF(14~CJ5IWQ%*W$7JkM>nL+jRR{o!9hdD&LJ5 Sc1ZSZNIwC(17OYbAOHXW;AxTo literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3session.xml index 9e97beeb9..5e3df4da5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3session.xml @@ -3,156 +3,148 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..167546f2d04852de519f0dce86048fb4369c9d7b GIT binary patch literal 2345 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 P$(sKIU#oBxLx%tWO0 - + - + - + - - - - - - - - - - - - - - + + - - - - - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__has_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__has_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6b3d092463ae94bb12a412f2b4980cf1f9c0cdb0 GIT binary patch literal 761 zcmVg{1|4?MO0PyUqer`1G+aR%9xfq2F5tFJpM!0}^ zk59$%*5K`GcntjwtgsoLx?jTt;&M3;cn2M(5FkT%zISE*5JJ1US0OA{L%Uq`A*AJE zz=t7(xGn`d()Fu(JA~5WJoht36^r$J9#+eigxzN3JDAM)rgQ~2(EsQ=nX&+j9NXQ-$;=R@ zyEW%CJyRDXhhZ5yTpb!-Kfr*$L^t|1Gdo84!B+8Zjf;d~4m7|X>-tZu|70|`ed?Z! zQXVR7hr@QgVQnma-Igx5)+>pX#CQ7=Pj(D!WtGLs;(yw>RPHKw@6KI2?0*kV_kE}< zqm|K*v15GsRjveAfI!uq<6;F@s zHjY?V#xW~{Quo#amFbBbYfV4Iso}F1hpf1!aL2QVIyyw=lyDxjP@XYiWOisj@h@C8 z1+)eW$O|wB)a(>0@4RH-t(KBhtU<+OWX|~PjLq5bn1nzOC^HljGl@i_HMMdZnei+p zFH~|$X4D8yC+i%EWFw__2~de_wct`IYcul@qjBgX_ast{w-%I6K1%JK)GUK{)?-Y@ zDbC|4(v261d*Oh3acek=l%$QySOE;U6C^Tk6Y=b*+DHLFj^rXOMnf(LG~~EZB(jYY z+@=K4Mz0cTiBSU+H2+0p!7?Y2YrOIiN^}%srb`yIE;|q|QEE#W^W+;eaa34_mP=ur zbd-9b99YS$jd7e8_C^)MVx^E$8q3HrD>Rq{g=GbiGh0R#Z^%WUxDw56q6tQtObc2@ r7j;o4j{$PgAj>v;uXDjtsJl@dBN!FAMy64ZD%pGon&YYNg&zO_g2i2^ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize/why3session.xml index e5370e2de..2231dbbf9 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize/why3session.xml @@ -3,219 +3,204 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d667e4c49a7b27b049671ce1e99350e1c6e83515 GIT binary patch literal 2258 zcmV;@2rc&?iwFP!00000|LvSjPa{bZhVS(&_O{ZjM#_l%mWGkIplPYKrAASz}az4!a{`_n@ z8}hvWPN$cdf1R(-ZZUX1(R4M4+1U^%oSmKa`P-c+{&jYFdU}=bzjQ=#;M3Dk&l1mO z7sH&UGtRy?lMRZ(Qhu<>{u2x648ByXpFP{-o19`+N8@!6=?f z_>)(x{Lpmzbq@W5PU&J`NfDG)P8wy8Zz+9TW!p;M#juZ`Q27<>J2W-c-S*&uzn@5O zV3l6Q=7Y!B&uR8|p4iVTRho%zw^UQ;S8O{R{fB;|-zPRgbkQB(A1{Y&n%QR>&iY!N zK1>IWPWi{gzQHQOo@K-ldzdEr%Zh#@kpE0&I$tW(>hKH9-zxDcD)CIK35Zo4{i2Sr zsg4};U?CTdSgWLOhIu818CrSYb9rwB0=QAARs0=S{5e*D=AsYgqM_CN!_|DP;<#3b z=7SIBgC~dHeA0Zf^2zoyZMJE)SuQh2SL(A7nk$+su3WJcgDc)l(M+*4#h*u2xTRiP z!VOMn{`koL_+!lV~I~LWQa8;WrnklYL!3DKoy)z!HZq8`VxY~h!Jxg4? z*m%)gamN)bbrj7M%@o%+&8u>J==$xp^_y-UF2_` z$=+ct_%}s5c&n(xy-_C{>V5(04hjHsatJq9K>LsCnc$Q4ZxAO0STa(i?lJ`*>0 zHrw0f=FU@n32yFhwKvMmF#zB^1MgB~6yF}(JB?8HQN-+=S>{{uk-w!F;73Kzt4+e_SG+0?~ zIpW5G#)8IzkH>=REx~>L4s_A`{eWffyMl*)HgWXT`7yL?WO1)v7i`^hY`;~ZTZ04`Z-3!@zx`6W3hefk+*|A@z!;S zR;uKPr9of7SdFrH7riPury&0Ye<{^vuz{CDfj(uY6;gCwstjP9$Vo+x5}h?*JVs|p z8%sW7uu_mso{BfF)Ku7^bdflj%h@R_kWtAb3qnF6m6YZnxm~8Hva~4*nFK2Bm6sNZ z4#B!0DN3j#@3i*OBpD+gWjI7TDT;$6Az7P)k}L3X=LFMK-5nXD38I*f&!b;4;9%DLnuCsiEe z4tTo5Wzv)oEM#v5e_9fF;S$?iTc3jvHOP0AGy5%DAEU@onG{rx;DHk&2~%eWqVvhf zOl;MVjAqwn;V4^a5JYf6SN{TZd;*I~sX_oMYaJX!s~wcU&I`iSDBLnvDgvNHWxch^ zl)!Ga30z5RJXK;f9>`8QolS{B2k(uIO6N$4lLt~3by%E{+rjw&)*Dt!q7PUoxJ)3} z=u#EuYn1K;4<^TmuDB>eA>zIi${49+id0gKGF#^IptJfGfCkSKkyT4*Cl1`#A9f(%=-M)@ssnH+M- z1|)YcQ>93YMhfIYD5gQgiWt$kWF4>}s5qS@W@QvZOY_-D6s2k|gw8oBDJvda)=*e6 z=^bdvwRaMAbTtaQA`@Z8n4L&PiCD5`kD^u*ox@b?h_Xu_g<;&Wtcq03#RQ#r0@5=O zmpn$*6_$cOvEaB1opeTXDHI_4A~2|`5~#akgMuim5GZ`YqF5!Qlpuk2ZaFUQ>WqnT zOok5?LW9!mcPl6aDvE7bqb%c(x0`jXkS;IjVtG>R z#HfQH)>dmRMUC=ZNJT2hrRun*Ah{8-dYR8$RN(cLc({QVHmsbGddn!|K>FIX zAPiYv6SGcr#_VD4JiCah6$0;)_ad;HSX5`2V7yxM0tPXb>KtjisylZ&*G@WDw9{y! z66}gpfE?5cN!KC2m6CN2G3itsuY8UXTadNQY>^t}I~6!TNi70C7(AAmoy;YpF&db3A(! gJ#&O9pSV7W;c0cn3$MDaYOiGXe;d>7cM5a>0LYM5dH?_b literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3session.xml index f52c78bc6..f269372ec 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3session.xml @@ -3,153 +3,146 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..493559bdc26c4a3a2507aa9ca20ded558e800516 GIT binary patch literal 2199 zcmV;I2x#{oiwFP!00000|Lt7MZsR%<-Rmo6H;ao4u=pm>xqugAOn}DBW}vOXC$2D# zleU$h`|qbH*^ZJcCw^t}FdIlBhs7dUbQ8$YE4z$-HnTahvt^q9Tz_}>&Ae?Ev-a0r zT+L?gSBpRH+U0C^ciSvlT+oA^-$(qo9A>4P?6tjW)`Ko?TW8(v?R*x0JhQ@&i~IR} zr$pypY{q*UNt6FamG_m=^Z#Fa!_V-$O@Y=)VuZu#XvE_fa?JXLG__J2u zH>unc!=vaok3G${r+H8G9|(Uq4FB{%{2v4VkBI(#MY3SEVD-JRilIlOVF17NK=7bI z87&PcG0DH|C;QvFak3w>zhy9Y@jo-N_pc+6T(G$T_mjYnn^^$aJq;Mgz+fIg))d>9 zC+kQ&qZrV~zIeUq40McT@PDJ(Q9L`4W*5t{D|>Sr`WW>1E3_-LE3|vFLToR#ya8GE zEWQS8c`LHOA#6E~EFYUIr4)Sap?%XaKYcgewy_5BecKl=R(JEJorPxQm#gj#B(H%X z7&0C=t*MFg(6^H3FF9+I?|_I={4I8V5`^ini49{qXn_pE=jPq;&kSiE{rB~a76uKh zHl9q!GO}dU?TBa=hul2yKiuIM?sGJE4}3Pey=xnUZU^8t{%mL6LNNGxY-m8|uzPIP zH4lPt=-53up;lvq<4PFWJ-F_HxJ26D#?sM$RO(KVkugG~^`bW??Or4?3X zljEzhZ&zEz?eE9i;_Ht=OW$iy6OC0SlU*gpBx~Yx@q|(J?6vw84c&R#qRPU~PYdt$ zYhxFUDH>BW<|AuNCj;!H926BODo|A5^Q*wY*eg{);eX-(SKz;``rW9bz*qQR_+R+{ zx%s~(RMlR;x}#9|T=-o0{5kl1)XrhGYtt~t8TvO})9a=^p=g+#^29MYebZuchV9Ry zlSL;lTPOR&k3|uRA{0d^iqI*-qaOSlFWGhw&@aP#+8L>rQN98Bw8+l+WCu>sogzC$ zc6Q3nx;!Y%FU&8@zbNKE7970>&?hV0>yHFC8xY$~i>G@Soe)rRjN2z$AtPSFoc0%u zqdtoW77@Hi5$puuEPJxLrgC~F-9letdb$9k8$LZbeCUPsdPa|Rw2D9OY0$ z1a$li`FH!I^I*eQqobnU=TdJd^1W*d@kmA^ShJWbPkx{e%w7|op?4#6$I|>o0Xo*( zr~)0E#Agb0a5{G>(7}$10u=>1MuDo4*Or(VOnDCE$cxK@hw?m8o+rNW^F&sJKkaIr zl^u8VA^~6bmhkB{;1mfcZ*n&p@KQlv=wIkx=>KKuUqf}SO~WUlE6P!x9X_ydlxK&b zaGWdw>%FbvLW=+t0Vo3Sl3yxEYO^r~BgQ62f zC-%?@Iwlk&I`PIbajZ(b^rrc7zC{Vj4&z6bg0jPSj*4MFEts68ws`b%^jX7xLX+dy zy?a~abf=@+t&^AD;!IwB%{v)68Uin#4Vko)!FjU7&oJ$GplmqCsquPxr0m3$zR981 zbDb#rFbB%I^wm|x0u@$R8H8dnT9*izki3h|C}*tw8~l^;iiT*p1CgQ$#_9wCJ4IzU zjRGiev?5gqoCF%R4wR`t2uZ@pM2reRq~sBeXhpo`oJebdd8dgWmg9IyD5|7n67qQa zc>#uMG?JAPiOOV?Q8;1Fm_Pl_uB+%O}Fh)l-le71thDH21{PJ5j&g(e~LfNRM;wJ1G6?s+xZfET5-fI5z)}_o(TN6YvK3~CF+w$B-UV#~7arjrDMK*g%0cJY zQ(ZAE>pdlC9E1@WdrUc8s-ePgh$35=%5(gXh!&PaP6?2R_i)srD6IwrNR~fRK?avV zHS|(CK#XByQj9YZy%RCdi$R5Xc19b7yon?QhmM_)76|dEW02{{vfy%R9Y= - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c741a4891231bf4d5466c1af61bafc15428b5e6f GIT binary patch literal 1061 zcmV+=1ls!_iwFP!00000|Lt4Ljv6@>-Pc#lE~`ksetVGx8#FCtIbvJ7wyza5G)uXFq;)7@bFy2RUgXy?lZT+eaYVcV{0_3rlH8O#{| zv%V*s;$lPF%l_jAKg`4oru{dcvFWs-+g10q-F(6oHC_H0ySp9)*A&_oV}{&)uG8X6 z+s;=HvTg5H-TZF3Y1?qO?C49^w*EdPTDNJw-gNotW?Brjz(*v#hXm(BJ-MUyK=`>J zJ4fUr#wXnD9Q--iBUR)Z%4$t<9z@b>bs|ByU1A85q!8P>R^ro_*vf=vlSe)*_v-^lX-_tVC zF1EANy6azn8SuSk1RmJ5a(N(^;Ru<}=FTxPixJ5@6zd3?2gjyL6yXwM+d$!YiWk(D zRPwrrf1F>hLaCriRgqNjBU1GTD^-b5jkw6=Y_wG_xG`o`P&8$Ha>ZIov1Kp@h^Qh|_Z~0q<>|f0vq^tUg|6ucO0fWJp+>-{^sn^4yq9l`{`g_I z0F({=baAlFb(@Ti<)+B*vhw5G^pw#!Dc(MJ1_tkzaAix`7M(kj^mLaK-{8>t30 z_W>c_O*Tj_f{185P>7^ikRcoCCMX4-d*^*jMry@?l2wX4mrAfe*~m1;DetAx#s@FC zf}BO*Boc!0Ilw-f_GL!FFduD*T4--ckci1TrMZ>LC_tT!T;tIsBf#eHwIac!@hR8S zdGINR)29GfV^qLwl#G)RC?`3(9I2EbC>f@D&jA`r6qV67LFQsW$hqNym - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d6b7bc0d0fbbf58ecf5bd2070299fa240a04d6be GIT binary patch literal 201 zcmV;)05<<0iwFP!00000|CP+KZo)ti1km1JK_4OcI0w_DMM)pIU5)qF$x6rhaOOcD>ge)o4P|LT*LCpBp0a#!1{8qNs^Wzuv)Q6#%9_$)`k z93-lCC1wlmdlWN8{dPMgtV2k$rDhu}KTecyKD?$vGC^(*(@{_S)Dz{M^eN&x@> D>~LZg literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3session.xml index d119681d2..00976013f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3session.xml @@ -3,203 +3,176 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__switch/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4c609e0c425ba77409b5c55d6262ec3f3a0c9066 GIT binary patch literal 2992 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 m7{+~c62~3p7~&iGWC - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - + - - + + - + - + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..63cb65df4b4d6f83f6c7b8dac6000d2bdf74b057 GIT binary patch literal 1572 zcmV+<2HW``iwFP!00000|LvPiZ`(K!hVS|nd)q6A-#ql-ORxos-OEB(fgeMxv5xK9 zO3?iK9Z5;*G>$j6gjRKlBzEGA#>3&fk46;Te)Jz|>Hpr{;a~Kd=zsg@)5F@|E@QJ? z-}~LtuUp?VJKX+$`)@63S#y8mS9^SX><)SBICwq~YN**@`|7X{wXWf&dsa2OxvB7W z+dee=fBY7!mR|P%_m`)K%U&4I|8_P2xp9-i@G+x-E@cg9mb~di5xvX?(*tO z(=505vS~KkcDY&anH(`F&fn#p{^J^|3fU`4@-22z;V6!o_*y zm*nwiP#DdMRF4!T6)^HJ9>kC zv%Xucn(byuu6H%?VMOQpc|5+k_p3YXyqr6r*0)Gm`*iMsLrDxJa#_U=9%wFhluA;1 zKZWCb^|L~**nulJ*Vj`(?!d{}d3}t;9{3O!&P`;W$p=mFG93ZqAv4aO{i&e=C#V6J zW8++E3@9yvFM=>Pmobg<|!wFY`s9hUNC zqXbdN^+U)71zlH$uE(_kH(RCOd@PhIlq!_^o|GD(z}X}>W569-XW_?hXPmel1Fn#& zkgAYsMx?67y=~L$IKA%fQuGvp=GJ&f&o4{O8C&T`eBH*7}z%$nGRmgX)>Ybn&oNHU~tUNs(3JRf0 zi&0vPcLzT~Z%|ZxRVtpbh_6D!bL}&#Ki}M4eNYc2^Rw*m%5vYYxZF2`8xtKg!e+B- z@bl{ngm1-h4G@{_Do>$E**^CDA<}JYer#;zB>no&&WD1Bf``&%^o7&0VW{AdXc(Ln zG88ftGF%NArf3$XaH0!W3RenOX2g}zbQp?w0w0A9g$;!b*TIHyEko%Q3J(eou89Yu znuO9F6dDv7%#sG*>}Jumdb;m;a-&PpanW(n@l13)Ze{U=%umpv5TFpC5a2opaAN!D zTmK^x6bKXu6bSs{5Lmq3B%InSzxa{s5R1_tN*H(eK>%k@^s!quqnu0-%*&*V^U{a& zau>|F94%h&xEndn#j#DiaB>&#;(tFZuxROP95%lB+~L=VCh}ZWsI&7yMg~&nfKFSA z9-;*=1ifH>gFm>g5@Xsr6J%1xVQ?%e=3)>+#jK@KWX0ZR1V&o!yf)6Ntifmr5}4u` zY*ZERd0TpHUJ#IXVlQtO80F5M9VxaTS=$svn)Lm^K_V_@K1Oz$qCh0#ZT+ z^1vh`BUf>zRW|g4Dx%{7qlwwOU;%~Cwle}&xhRy0Mn@$%mntR*%Gj*vZ+djy@Bk`f z1PGcp2;K@7s3t^ISuvYkBKKV(0Dq@1-esJVtu-N;h$f}T&?*W_&^!3fN>o`h7Ntra z3|dN)bU{0rkR_UH9(!MMQeW@05|&|(K~e&xVp)n1TmqLJ3)Xn%IxAK2kf~G{B^p2k zg|e$p4K@SKf^dEAscM9`hNe=o9F*nR84)-q(ODj1(6X~Kl{BP2$D}9kfr+Fn4NWBP zHA~vF)LGd|2`x2A1;|Xhm}#n_$f!dANK%N-ifRI7Vk+2VZDur6*0~@e)7(%Nc`pmj zDyzVu3?hZ(G&5Q-gOU5}jprndu24BtPDsnVP^kk$0qw75Ak8 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__update/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__update/why3session.xml index 50663353c..087911f52 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__update/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__update/why3session.xml @@ -3,231 +3,192 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - + - - - + + - - + + - - + + - + - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - - + + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__update/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__options__update/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f6074587026fd150542fe5151e813990f50db98c GIT binary patch literal 3115 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 - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..891fcd74e90a4ac57e7f2caad074eb320e170f1e GIT binary patch literal 366 zcmV-!0g?V6iwFP!00000|Lu`YYuqpphVT9ry@!HFvMl+KYiJL4WaXx?X-dQagz(=IWl`A9j@Tq#b0e&&PF9Zf}^j@$MQ3&i#G zF5Jj&sb?&|Xpx3)=}1!wILoPyFt!)uVf*~B#ofOFE;U~yK2MO+jG5*~p&R->>QOOl z9(9jd7Rthi6bN7T9H$dvT8I#)*N)bte%sM7U% zP5}ys-R`^!d?Ym{nF8`5mwmp9zC0Crl={I2o~o6rLNLO!nfe#CB})*NvR*#XaBLY~ z=k~=t`~Q>ws*`V;0L~7^I_F|E+VskRFli4hwMO*t4SwiG$Q$Q)czf${lK6!3|>j>jCkmxV#fexa0a>+QcY-0Z*>@g@5!s)iW3rRqvLLE-kFQj MAE?-*0LBFX0J%l8xc~qF literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3session.xml index 2148e8429..5b0e72981 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3session.xml @@ -7,32 +7,21 @@ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..22120835f806023934a3df09148ddaaecbcb8f16 GIT binary patch literal 418 zcmV;T0bTwdiwFP!00000|Lv7eYuqpp#qa(Uy_bMSlJ)11!(Nsygr178Vmun9qF%?? z>azLvl^dD{nh>&V4kddL1A5ZD(eHuE4zID?g_$RunL@yb;mMM_tE1c7LyczgA@;;mQXMw}Z#4(Ry#_^Urb5ns_b#149 z&)l_-eDuqF+SmB#ONu^Ligu4RTq1Re)Y&7odH;NE{*$losn1KsPRLjzy`p59L29pz z@uGLVwZ>`?PI%`&!I!p*A|qoDk(C1PwRJsFFQSh!3V~H58sn97!Wf6%YC_@2$=(vg z-b?CDtRmT%deU$!TN2hMNzqAYg#rQAC?Qo9sV1=&t=1|r*~BLH#(B29o=pzOSCMXh M0gm9j+~*1a0EWBMaR2}S literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__complete_options/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__complete_options/why3session.xml index e181091bd..7c2ebdee8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__complete_options/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__complete_options/why3session.xml @@ -2,40 +2,29 @@ - - + + - - - - + + + + - + - - + + - + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__complete_options/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__complete_options/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..08404b29104b2daf8f8217c1c2e2d6870923f041 GIT binary patch literal 419 zcmV;U0bKqciwFP!00000|Ls&wZ`&{oz57@6+@XLz{c-4Fmth5VEP5qql5T`Kj%PDL z^6#fC35EqNkZ$Ngnm}k)S>x?*?2Zf;4P!N;oLa@&ib>_&BWvzhFPhVY#1P zz*~F`T*z|N9n1?HrNDdKV4oNU+3J%aTmHg)+uwfp<8U829lx(W%@04>bUw%=)D=uJ zBCnUr9e%=F)Xb>Iu*FFT02$#lPhGzSNaH2|j7Z-_0lFkT1Is7_%b<|IxE26iDfZCI z@T`kNEECLQpY(8JehWLTr+GEOi#!&eMK2?x)u7pWIP%SBOfDxZQhl<)9({2C - + - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..05edcbe32a7f0bfcaa78709b0ba65b1d803f8845 GIT binary patch literal 721 zcmV;?0xta@iwFP!00000|LvH|ZktdLhW9*0cU@GKm~%&JDtQw%FTnO_&do(JwgtFK z-oAr#QykR9@?jAbFR+2p?|QS6g23{s0y?q<*TfA@mp4>PyU*1h<6#4AEnrtTJDfi?4~7G`16g`Of|j8?6l^P zR?R@$^*l*`==xpPKdYrCZo<)FZ1;Bj;CkJ~HJ#fKla*XkEP4Oh-kw+(uk6xz&$AP~ zms{Y$U^ukx{lgI+z8IeC*dDvTAeY0v?SJDw7Q+I81p*5M{yPZJA{~=1u-V!Ux9f=C zYx<9ykL$Iu?{OWETi{Vt+~kIdm9Jy7IGyP$`L)v)?>)4=FC>syk^B0#NA-o@rvL_HJ7bbgNMIXR}Y za!k+1F`b`ddNz(-X!fXC6b22H92Gj_qKJX%QYr5tcmPZizQ8Y2uu3!KF)3GaW`vIs zr7Tsc14J#Hr=YSh1|TUTNii6~E5QIOiWX5RRFP8PH8Q;3a)ZeI>{I) zjTFQS20V#mfVN|aQE?8u3c@)rgZIt{3KE6(Dl*Pvl9~w=P=QF5Dg&>yii#Nul7*@& z9*_*Dq(Mbw+yU99M3M>|#_UufF=-JbRfSc7OIdlYl0r_Gm1C@=AYJ?g;EDfj#2o+t D7Ik9c literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__copy/why3session.xml index 56b342a89..dd9852e17 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__copy/why3session.xml @@ -3,155 +3,147 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c76bd4bd97da98fd306c8d4010bb0d1edf45d364 GIT binary patch literal 2523 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3session.xml index 2c6ce25e1..acc9e9281 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3session.xml @@ -3,92 +3,81 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4b9cd6b209c24ec65584f1a5ec31cc8758ebeae3 GIT binary patch literal 1156 zcmV-~1bh1*iwFP!00000|Ls}ZZsRr(eb-m?y;y+v3s4vEOVI_4J{5W;hU9P~RIy!2 z4w8O-N48_+;zg1s?k2Ge!?wiX@NmwVAw>@hNW=94N}InzzFER$lR~q+g06w(02u~= zKf4XWZ_xI*`#F9bG3KL_=NgM~*rUc3Uap6m&|knBtKlomU=71XNULRThGw;_dCj(l zb85PRw#i}LVa9}gzv>RHe;-@N=V5?% zG_NP(|6ym=VG4nU4k2`_dn*1AVQBE`;@}Sq|6*n(hX}R<3t_ z-1XF~uM}B8`U{6JihiKrgxg4j(68HO2&KU`_ankFimNU*cR|j^c_wa--L(7p&T6s$ z_3I3Xho*(tBDsfzTe7x8gueM_dpU<+W-zQmhwB$2FHP4E2jIEsQ`eKqckZ{1d;jqB z!-I~fN+Dm-? z*fI4y=5?{}+rrM(q}$J|TmB;9ikApiK6hz$wSBxa*M>;S%@us9b>hh#m$3Pcgh@Wl zGUIivUzH+!%8@BYNcAtt5&4oFQBM?i-#mQXvYt1Wmp8=G?vg(*=sN<_rt4Q-*sAy8 zqx?4M*&K+q*Z3Rl&qvO0M0AP zijK+r#DC|uV!UX~5+%BnROH-fp zaU3O$T9jbgd2}d2n=*RRm8JP7DQ)u9nft6cB=8Izla}&blaYCzr~i34NEESbyZ~OJ z5~OFt48;SPNv_zD7F$U$DQm{8$wgYwTG?carMq{wMN=g3XT7UQTDR%I47XeN@Pt|b|a!eo%yGbHKA5ftZ@ zNWvIah_X~rC1)f?6eSB3Hi8?2z(tj`h%{ZpJxe4r&M+3DS^&jP2|dE%vT{5+VZC&w zC?zHLD3}ChWmXKW*;=V8ql=QXog<5-2x*l!) - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8721f7e3f4cc6585e42b625742d6bbfa3ae74a8c GIT binary patch literal 1017 zcmVN+JEXtk*fgn)U1&nw#Z8Etv3bI7A9HgzT`}ysc5FgBP(NV)rfF)nzQyo)gO4pW z?dA#l7B}PZJN&EPM_gk!#N+97xL^%aoEMF&__!NCH^T$&Vl|fT3SZy0uU_AzN&9}- z_PMo>AyORjhcA)`ivjQBc%4VuZpQdLogADFXO5tTnh}^)4s;m%J&pT5_a^tK4ReZQ ziQ|3wIr5>)=R?2bU)lYDKCv zlGOV4&n&U+{pq_s<>XB*iJi3wg0mJ*{Hz5?oV75LFNiMNDY-7KAc`yS;tEh)fgKbM zH27-RO~1wkbq~+j3P0V{=J31q>4u;-cQZ*|ONm$4wh!G`$jA|W1HKL(&WJH5ePF@Q zf}aIH*Ro*Wjrh3lvcKQk`{NO6dpsdYV5QVXN@j#%PASl!XX^GBoSehJ)OI}^T3}AL z@Hf~3za(4=_3D%^g(O6I30__T%1f}>Y6i<_UPkjWn!odC{?GZsyM^CVVsHgY3?la`(z?>_X8Ck_YgjLHDZei6Ntg6O4+@_}8jKropX2_JTpqj%Ct2ND4w0u)Z zAC;CZhh@uQ*>Wf{4M-i{H~qy4Kh<5KYIpHJRELdKk3+2O0;mO0 z3!r`sKvnIJOp4X7J((%JR(sz(^X` zB}GmmTe0j)Nf(G4p<`rwwak+gf+jg#dFf=ZQUH@GCrC#hHE?N7;FwsP5@jlZN*RihOCy4i%H+_K zkIW)ho`=bkt+LN(R7RxDy^c6pF&}w;a#>JO$86*(as)0v304WuQ1E-3&+%b+eUyq5jv|g*|wL|nau>e!|0IGigv(0Yzg)aaA$+z<@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursor/why3session.xml index 9a636ba71..1f3408454 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursor/why3session.xml @@ -7,32 +7,20 @@ - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a42c47ff7e0c51cb5a981d06db06d2fe76c8aa4a GIT binary patch literal 439 zcmV;o0Z9HIiwFP!00000|Lv8rZsRZvhIc>3ZMRyoWJyDZF2Q9#cois$!U>HN!&ZXk z?JHMFaqW4Dm)>9);17!w{fQ81@Yf^s5$!ONj|ho6zK= - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7c2159a363d957d9bad919e265a98428cc271547 GIT binary patch literal 271 zcmV+q0r37GiwFP!00000|LsySZo@DP-2I9^L9!&v9x`+Z+P%n1oFobr>ez-P2hH#6 z)+h=T9lB)8LJ+*ek#`^vKty}ZaeOCA%S96{@NZm+V&XB7Uvrr=(FNnm8<;sDN!6BT z9582>aKu;`FL`AgPST5C6XE4o`^m2}WnPfke=q*;`chGOqn2e%l|m{$m;H{DJl;%N zY|`O6;ha3B>4Kav)g9aI?M{FEHhf;{mC7p?Zt6XvzapxSxWC>Fa&3e+CP=MYxSn;d zgwu#Uq68Z!m3xp+s?mdm5}nn34=68%5T4~=l<902t=UMT(XKUY20z3>M`@iE!3|y8 VqBqhQwd;n`(B0@m~007V - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d95003f59f8818c0101c918c46be50a23ba81643 GIT binary patch literal 335 zcmV-V0kHlbiwFP!00000|ILuQZX+=aMf>@Re1hJOVi#~@WPZS{a79rYVJG%rBnQdg zuTpFuq;WuiWO0alz_H>NDU4e>c*nt%5(?7)e$?$frMADBly=Zx9x2tvTS;_3`t3-m z4-B4Y-?uhWX`POK5$6@ZvGMiKctLH)gf{d+Vy$ak_;nv2slQ<7r9L1Z<>QLiMrl8| zG@ADpxuS5zeH*D=+i2JldcRN6cDr6A&e%GiAK*HEtk^P6pY`o$p6Y2lzA(Wqji715XMatsK;u(dH{s0oRsLdYV#QeaCCmaC$e zT?8pMMa2oJg;)qnB&d?w2iGGB92 hB3ey?N{;YKI413cVIz%1CaouAmw#nQjJx#%0017^oHGCb literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3session.xml index 052b2f87b..f4a19f3db 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3session.xml @@ -3,257 +3,198 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..83bd2e0dbdb555db55e656671d358755e2c09d7f GIT binary patch literal 2825 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 b7DBFtYMocmNHk<0W!3OM6OpzLo2UQ)|D=Qm literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_last/why3session.xml index a47bd639d..3daa65c17 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_last/why3session.xml @@ -3,45 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..920df0c8daab7ef2fc2bbaefc7eff850bcaefd6c GIT binary patch literal 649 zcmV;40(Si$iwFP!00000|Ls;yZ`3dlz2{eOZdJ*jv3*#iUJytyy|Fg+*TUK!{1?pD#)NIK0ekEMcG(sZYqU16GPJhE?y@Mk zi4}mcZ&TjBG5!gss(nW7 zGk?ZeIWF8&RSwiv0R9lJ2Ltji8Ba{>ql0_`XRmYztNaqoYvy!V`TYV)N@~HiSegcp zv&U^E9@Doubp9(de3~A9@`ZV`;d@Lqecd)pXB#HZ#D?j_^v#B68-~=`0lG^p5}Y=& zVV>Uo6LviM4;cA86=#wu4?Hjrno|{>D|v?1 z$}8uEDoLU$Re%UkE|%Av)LH`z7-jTWo<%H4vLb;P@1qDtu)?e+kpvyJpqfUBa_X+G jq9=+)T?gVZI_iZFg`6R%Xmp;0jRfBTF&W|d4G;hT0*5$c literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3session.xml index f7215e019..76f731c66 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3session.xml @@ -3,105 +3,94 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..bd5c8448810cbb7708918fa3f99e943f703d18aa GIT binary patch literal 1616 zcmV-W2Cw-aiwFP!00000|LvPiZyPrdhVT0;dMl730Egc^pSJTgQ_SgcZ-Iu+_9eujleeG{Q;th4>{h#=*wwvHRzPl7j@Gsn5_glKbEv3H4 zjQzvwwyeMO{p#jU_x%l~ziHR^Wku`Ur_bBl>n(q~rA&!#`2$~Yd$V5cMvGg#qTTaa zOxK$oeW`DTMsJ@qH1>=oUy6$=_72yp+;8}bhd&(h$wdD9&u6mw3f7nE>%oyXwt;Vg!trIwVvLVH!HAB9={!t~`$BRf zT_as1-TcrP9-#v{(qmyd4-dYFdUAtZgI$B&%SAsX!0?zNs1XI{;wHGS5jS!*ay4?j zT=ZiA3=dU;9!YR6E`s~AZv$5YR|D5^48WJQbcgHDG&Xn%_QPbIu6-VldIua04|swZ zxpb0_!=%#3aNU=cPm0k~=$-?kr_enIMo*!84vfA+_j8$$>4r9$HoFHZtUj*41%&%> zOs9q>o^)qY*udh5s0>9@GKB7B2yarf(Lv%3VJOj1WW=P*sa zLxJNvT}*}+n3OH@8Ek>YpnjkDAJOF;l<()uIVj&xnB^*eTtH}ZXq!XZ9J(~!a}+*a zRYGtlDVNHid@WQ zd7tN?QY6jzX9uu)_LaEd<#=@A4(@eBMRUB}-k>oO?_ zQAJ2-k`82qO*x_~j;+M=j64xoEHVjYKzS!c(ym0GeAJ|suJ`Liu`YR8$m*iJ39LxT zkWm&$LTk%LijDXZ>qPe6dJ+)GDZaT&K_`--u#xVhmD!;KtEpINlSNCy2!&DwzRa+Z z>3D(@!a^*?WtNq6&ZGe`@#jO6AxPmz0yz+E9<+mg@;={S7EBiEMV zRp6}PbhC!Yd(N)vFDX0b1LqT@#3QCempy9kt#ZZNgczw>sm>9PF!DNSBx`~}ugP&X zs1RKcVX)F&iaI3JQlQZ>8BSCVI}r~t&VH!}^` - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_destination/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_destination/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..05df6cfd8ace7c799fc91018a5b3cdc805660854 GIT binary patch literal 390 zcmV;10eSu(iwFP!00000|J9VuPAf4Ch4=FmJVO3GS+M8^fy5GZ8###$5yNyelUC*J znbNYLx))lhNU(_<<=FB0tfbyye(mw4q)_?|js^RQsc!LMToc}4H_<-aEe*X4^)*aS zI8cL_F@&&RNA9*Elwo5+7%)9k4S@@FIi&SCt;P^G*sWRm3ILG$)G>=)xrMkHoS$Rpc>KLv3i)nW{&c<`^`b87S>tY$5#Xfo+8N;xh4F1>2O2~KL4vO2t!+F>fXG^TFt%mY3JcIi zPzqdBt(ryRG?7yYnWHA(wo#*%DoY0It#X=K;4D&&an^!M?1__;2;d!40?0A3A>n6{ kZmiJWM8=$=axASdMv4}sM9 - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_dscp/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_dscp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..24bf9371f1b980d8b225feea579c27ccca11501d GIT binary patch literal 382 zcmV-^0fGJ>iwFP!00000|J9VgZo?oD#&}HNwdyz)CQ37oF9{dL-YePdVTEC6MCR)3Lc1!s%60X=1-Y7vNe~JG&i{EsK z_Q%C3(U5gR-!^GXKOAfI - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_ecn/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_ecn/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..dd6e603dc46aaec81169e4cbc11aa789187d3f60 GIT binary patch literal 383 zcmV-_0f7D=iwFP!00000|J9VuPU|obh4*<19>HVJ)b@f!HwYw_s9S4nPq@)d(3&Nl2_`HpQZ35=_CI8 zENL?o*&jA|$rQc(3xopBD<0YoQXLw2gR{HL0JmH!^^$Ae;kBBb+y|-Rxb8c6^ z{GI$X*kxIki-y}+lq?dR%{d$NnIPI2wU4ckaoXR&JvCyCWdapjtr#gOBmqZ+3)19c ztRi)u$hSZkksT)I6fBf@2S5NVFT@*NMY>@l)+o}>#%vWkKfxlI57 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3session.xml index 8a9a72a56..446996286 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3session.xml @@ -3,892 +3,930 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - - - + - - - + + - - + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - - - - + + - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4dcc8a6ed93011dd2d1226f55ee22396d95d1ada GIT binary patch literal 8569 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 z zqEo~ZVLMscX|}vX1cCDwK~KOiD_OD+wi%@XfB`{s*gR0I4yUy^ol9hc^H?|OMnotY z$-ces)m|^G!KUq9a?f_?`Fc?`GKn_dDz%gN@n#{xExzG<_caJk&8ZXwmwq`WHd%?3dwH*upyN&3%%jP7AQTTjhII^v<{581lWp59>o?+*S5Pi zyM7ZGYC~H?N;kER6^#Ivx{v74a=K{10kH%eBF`hTIY+7F{E_KAd70m~-lJ5vBaqdg z5)9NFW7>LUnb4Y$v6-dEkOs^(N)7VRHJY9}S(Xoms6-y=Hh1>(h%1rXhuGViYd}IL zq`YQX0DpSj92V3Ppn5i$JdLk|UzHiV<9yLfYMD-Nf%Rh6(n3bk=kC$QeI00lf&C#y zFu=_$gF%O6592*?fz6qU*68`#+beW|KS_dM7yJNOLee*x5Lf(>Y`i*)1|oCx+nomT zg&MoA&J11V=_1RWhkc2-$Wl$+q*U>yWY*>qIpy5f8D%_G3shJ}aD_97R3 z;B4d@zLF`kUkL$0!cU$Muy{`{lIj+-0+}=711*ezE|up?f-%p~Drw7n8x&8or6uJ~ zUR4btkHE@>Dl_|Ul99695$cmTA67e3--gAR^4J2n3d;f;)j!Rh68k9pX*mX>+sey;6OEc?y z>q3Yi>ThXmv_u(&Nb=~*CeJ`m(_rVySFoG=*OlE@*aIL^fU+;ynvG~`usv3AzH zJ-6t&g^Ju!zdoYS3>FF?uT^by7>xRJuk;qB3n(sO^=+oUoHjh$)mL{Iw8StqklbImbEFZ>p zSJLH`v}hKdbPEc%%qW>^serdYKjX^V&W{O$n!Ovok=H-I&V6o7Ve(gJP9*X zFs!w#CJ=^DTMaT4)D~`Nx6qdIVpvqdqsi#FH8RWj4x0xz)9a|VgLOU6AzA56Zdtu= z=(Rx#g9|WYF0+1T8-~mqTxiBoH4h-G=eEXtp>2pzJj`tuvU%uiFLKcb&Xz%DnkQjI zK=|edw03G9I^YxSlmliPK{DHyVFEt^^9z@2(5f#6Hl&u%B(=gT^@J(rB@ z_DV%(3~3%85VtEB1;ay; zWXQl|9)&0py;2I7aU02vLSWQrk?AD3t-G}p3x5KML2vA9*pgy14 - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..83482bff5ff3aae6d15d4643da516cde845ca1da GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(bY=EgL+Hy-m%H%uI}Y{ro&l4b9CBHW?WD Zn|SznnuHmAF;MUmWSE(^>}e#>1ORky7k&T$ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3session.xml index aa94d6531..2cd14f5be 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f4af3b6342a5c79f80af1a3fe280de01eca8ba2d GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%Iyr?0WMp@F}tpRu{uRufZy6Ehz(6HiY+ ZA45Yk&rpLe1`2+H3>E9@Wg~$m001{I6=MJZ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3session.xml index 6cfe26467..b194595ea 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..502010a96978f8ed5dddcbcd61af334ee0efe1f4 GIT binary patch literal 700 zcmV;t0z>^DiwFP!00000|LvAfPuwsN#qa(Uz4cHb*&hEHOY9*%R7FCZs=Y>Idkm45 zU9=mZ^wW2;h*GrB3W*gI^^nN1UOeyp;@Cc+S;3-@sNO8;d?@{}yrT6$%aK;C(YN&_ z(-&H7__jIS9?=@AG}5DL#pf5}O}{y#3sxt0)efl+S9Cz1X#63Fss zZ;z(#jm(~MQowYt?vsXPzoz9W)A_3Y<^kWl^KrjpAJTzD*+S`mK`8;c2VD9;a_L{? ziyqFTnmgV~j;B$NPTD`7$CdD&0zEV^*AL3i%{xjudpxSRdq*K3I+u)-@As4Ma=|pN zJ`bnVhV^Eg+oNHWPH7B9i+IuJt74?wWUn|nl&c@FSN+B6n%Dhi_`y@3{KDOC<+`1Oh@8^d*iv(b=rD2h;*g0r zC9E76s))P-Zw!#djNav(azJZJtxZyjt~L<`RX7nr6Z659j17Y$Q)6)0Y(oqpimHM{ zi;Y8coT7^mxU}FM06HMjB0}Y}_Zl#Q&K_+N%a(2BB#$~5n9?N`Lq#YlS>Ptvy)&Aa zP*+!FP?|(Wt6Vc_j74XiAf^_Z&14~Y8wIW2s*K`dT(R=$OlUPp-4IJGRBQ>^6WU2- i6*L_sRf;*J;6+F}Fh&Mp!>LX@4XB@c<~oPs4gdhJsaq5P literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3session.xml index 343859311..4994c3a8d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__10/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__11/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__11/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3session.xml index 4e575c6fd..0caccaaac 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__12/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..80eb3f8000521b807708c9a505c12bb76d070f92 GIT binary patch literal 705 zcmV;y0zUm8iwFP!00000|Ls>xYaBTczUx=ywucaqN~IUrht46yV0>EU+LTHqr(rx} zX4=kXfBjaE*(7G{1jBlhn9v}E`lG&w)ROvwPC2tZqxNY-R}+uZ=9YF7ZD!i`PJixh zgx=A5FL&Lgc>wFE(M%7bja*&NpT_+Mx)yWsFWU*V>6YHmYnuOz zQ1BU5eNl4ys1){Y`0+|<+KfBeTnb%n+gBp;FQ9#X-r6VhMy(uT89&Fu(GT~M8NZ#( z_+w`ExiZ!iX=*(|rXid!K*hUXN8GBu7v=N5cD1=Ee@PB+ z)(v0)R?RdTYD7$e#{Vj(<{ho(o z@)aBrAG+ss6LFNk<{k08a)$-<6Xfci5-fZtSoMAv?V9%U?_8fJ*WssH!owq5#&NV? zZ<$BI9-kh==R86H0AKLWxA+XCjv{2CI))mY6KF0) z?>)xGo?p554vlB7&XQ}AS|eMn)t892_?VDuRg^Upn!_A(s=aY)Ay}U%d-0K4%Fq-9 z#&&OWb}dQk(!?fl&1aob%A&ZaAa5|F6hnsS$!V=Xt#P+lB4EdymP%+ObJoEeI@Bh* zjBL%)bLq*2Py#3@7+^`<5GA-EwE%I94IQQg)|FNi6phWbDX@!3kEy5Jqc|yq2<*`Y z1tlZcYw@XJ?#;%ieTEQ~3>%dWUP0OP2Bm8%0bTS-s4~UeY@i%s6kLQC6Kt(&u!hhp zq(G^3WMD4I`;cg< - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d6c65cb2f9e9b0d049214651c105a8af8238f788 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|Ls;wPuwsNzWZ17)8`iRQSlFkS2hvgNm2U?D_YK^|FFDrea z#irg4r`sb~ph6=(idOafV!Y`$XLM23$sOAvmEnpG=o5_}hg&YT3>;}um#5>|w%#5^ z-3ysLrGyc>SJz3yvR~8kw9@&i{H7tkdFA7NYah~qSlNcs{|bdYb`Nst|CmevDjhwX z37b9MLXM}ZMpv!>3%={E*F)?)#u@q z+OXb?b8|F|@=yi?YXL9%e8nJilRUO`C|5sTulkGCbzS$H;YXdG$uHdPGSAHp>vnid zm)`dE`?w|^=P*s2S5Fk46RG)2q+ z-M-j8y5V}7j5Rq5hNenUiIC!we1d>zSwz{ETGrNsbhtVJC6y{Amvb_i(5L8AZKX76 zKXUO6>lC?GTI>S|qjW}IL|;jmgEJf`V4my&C;_04zC~{%5cne0&BYoULM^aG88t}? f1#|_Au2G9x`W!hqu2gfw35Dt>a(^EG;tl`+PEk{V literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3session.xml index 114930f08..3484e1e1d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c43c100cf89beddafe0ae279d3ed14f5efd688bc GIT binary patch literal 704 zcmV;x0zds9iwFP!00000|LvARYaBTch41~4hL^Lj6L!{zS*EpX$RA5HSg!&M1MBX;g{LA!y_MvW2oPK z9gmP69TLOWb8&d^z#pFd3Nt9<$1abg9M$?7GJurwdRz_stApj zAf?$%m|eCYl#|4kDdvoryi<`gJ{Rw5Qf2UsdUCpH$TRs8DTWLx@&*}8ELeas+vrk= z&?t#--9;C$sVJCOg~>JVnsk@Bhzrs797}9Arb9h4z_|-2sf-9#5x9($L7-s_j+RW( zq!_eZti^e35Cce;)^dxSdi0W2l#FOMkJe`AkiDfGD|#X>tpHW*D#}Kkoitr-hk_+T z_Z%8GLh%_3`vti*K`FBZCFiXx`hK_;d`HW{Qz^XA1TfZe*UGwxYMY=aHRKeXOQrfK miy@%Vp${dBbz*H2azPh}s!l|qb6E<4GhYDW%6{_V4gdiD4rB8G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3session.xml index 3ab7b905f..1bd099754 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ae1cca036af449efeb1ceca6d53b7fda1ed77353 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvAfYaBTc#qatQd)q?@l>U|k_MvkKYcM{Axi+Oz$!QqR zn3=Y-*-xM9G1pp?;{|`>DF63p(Y@a7OL(hOQ`dM|gw{jJP8%a)Z>31j5kl@UtEiadt+;}|Ien7Q zv!-RC)LX^IIW5S+fRmchd2+dxfC@+?#@-OcCv~`}tfA7Bp0|vNDMnIMzzuEgoQm$+ kqH;#JRGZ62XJZVhA^0RJ3rwiM;z8xj7yO5k2;vR^0D0?UCjbBd literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3session.xml index 23fe22413..2824c2661 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__5/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3session.xml index 86cfd3943..30b515e8b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__6/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3session.xml index 4d39d66ed..05680e66f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__7/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c57d3f018ea799eba11fa891af57ffd04564f08e GIT binary patch literal 694 zcmV;n0!jTJiwFP!00000|Ls;wYa1~TzUx=?)Tpd5^ohog!yQ-A@{2U*#o2hiskcW_ z4?>QfQc{fWUR@^*i+)9mGp37W{Y^uB^UBBl);^>Iv9bxJ{}oE{rrXM;|6?xwtE}kZ z(ZqMMft*ZLk5Ah_@5kGBWN2H!47TWJ?`r8Dw<_x1k;!f4;&Iabe*9g{na1Vk;f&g_ zT8}e49!8mz!B9ZJ^FCh}Ep(GS863*hk2lNya(Tn6em(r)X-;0@ZkKt6JFJ`G30-;H z^Y?K@Wt{1$ab7)9{hUbgFOiDzyHMw}9{(r$(usC&rfs_?J`lU1{`Pg;iF9X^=A_Ja#X7{Oz81s(*m*uiq4-3tU32&A?IpyFX6#YSe)m9~& zo2@lCMgrEJJ+#8ukX@k=ouELa(n$N#Aoy5YY8H&=6u_kfjvxyNRmh~Pa|Kh28Y?&x zauTqH;%tZ@Afr+;rg$vT`wCvl(7D)JQ;1 zWuvP!7x`?8Y0l;9oh{s;7$6^$fV?Uq!-`!K0>qXBB1E5D0qb%mL;(dA@?D*7OGg;IY*Sa cMT!=I7;VIywT+OeOemv%0tGl?{o)P)0M7zltN;K2 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3session.xml index 7949f5c9c..c9ad0d5e0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__8/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..dc4e3775ef55cf3308451ac5009c41e06bf5bd2c GIT binary patch literal 706 zcmV;z0zLg7iwFP!00000|LvDgYaBTc#qatQx$PkYq*Cc0*oV#`#9(|{=Gv4>C8uFL zV`kdUW;%JllbBo@jd)%4d#^QW^#z@BW_w2M(}u1l9;eMM?IzmHwC$b# z+}#MhqxD|yhRfvvt)oUWJ*YNvbv=I?_aEq5%*DUmPN+?{^oCy3{Ks_Hi=Ai3nbxwo zoIe~2J|oo^lG8^~*t_A!lhU*qceJ?_y4tp{Ao4H3K0j~m6MCao4zY}%W8vtBd&!L7 zPG!c1Qwklqa^_HEsTlkcXPL|6!f837O+mEsv_tW2UnAHFC zaNK+aM~x4|bGnH*%3t%2cwV`~0{RJZbx#Qvz7wo^zl(NF`}udS&y(x$Q!U})kuBpm z+ON0FqhOEU9>eFC=J4=|VE7-7IfJJC*dcTHj}OYj6F&jI=$~)#87!%m7%XZi8(dYGcT@`;uc-l{KYev=pGQ#OR6>_T*b}F+h`C zSw&!C!ejwT0s(;R19A@3EmTU#5LM(2XQ|j&xoeH7cbj8^QWUb;DjZaVCTPim!G z6fXw!%z7(@g1Il1f~m!^6y%t#kHm!3J6Z|RCWP*?ilTvp(RHcpZOF0ISV{oI)PZg9 z4po#4cW_xPbt}F`ib{{%eMk|NJb{X`;Ub8!kT5R`L9YqXd_Hv>sU`2`wstJ1*c oW@+)~z&H;*IO!dV - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__9/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__extract__9/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..027df9003bcf51dadf978b47e19fa7c73f1f61d2 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|LvAfYaBTc#qatQd)q?@R7s_OU>`b%um_n-J$%*EGkC)}o6e$VfC{&TwPr8lr9Ud!fk z{&bk{1x?)>Iep4WbvV4bPo6g8jyIRWSKIcjho9d0{IYYO@OzDNfHL043vPJ8W&B?* zmx`*~&0rdf+Rm@24vJ(k;w+HSF@woddK=g-^mdiz;+<9_;AmYTl8!*S=8 zJ?eTGp7TwhQT~~CT;~-oP+y%WJ_o7&4pI$%2X)Q+`8UxYO?3EamhJGw2jUp&H($pi zq(_^?@O57t9^LSV7eB%b%J`|nLNXfptu}bO+IFFqAD=HU?G=UtSM!vuG=cvDxX}%NlPlS#;0!C z`Yy5Q93}hKDxf6i9i%{2Mb1#f5Nv7M3s|X0DZT@-4OXDXq9QWPp?U(}U5peGKzD_D z@&U1v3r$7de<^2-en|if|OBO?bHOaijq;ide4Lb1Xyh3L_jSPB~;E`McFuzkXj;&KD$mllL z&ZQIP6c+>tMi+!nA{Kio3g2_Zf`KSV1Y0~WDm0F2uKHh#4y_A?$bk(>pH8J- - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..11e1f9e755657314873c9648945a9ed4030bbc82 GIT binary patch literal 237 zcmVO3lJO{VMb>?c7duXfv zw&&$|+o+%T&~^#L2=7%0E?O - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_df/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_df/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d64e364f300b7cbab91cbb047dad200c86848cdf GIT binary patch literal 384 zcmV-`0e}7a(uznmS$D_k&k&mN0{SK^-oiXR}WQ8yO~Ghi$+%-QrXYY;35$q@$~G$-d!p z7j8;WbShHU`Zc@O&LHh<#O|5Uk2&5`pli06j47QGD!YS9{~6W!-+cFZMq{1*^6%x* zfahtRo*HsNsnDh1rFNP-si{X)jyOlPAVM?sLSJPOI0#2M%2INLB4}f<;$9dgKpBBq zM8=6ID+O}J88E7yL!a-;r%ZV+UFBsKu|m1*L85fZ8PE)XmmHm!EchU`8$`S?B)cmO eM@C9SFcOUbCWJw%2tk%bqWA>q*x_kQ1^@swF1UOE literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_mf/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_mf/why3session.xml index ca1063abb..e4c36773a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_mf/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_mf/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_mf/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_mf/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b8cbdbf631b428880b38270683cfde9ec0775da0 GIT binary patch literal 385 zcmV-{0e=1;iwFP!00000|J9VwZo)7O#_xTKJwnpv?|}msG$f7_*T}UUR;`q(4T!z{ z!q^T&8v?15wo8=ApB;ZcM@dVd*ABJ~hNe5f&_I^}(-EGAJ;MUpkC;YZVH39Ti#xfx&Dl46 zF3e2{N=`-UBY$0f7qwNT^U9SL5q%U+3Mp$O!7=(Ae2|a2pbAtiE7o3Dh80=oI98am6d0#C zi^OdrqjYU3BG)9n_h6+{mUULyN(d5JR2G&>qf{MHmflpLwYFB)Mk5n}_a=*~BCEYN fAR@Y2Is+ax8E0h`HL;35i&XIj0ePt&O9lV{U9q%` literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3session.xml index c907c92a3..a73bdbdfc 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_flag_r/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..107a3e31cb4c9d797b3b45b343b7ef53d3689328 GIT binary patch literal 386 zcmV-|0e$`-iwFP!00000|J9VwPQx$^#_xR!9wAQC{5f#gWn$8fXxGSfoKewrRhmuX z?a3G%m;i0kkl+#}@@L22&r$LM!^?o1j(j)lF?Bd(q~~y(iNi`Pam^VM(?|aIRcJe8 zJ{&i1g{GpL#=gs^^3$ - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_fragment_offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_fragment_offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4e731232df993da8df10ec6879732a33e6ebd9c1 GIT binary patch literal 388 zcmV-~0ek)*iwFP!00000|J9VeZtE}%g?B$iAHn*Uh7MVZ2IyF16)1`9HLl|rvJ#|k zU%5$#25sR0DRA#Xi|`T2^AUDgLwX%x+eP0E2gn@^1!6hEbKWC7KtJK>IEMzeV|n${ z9~iL#NZ`Fc#Z3Lt`))i)??;G#v3O4%_Q}V6o_5*$1N3{WFEgf1`vfmoAY=Tv|9zFX z8wwuh!+W8r>ZY;p%BlP`&l*{~hI^jN>)7ml3_>!8ZKiW^~yt@$yT&?0@CE`nSJ{ zy0xVf{_;=g=asL@s$8}9hJr)V(jfySjO4ZkbSMI%bf#5z>`^r-T4^+o6ckx&o#94F zGJ!b*BotLqyHJ!+fm1ct5K*&~LOVYUMbLtWD&h^15#)$7YwA2gT4I2J+OYsYY8HtG ilN1_)v)YB)6(Mj)2AEbh87t;?vUvjrVZ8No1^@up;<}9h literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3session.xml index 8d7487ae6..07e61372e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_header_checksum/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5035aedd1f9fdc31cc84eb4d05a87ddeee732346 GIT binary patch literal 392 zcmV;30eAi%iwFP!00000|J78%ZsQ;jz56Tn6BxjN4?W~kZKWPpxuRhh8mo?DVG^Z( zzobbI8*M8`N~PTk0`ca}dv65g3FF&{+n#(s9x(Sf7Nl~-UwO~?h{Me1?P+OvJC!#- zZ*bxUF{1bWyyi3Gznd5E6&dERC34>;_(US^JK@r*BAFf)DBf6hX? zvGDP}kXFI`6lC z_=M+W9{-ZmmCbub2KUSCLa>&X+6OEp@DKReHbl~bWM+znbdYFV zYn1>aI?ze!3KGjek)U&`gUYO30Bvi3p<8g;IHhB%AlU?2WeBCgs3di&(omlYVp43` mQ3a{S$`Wa?A}>E<^SYgD*%1^@t#(8d-3 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3session.xml index 7ee37d39f..3bc9b52d0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_identification/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..00d318d5706ff7ef1d96eec34a20547a0d8835f3 GIT binary patch literal 387 zcmV-}0et=+iwFP!00000|J9VsYQr!PMfd)SeuAD>w8$cx&_I?YTQSm%TT#b0wi1%R zubjuCp)C%i&~Ai;?_AG4gOpZ)#|E}BxY+EWkI*Ct=>RYNj$jG(KcVUMWFO;adN_OK6)! zhjDW<8nSNa>X^>w7QG?W^Yn(V9Vig0V*fyU+^7XWU zUtqe)_()#-QNS+s8*!xH)8oPwEU55#SL5jKjAL^^kv8so7&(n zKRrKdN=w6qF+wm;RH3aTk;E(#MI~lPUI|c)1<@ElO{olsG!6;sZ$8 - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_ihl/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_ihl/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d1dec08a67818001d0d2cd75ba8c01634d9e158c GIT binary patch literal 382 zcmV-^0fGJ>iwFP!00000|J9VwZo)7O#_xTKJ%aPEO%5EmOhe*0agChB8P!Uu+JNBg z7w9+)jj2dX+AdKde|G%+93?F<99!Jf-q!6N`x@JXJ{|D2-w{4zGtjs_Ed_15bhN`7 zJ1P(ZT5HF(kIli_y4y=@JM{0Atc^7_!TMc4Y*z70=dkQO9;u|IG$zSqsSMl36 z(c!c?7aFo|=$bl><%d(Ro-c5Q`GPu($8)oH8JlP(P)BW`HeKx0>*k9yww&hb8#Y(Q z9tnv(iqdEP>XJLdw6#5T_n5xT@R|Ty@#lx}WRC>OuYj_DM0Ec5-g=(R)UJN{JNap_ z^E6L)4Y!cSQ8Xn&V1_xtr9j1liAo3!it{J-q6$=ss)!*(S^;L>RpDn(kCL1ht4 z6NSi386^iVoy(ERdk?H+pvVZ|m_@t*r@=UZ!4dbetb)^JsmWn9Is(Kj5{1hGh-j*4 c3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..29fa9c2538af2350d7cd6891ea83902bc38273b9 GIT binary patch literal 1716 zcmV;l221%LiwFP!00000|Lt4LZrjKb-SaE%dIkZy`rSah@FuthjLBx8Em8eSh*2aB zMFsKw`YApn+p?9hW7*fT+kj=NS!`CFI(4emw7N?S-H!{5R}1{sgt}RL$F{*m*AL^L z?Iz(ToUhY(*uPZi+p4>&*I#j!s_xt^*`*7XX* zU#Y9>uv~QM2OaoL&Z#A{^=jU9b#Br;u4jw}7MuCJUM(9kY=?XPjb}3$jxO;luBS_9 z?D5Wb7vyiZtlPADn7e~pb=b7)WlOGh*rlDzu~~<9jbBpt$k4~>*88#Z04Bia*X|*s zbTkvP>#p5|Zqwqt{*Ln|_Q;dXE?-m9X!P?RyTMZ<4L&XfxoOulxN1}E?{+NkCun;D z4^Y<>!3d`*}`h4&`He{u+o~xGz~h12lKCH-k^dg9%;*PLHI_9CwTn&%l_wj*p4B z&vn9W#>eyH;qMrm@AzQ`0fG&1es?x9x^Je-o+!;CrXMpnK5gL0ym>*|z_Zm?&!heF z5;OTM<@K6K1x1X0#;TjKj8P1)e$&jmW>I%ntF)%xdezaNRY%ZFeYAIHlSW}WMx#E| zc?a4a;*AR2x_ckZdS;GSX+<}RZWP^kLESix0@#;S0Jv8H#=?4<0GM(5 zB4>}1v%?iS${8RH*rXA_E^(P_Y+JnQXBZB)I|zKcFZ6NSbthptzb5ju*5K#+ zy=~uWyK8dWjK6MCg3(to_$u~PX&OB(Rk|AyI}lOX+&oobs%|}Wm;v8DQ<%PobT$LH zr|L-*#*Yt^I?&%w7e8%laOZ+YtI187IHVv>vy>AsF*`{4gVsQ1kSM^j7Q3#1Bm zivvtR@FxM$e4U?C{5*URyxS2{{ED0XBjyy+n%+FGv;9|=^&X9X!w>H|eJTi!XCpM% zX`Ez04s!K7=|M2T-ltY%a!{_uYNm^eq!dXhlJW-AS0OFIT3mcdxGi=l!cl~y2*KN`#SLD@bi+XruN`{2PEaNeEYvtl?u>W7W#h;3JlLuqZAq(S+Ocv z<($zxF%-bL$dYUN4M`fwP1OBVm0+Gbv@A#FJ&zK!#pq&GiUpyD`-z7cd9S^PoKzM8 zxpA7=oFZt)xl2B0GLn@GhC42UPAHYJn7IWbW6H+SY$A}6s$AwWN5KQ4R>+lP0Wy=4 z0#jb;J~~}RmYD}M4lH`3lHvliX5^cYo^T)|QwigvV_8}bAe0o2p(I!`59ED_ii~VU zBP=^^q+y)=N9P^L%pyS=7!j3?d%3j>8(VSoEL&3jM7S;xyei=jzL@C38Ln`m8>Y_=p!a%OwdFs87@rn!Z~G>v%a@d z6*G(la#%n>$-R`)VKmvstQ1AmqXoL^=?D=(M=nClpbb|pQML^aS%$%TQ$;OevccPE zxTM7=u_I~|v$NWGodzUq<+TG99RZqja41Ad-bnCPs^qm`y_KtYrlj)}HReP`VQnHn z8Af5f_jGYjWL8-q^o>?ZS?yxZIws1uGZ_O@ArF-Um6D!=wAyANgGeEA%TzSPSPeGe zP!yczGFlQ6G-qE}05Uk?fRJSp(e>VQ@zA-L6qb@r$ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_payload__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e5073d6e21d60aeb4311db6a00f5d1c8cc22f9f2 GIT binary patch literal 3139 zcmV-J47~FniwFP!00000|LvVyZ`(Q&$KUlS_W2YAIJ^_sF5s770~9?k3%v@ww#KH3 zkF6A^`{{Qm`5H@cE>3E@?1Q7q6h+R=|EJ-IY1_}%w|`$xZTNX>zfXNLo8Qgiy!~m@ zbiQcqjm3}d5bRxQ?0jy2*2K1V%{5Kl+nsyhh?m6dP(N_Apryzl;q}T4u(Shxl^v$v zZq8`>)PH2OU2}!KWRzPde$%mL1j+|7{D=McJ3CK!M(wBGG8-rM1W-0if7lQBbW~nX z_6bs}L4JJBz4S7!Wg$r+Ng>IFIj^$Q+h%TWzec;%xvBM5_Pdph)aGjMi=2|w`s%$9 z10#%ioqH~aG0zg(IfdzA#_+RY42(hM#Jq=@!}%7!SJqLAV;Ns)J{eOw8Bqx{t=wkAX&Lm@*U!)1~IQ-OWG ze<^}5f-i!!o=(iZJ-p}XvO~=^7 zyxJg-3z!ujHpE!qaN~v>TS-d|yari=*caxqi5z3n_$B=6dOASIr)Eu)p+(jZSSO_( z^ZTL|j?C5hTU1w6_gkp0Bs2#SnxiBHHR#VJDJXaGq+-kd_8mzDe+gyVc*x+5rwzGfb zVbH)TxP%%G++Zbb~M1{o$^I{MSDei@2|a+OfHVJHZaE%bm3FsQ{mIQ@##1K zp!ArE8L}LO5z|p}^#o?nL1y%8;#VTW^!*nC76P6p0k?J#($!Qq+l2bc(dSo&)u{r4 zt{AX`h~?Q0BUtzyuwv3e$nIFnzo(Oos}?^gS!X^btU?YWHb^ z6u90!1D7g)SgCtQ{>!r)`Ja#awFnOf4o4))xD% zx})C&K6DU1^o-#{2jN5a;8QA`BXslQczVr1p4YFHlY%G;w~%!I8(ft&&qN}^B_h2NYBr;sR+k|>l!p(F~Y1BGA9gm%dHU2$QZ zHmr#;d5~31c2^z`zCMZS1RTf?UYvCt>i7tRc{J}h%6_z$BW6GGcy-=U_OhKUWVV+R zVkvjAy_r!jeW43Y3QY=4E{-PK`=Iqk^dDC&Si_+}p+KQP;Ub~1{y&wr<^HAUz39E@ z{Sx)Qp9D+?2=LUzU|Y%SCBzUsCht;_n4AfQCcE3iCa<8<j!Rn`Y<6eJ1GK+?o| zDT4IQlO(OxEDx#z6F}Rjtq$H%&lM*D5;ughM3cAJNK{^X9BU+rN8=$Vq98EA1-G7a z5ji%JRdf_DV9CF}mOrXyOA75r>gYperwU z1k0r$F)1pPV>oO{fHAW@ z9OOAtT1m|lPFORU6zWIWY_x!b#o$W9klcz@Nk(R+P68yyn3a?ol$QeOLkgPd+$x8> z5>5#QSwo&c1XQ4L+MqNQ30W7YY3ZquPRSr5(J7f|9e3Vo5v_@lW^Yqj@x&R&@P()( z3IZtAXf3>yNhdMXaw}C~960PCsT75FUdu>A#)YFKLQ2^~6m3rMa!l=i4dYR0QdPw?Y+jL(z@~(5Glb?AjY5I_Z-NW5r`%)-x*cSx6Z$l?1C=qA z$HkyxOi)OG-3#w=QYvxKLZBN2lFVmIFp3%q*bOsiDYQdy-byQ!Muamn#Gw<1P{_yK$lIwb9BcYS4$oxWKs!R8zuzq}tdV6HHWq^HT~bVjNB* z;+;|g7pc_DCECR*!?@>?pt+e4+*p)KlGrb`LAwALUR^7+y|9WT0|FFMQ=&|?RTM9B zfne}wz_Dz586DD!ONF>#&Z4&vk{s|aQTj|1W-2Q~GARU+Ix!*!NeCu6Zn&g8 - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_protocol/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_protocol/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..83b317fd272b161a80329ac022f1d3cc65ba6eb4 GIT binary patch literal 385 zcmV-{0e=1;iwFP!00000|J9UDPQx$|h4(oHNATEjoGe&$gFs@5y0ykLV~9wTC~>QD zdt3@aRQ$A3kzixl^7He&Z!D)9SY?qZsBxMb fj!HBj>&7(3azIm)EhAZ*MP=~}+14vpR|Wt80Q9}1 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3session.xml index 671b8f5a1..3a574d970 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_source/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..599c01ebaedac2e2487ba521d739379431fefcdf GIT binary patch literal 385 zcmV-{0e=1;iwFP!00000|J9UDPQx$|h4(oHNAUPB&VofZ2qc!MTWjnYLqtd;$F0ik zacNml0cxcpK^7xhd48VvO_Xwn^g7~8AALV=F!wkXjAe@tdCho(!_52Tt~C5Il~+GM z;lvFhq4$1Ya~ihZ_tQpuKVf|4;(h9QARpIxUS;n$IIOw8%uGvhkB?k1bNo2}y-Qq; zg}1xKyU|>A^EC8jZ$IyPjiB%F8tV-`9ro|-o)zuHIK&f=#AEpgG_Te<@~3!ke_FIJ z03D^fBq_KYs)NB&9?o84S^3P=Iq+q#42(DAgSdKDT6DeT`5%CIcP16R$5y;9A41jRXwoVC|+WI&~ zsv>cs2v}-uY*0!kV>$!W3S*^9f}~(oMY0jjSe0Z))yI<3t^*|!8FZ{12B;#{C@EE| f(KrF*RFu?_hR#~5o>91+lWyJs6JNmXPX+)0?b)^t literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3session.xml index 2cbc1b3a1..a80d58215 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_total_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..45e7cb28a9d28c718aa6b56a787c1262c32da333 GIT binary patch literal 388 zcmV-~0ek)*iwFP!00000|J9VsZo)7SMfdrNe!}<_#|sv0P?1!?)K8!4*feNYhz7KuzuGM+uqteHap6PJ%uGKa777w^0)l&tN3l3 z=x_?og@&vfx~5K-^24cDujV+xd_f&9+jFxI85?OPP)BW`Hr?!`ZNkPj)UML{lSQ@| zXYUJ0cMhLPi#-e1HGj#kxf4uV+f(<5=@BsRQLrVSJq;{-CRu(*mi - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_ttl/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_ttl/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..abece27b28a68b816c17c36b9013d2f24a9843a2 GIT binary patch literal 383 zcmV-_0f7D=iwFP!00000|J9VsYQr!PMfd)Seu6aC!&+pKO=%#@lC2m?qt?`MjI4y@ z?`!9=XlRN9DYTnGgRVw%&j{rOhC_?%+S|I_VXCps=<^<5)0XfVo1RX~F%-1!^1=4+ z*inHP&{}(nDK>j+>ux8k?a+Tvwl>z(1nak{-y~~y*lcOoOcYjZiEorKk-wb3UBz$O zO#5+hEYuIWzH91yD&LR2dd?R(!{LTHobzM5cUhZgCs0Ripf+C&<=lMn#+TE4eM9HU z+9NUX$8kCrSi$-14D-e&>h7_9o8mPCzJlk65#^6W3fD;ae_}fSd+&Xi&eX1c`BV9M zwDUaAca67jL1F1xbkZ16RZJ-EHS?TAaIOUR#9w3)wda~s)F>$eRv@Vq4m5gEf{ - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_version/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__get_version/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1b3bbd7dbe60cbfc1090ba3cf46956ef88ceeba2 GIT binary patch literal 385 zcmV-{0e=1;iwFP!00000|J9VwZi6rk#_v4E9wC1mAcr1$nO3RCsn^IPW<#TZLWy)gsU2Z}E}xgFc$8wK=auk}B7v27FR zI40*tebn_`U4^NAKhA3T23HtAP`T-N9`+$)GtD^asBzSUtDS*-U$xB_cYHg~**AP{ z%qK-wDpW`hBz7x-jG384_6*o}%Kcl+-oBw^>(cH;?`Fgpx z;B{DshnAcOmqShtB^0?~YmOnFO9lV{+y1kZ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize/why3session.xml index fb3deb3de..331bc3d7a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize/why3session.xml @@ -3,183 +3,168 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f2d5fd2f14c6ce3fee667fd5e7bf1e89f15f0ff4 GIT binary patch literal 1963 zcmV;c2UPeUiwFP!00000|Ls~$Z`()`z4KS>ZGjyO&{h2nj0f<=*Z{$v7P=DEUkNd? z?2%|A*3})g3 zrLPORY+~IkZfV)jqP_bbW^$%xNdH~lWV)dFDz7iQKLhu{p5x684{ke~nVG!kKJ^SQ zE~>-*D5++h$R>U$673uEW=sKd#$lU0+`{i#9Lo zTbkcw{&%^XT^~G8)NF!ST(yD1)z!Ste}7}e|1NIk^R2)C&>6*+r>C}?C0;F7?UI@W zd*8`q08w}j(y@rbOCW83#iZY+c4l@xUDIE#gW#)XH=aLfo)@3m&ohkTt$@FH$H=!6 zPCu?f|DZXoT80!sS>>cr_IwZN^A5Iy@a@Ase+K1ujBh)kv0H7AF8Jd>f+M5!E;b(= zW4)xsr#!PCH>gZSwBJ$_LO){L;pjK|7yUl75u%Ik{9(LoGL+dzYOm^!ojNovTc`YG zW`9B!VI+9w7gbO0!%eH1Y5Qihp9_T`=)%=w~w!8%})B2@G+643{&;b_*iUfW)mB1e*6F=ecaepW@u5o0$! z-$x4BR(!@u&Q@!>?(g>y+_ib0w&QxM3}@75QZM+f{dC4feVJD)`jj`(!(H~{sImzc(`5aSg)w91OPhxvCJx!RN zCQMHg2A?KWLk~)yp!OJgFj@}a<$3^kL;swO71ko zWb89RH@b5NwPYk0kBP}Esh!m1-KxoGJ=i&)*-z>y6?htA@J==slNd~5aIhFW^Voel zG5AFv5Kboszs!lj8~4#0Z5dv_XujD`o8vCU`q)dcesMz|pb_nPJN}iBCtp>09ftew zs*K)Wz1_Pi$HZ;#b(Jx15L8MARfG;EK$aMjl-cU2Qc)!-^z;w-x71aj09cZ+O6zD+ z@fc)D!5fRZKyYj&DsZHv&{iAgY>I_YvuJ9M$`#B>un|@&h2%xaQWytC$qbGsvqVuj zUnq6+9p)*?T%=SavNXjS4$UY74)}YAffO65ibV3xCv?ga-;c!KMH`E@KrWQRM*1*M z2SMNkSn$$j%0@eKrm&I7HtS>ov}PkyW%eJ6RU|>81As0|vh1^K?2| z7mbO+Iw0!<1~y143SSfmZ`sHlak}GqB2Cg4FH}YzQ^|xBYzdZ#DGQ{ zp+rK`Ch3S)iXytJzUV+yj`?>ktCYBIoygjyh!pt~d?wvnL1hCK$8kE%@F3R`m83OM zCa!y}x(NXf^d&5$LY$V<(s`!@W!H5~L6vifUEzVOgpoO;%V1FE#1sWVMF8>Mg%b!} zp@XWpo_Q;i9B-PuR+?LY3B}?JL#h?_zPKMsP=P0M*(M;37<6Q3oIx^HuH!O1qsD^V zNZAVQGzG=LBcO>2qbsqqvK6puvXS=5BV-@>p6sG7%#%$Nu(NU%Qi|Rb6VP%gb*YL( zk)l8$bqPIQp8M2_XtnlGcvB{&k4ndqP?Hz2*p6!y9G3xWfQ%N7lTbw}R3Zn9mIS(9 zJfL!hSc+KnthA}fEQD0j#UdkDc61#Qh?V5XSqBPb5oAK(2s;5uSz!((LT4o_TMUH4 z)y2UCbciN#J}jufWC_z@kE-gBSJo?JwJ4TbNo%g-WPDc{vGj52DrUz~8TRBO*9A+H zD#b}FllC!+-j}ILfC5&99F2EIF&t#Tp zGD@GLtE4RnTn;`9M4uhA!yS^G4~cEpc=;-%m` zddq@ebjN!ZtnA7tikcXl-18`*;>8D9{khsD^W!XN3A{$=sDrZBb?q;);u=<&$UDoS xT48u0ks%asG+1BOR=l9d#03Z33?_rf&N!0P3z+7Ru|rj=>i=N+M(n;?0004H!DIjc literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize__2/why3session.xml index 2df2c7d00..2ea641718 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize__2/why3session.xml @@ -3,200 +3,185 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..82fc096d5373421ed2b046d49fda0b1a39cacce7 GIT binary patch literal 2565 zcmV+g3i|aQiwFP!00000|Lt5$Z{tV~zUx=)Z4ZqBimW%#8Ni1LHb7(dvhdZYXWAIY z$v8?dy}y20lH=Hk;`otACtW$%a)}~Y>Yo>Xj$zEs zT>LS27t=7A&Trjf>gKJRx$D;bcX5;4sheG={;+%u2!qSh#qQ#`G7e)t7GvD?LcZbk z@`6W~os89(pO$Yq#?#X#U0k(4CfDEHRchQKg~`N~?oSqZ_V@DB-%MxibUtZ+T&3&D z#Q$jN>#AK$CRdl!d7BoKTQ|E&^mDNuy3TnrG+jC|zihqpmzT3i`s;xd{hZ&-W_SAj z?M_^1$-HZem2f$~ZWnGkC+%xJ8AunrYrYOm7wnU-wnp@YBl0||@cv17$J#m>1M6cm#*yoOeQ|Mm>wX*C0Ko(pJ?>_a z8j8p_*ItrTOn;ByQ2L1$zMu@4CDHG-NM?iB~T3iickU z4-_BDC3W*_*Q)>;v^C0tRwMWIWXYCamM2HMf#+)nmvRZbIC#3)?*<*R%a_q#y1`d& z0B-SvKj#PF62(O++`B@@cfJ6;J&xZ3$Ui%dPu#_2>|O2iTY+7H{egkq?g+?N!Q-xj z^gSS73y<�J-xV;3uCmyv{16`XIVKluoa11r3od{F&M=;%)ky4!TT}hj=;|+J)R=xjTJt z8TK^YBZ+LokZtOg*kYTN)AzP_qyL2d3-2LISA|mctNNuY0+=Br?!`d+mck2C5PwGs67Nkx2RcwG=uIdH4&tCe zE->4CxUT9WJC47R;S1}f^fQiY9m1##f(d)Tx-PQ-UC4_-u<@RtcNGq zXN~>vaqnS}|KM2yr!r1uoS&3&Is!OqyQ|iJt^Zp8AGQ8nM*s(QvX*`={aX4Tw)9sHbR57A z3UsA_N&%GuJ^=-^XV2cctfgE_xt8)zU&=4Lb=bHk|49l>8f0hj^laK5K7|+^u>u(# zy?rq{eh0MjX64OK%$xlS_qEh(sn=5fhp63nzIsTjIqpT{L7gwbk~^;$Doxh)-Fwnx|9>`)f5?&egUi!nb@h*RlPa+u zwSzESwD8m87_w8+({-Wc*))!MdDgps)#E{{8f=w=tzxj154Pf9D-5=>p;kN8XoeaG zJ2u#_!EO!qYOqtoeOfiTTQ{9KKT8B(7gB%n3l+pssXP)+-G6yoz5qbgv}`Y~^{)b) zxUMIYIbF5cox{AoNY~fyJT1LftKJ{(|6g6ar|p#d{9h_Dzk34V@mrQ?X(mv{*MXOu z>NKG)ratH_p)RHdW(kD=zPsyXpdYLWYQ@)u!G|vSx-i&jVbHwLGGO`oq^y)tCkY>v zF+SEL0rsE_*uojd62RRmtNX6yU(3Ii|9eds;FuZ1!91`z1E>U037`_dE(8Eu7yzE8 zfLB{G983V~Gk{wDwft-Ozhe30Q2h^-{|jswG@JJg>IPxmApA`AUN;DL-XMI21x7D1 zbGTP>=$+2K_lMtk9oW!-u{>Jerh7|`+wZ%K25!y5)_b#~cC_|H$B~|HKGJbq7+>R= zj`~Q)n?KUgH0T(56|D?0M5_%mF>;@oO=Qi0_y_!p+a@Hh9hXv>q>Rr#3olLdi7}fK zN<~tv$=NxhfFTPSLX3%Ykw(lmgEWbg5H@H_-z;4jqE;%n1m5rs%NJunZS!9`K4^c4G5e<(FEJ-CaXp4}1K}|eJrDTql{1wrp z?0|v^9wS#Yf&>y$jg5?XNRn*os3-tYmT+5}8A`?(3F#Nq1ko91SXN1Lim1_^x|t)* zHH75JBoZ zDxk^0z?0VCl+9MMm=rH10le`vj7XZMxXb|~m8+B}kT7C6OTw1w0zozCQ`BH7`H=_j zB5K8~2%h|9OqwDkchu#yvcXDcxJ73P2AcRpO2VqihJae66rq`Ekri62lK_f}3QS-m z7-mgn-yugg)D%!>uC%ARqh2`zHxR}|Bt-hcMPM31^=G)qiBq5wYHJn634yMVN@Eu< z+X%>pxQQi6;paIA7BHwBnGTMwD;AM8f+K=a#70CyoF_6EO-7fJRjH3XQtY#{LU2KT zMFPE5ksD)$kKhY@iA|~QiWF}^80P?@WhRqIpi~N{ zv!j$dqSS&36ph6siGCFs^8yS2Q6I3Jg;ODeE3rq)kVA_$Yl?wqZ2-rJQKYpg<5gki3xI=0K<;sC69A8XdKa*|M0)CxsLM z(jCYY$HWLQMGAJ5Qi_U$bW>=w)XJNJA48le$UmvDNMREL@h2p~5-}-8n-w8j^Mp!R zjvdc)-jqV{kp!(L{mfHd2qIEB7X)!}$u_49QKw`#6oN$JRGQBt3dfZZ0i*8xqLIai zoUIcDC)z^J!~md-qU=*Xd}mQLlnfrdr@@2{GL?>&i3S*snjp~E5Z5#SIiZ~PDRY}8 bdC94RF?gB5Mq^6sxoQ3nb5i{ni-iCH8m8La literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3session.xml index ff5198da6..40795a9b4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3session.xml @@ -3,402 +3,287 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - + + - + - - - - + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - - - - + + - - - + + - - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..73fee476abf462a0eacbfa413726d1a9d3c9da6c GIT binary patch literal 5361 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 - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - + + - + - - + + - - + + - - - - - - - + - - - - - - - - - - - + + - - - - - - - + - - - - - - - - - - - + + - - + + - - - - - - - - - - + - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - + + - - - + + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload_private/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialize_payload_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6c17d6900d7a3cb1dcf5f350072030cb10f10eec GIT binary patch literal 6237 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 HS%v`sshS$1 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3session.xml index f12359b3d..4e1d44a22 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3session.xml @@ -7,94 +7,86 @@ - + - + - - - - - - + + - - + + - - - - - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b9ea00b4bbbe3534035841b721cac5f1a2d77850 GIT binary patch literal 1602 zcmV-I2EF+oiwFP!00000|LvPiZ`(K!hVS|ndtVgb@SBGod}y%+itT0LtH94zSSN99 zwP^qS4yD9#6gf>&8#{5EgJFS_(aV{aPiTwj-}%?RziKym?Ke5LtxvwadEJ!Nx3=xp zUuD~_ef&4~Z5yvH`}_^xT;%Q6f6VR5Z+i^hu2)^(mM*W-*2n(a65igXh9~AO-DWRo z>b7w+CS{m3eZTYPvTf9qGX+Ud*1#drVb)1(d)ZR3{>cA}lF z!N=S`an@tD?IaN_#kDm49BF%wIibP`)l)A+r~cjfU#|0a5q!@i#Z~fS>Bhie7RWbP?Eev2>O-W1iQ(z_T~YVZQoRhnk2>}5&OcjW)4%I*F|q4C z1-|R{w->LM2CMmMsp>XtadUYzlq~iBN?+>Q&Bgtl58icd-}Bxh?7Ec?tBhHF%r(KV zIb0kYck0dJ__&jAendNQvoBt{mrFZK&GYvaz7X2klh6(k@WkbEHwSvB&r^RNYtl=O za~2oU-xyhNqQgxHH>*Fdc_~Kwme|*Ho}AZZ4mRp&7K*wYkq{CMw=EQa@w@0 z0{Q$`SqEvscf*uRFR6oCo)Xjm1F7Be8XM#FF;R^xc%Rk44#67Wk+iNUj(}_0M37NX zx1|_uDJHh$hixhDe4S2pW{NtD)!D*WQ-d*WNT?`jm1|Dm;8ZzrsyOUaxf`ZjdQF|r z`fT}ZsPUOLBy?1?$~7l&aH^U(RUUS#+6_}Ky`j!$bGCf8)c8yr5+-U|<(d;XI8{%a zst!9*2^$Tqa?J@GoN6Xc)rXyGcEglQ@2K zO1Nlgm1|DmU{yP@syS>`yBnrldbBEWLJtbh6VU+F7)_fKXaz^BUb6}Zv$}~{?P0UJ z-7x9m19eId3eObNoEoNylL8_xMN$QumpDGAXA{4=2cFZj-8kt6aPp|;=Zk7V4b{YH z!6OiRiaalIq{Z}94?J|N2W|sMw?NPbwm55GOKQL-&J1(|v4_g@5=X<{JNNUz!5`qa z0i;_X>0?`-Ikwdau}vHR*ji!_jOQhe?wg+Jfd>xtfVd4H-2z3Q!RpKztWU^b;sC(b z5_=dtFL89=^t=u{a9{`IZ2;*OX!;D+XU<@ALI%?Z0I}!1^AfB3W<92E!7#NZ{i8T_ zWl`s^K6CyWa{O)j#cyc*ztAAwfL{X}#G7zRa5RnZ+4}56QAy;atPxQ&X@rSJ3hBxp z@E3>1GbOl<$_blAGC9?M6Xn4K1zz(MFp4#f31z*L;F9+az8iPcWxlfX*7;JD^VLnw%@KQ$Om=VHZkZe2$8=Z(MSe2q> zQChrDmWCzGxvD{`Ngh>-5}4r(^(AH%WS?}=B?d0*?R29I^|P1(gaRAZhC)gTm3D8v7y@S|YO{muj5Bd1q;PD2{W1jAVgh7SD=<#0Oov z0VO?GT1#QE-nb^UvjsRSEC|dzRKhfxOO=a_IVv3l$Dm>jb_;F81G=e3*@k;iS{M~o z#!5iM4l#6t#F9Y?VyKsE&;&VVFJiqBQ(A&R30OPJ8IOZ{&K?={A98^oOT|+F0PTAW AT>t<8 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__message_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__message_last/why3session.xml index 09ef52081..b3d7ded38 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__message_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__message_last/why3session.xml @@ -2,32 +2,21 @@ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a374efc46d6deda2253ef67f3563bddae7fbbb20 GIT binary patch literal 291 zcmV+;0o?u{iwFP!00000|J9K(Zo@DPMR%Q|N04O7l7Uj21n;ME!R4JM z7PO*wS}+__;`!dPq18^^)N3WeIQGZ~nmHm;NB9%x)SnUabOOYQ;s+PRI1Yu+ReaAx zT&6x3Oqu&`*~yw1j(v~Qm@7Dcxg73(+h6PK`d4J8ATiK9FA!yL1Q>sFZ_ynMuh|4Jh000X9hvEPL literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__path_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__path_condition/why3session.xml index 83a260bc1..7009fb83e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__path_condition/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__path_condition/why3session.xml @@ -3,65 +3,54 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__path_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__path_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fab552b9cbd34c67a7836808e365112d7ffb31b7 GIT binary patch literal 978 zcmV;@113z=3Q%0RQD*kR=0P5WYLo36^WLUXhGtNM2kr@pN7koh~|@M zAht+>rF|vz_M^Dt9v21%piJxxXd7Wez?pa zdIq>uc<2UvI&`_Z-`a=i3bmaIBnhmP+DOTaFw7|h8uV$ce@vD4Ofa>*Ek+n9i5UK0 zh=GfN{W0YqLgor&AH&QQ$UX*|%avUX>)c-F_BywJ#<~5kVZ^zz&q*)1InoO=G7QQ> zj4zpADLg#+G6|N;SG@qiW>7r`z=|aqfR)QK6hsUx!WdqbF^i^I3Xl7R@+_CHdI83i zQ+-ZA0KD)A@x&b9|A+{H)c_@9f;A{wgQ6=BicXFMhV6h|)5Xoh@c4Hy6#E*M1Pm-f z7+#t%Ye=+)M01Bk)o_p7)U=y{*qd+c=o>@kind+MgA`H+LE2jkmM3(YM2H;2XvIEf zB&8kSI@sh>{t3o?2&7E#Xk+v#8}SM(2qTOH%eZ0MGwnDrOWaAr6@zRfD$R9FS~(*G zAsUX%X{4-O^Jq1>Y$Pki8A>C(1}AbSy^1b6vXLufJO#`~sxsh{^2pJFkj4dTqHxk% zEqU&W9gTD)xb~xmVlufEZFtfd^WJzFf=$w7BU4#vgJUUZiP0KGU?96eT9tic6qnh^ zRw^hP$T-l>m}D(#9W*jBoR8IwE^w6)5>Q8vGD?=5m%;|*j07+*lvd+=VU-Tn0YM;g zK?SZ-er3QSx0=Q5{?SnYRjwyQmYY-;cLJ~e0wQZjunIE(0GOZ7 A=Kufz literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3session.xml index 8b1160227..e3af520cf 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3session.xml @@ -7,25 +7,17 @@ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7bfe21333bf32e429aa45d6a58cc2a5268f14f2c GIT binary patch literal 369 zcmV-%0gnD3iwFP!00000|Lv5`N&_(zh4=FmKEmX0eimJHBMJpKGTU&I+-Pt*9g|FH z-`-4Z3raynM;veyE|=vx=1b=aB!I_|)><`&GpgSFGrbzATbx;VDs-VX@Z&<1=h$K!&Q9DFW`GhFv^ zFT*4Bn88PB5221xrEDRjUhmN~bc&T14LL5ffVhz!`_Bz{n=(X*c%ETg&^|P|CU;Y~ z=FjKUt8_bl&~fn4$}P0cH2Ivs_#zC}`4bIOpzw{S8ZmumOd8s->)&CPOatvt+Wu2J zBWjm_{+FIV@yj?T<};vZ3d$HoYPkZq)?<**0L*d!!wdPRH@pEik21Ex-LqR z7X>d&ZG#$80U{@~EGwW4 PlZa(6L;El31qlEE|8l1o literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset/why3session.xml index 86007cdb3..d2be0465a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset/why3session.xml @@ -3,96 +3,73 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fafe22491c198471a30640f15b3e446dfedf099f GIT binary patch literal 1188 zcmV;V1Y7$biwFP!00000|Ls~!Z{s!)zUx=?)J~R0UiH{C8(ROm`cgy9 z@XyT+;R2Ui+MN!E3;ewnH7tftUbDrbqSd;;YqpA_Mu*{+ve--K@KH`~FsdyvJBmSL1x3^%LQ z-R=mx5B@y~wex&GueJ4HCnV`W@lQ0BslJ$@`f}##!;8uf6YDPy)*pDL0RaA^1Asqi z0RYby7te1GrT_l#{U<-|G1>EK9~sk%wp+ZUU2N>6@}$f9v}`rQ4_;nw=raA?1d5Gh zS|`Ayp3S%N9+cpPSb`bB#2DDU8p(p3FE_Pb^b)Evr?6n%B)mmr93Nztd!-XE+@1(VK%UAT-mU)QDuY5 z$Mhh?TkMwDE-CdgdfI*Y8=g(7i%D2vb(-ZZvIU}!bcCk(@FKO&mZ6(o+Zj`P-cTN8+_Q=pqgh6n8Ai9Y%_^% zAWJvLu0n-w-aeF9q#IFBC4fhx)&vs;{ssO8{;v*y;3pHnq@};C`9BWy1@i^-$2?)2 z%m7o?{<7$o9fpGccY*)$8DMXxa4&ylC$QkO;Pk!V^oQ>R9wveFx0@5rr=n)k)#CKG zI=NkvDK@6N@;D)rjEv44e1mk}pZBNlMjU$AJneq~=YQG!QQkFImDh}-hRCGRnh1HM zz>E%7=_Cm97x)8o{ZdqcP-)Lvt))c` zKth|Cl=#b(go(y8rlU1Z8Vm-EZIzZ>2gf~NQW8nYO4SCG%C`~~YHI+!kkVPQj7(CJ zRhyzUXoMh{{CC1Dr0&N(ip4jG|?O7Oy}v7OW%kB5H1>56lJT6*1|V7DM?!R1B2` z4-TwKDT=AUtW_REG!eY=qn4~lc_YZk7)ZrnQ8Em&4JM$7EvV5iRs91of)*r~H~;{F C7f#3k literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset__2/why3session.xml new file mode 100644 index 000000000..0d780db97 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset__2/why3session.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..dc3e6788827c8e8b817a244be237770c850c0e0d GIT binary patch literal 1820 zcmV+%2jlo3iwFP!00000|Lt5$ZyPxhzW1+~+a7`dEWQbh555>PKrp9;u8ra=(-_%S zT5TiQU%$nct;kL*w$yTBXXt|-WU=1$bv2vvUw9U5V1Hu#a)p;&XuGRh>^r;~aEa>y z|J&aryujr;Z9bNl31Yz9_0K2g*tUII{pa$Z1uWQ}Rc8yafQ$0Z7wqDqNtdhPOS}FX zSE(63jOx)O4%dYh_9?V2Mq+&T+UMoxw(VB8vTauw{z*gIhU=>#eWnloCg;?*g$HRM zFW!RvWb-IwuF)eCl50lZ8sA~;Zt?v>1)x-b^KaE9qA3+W6g9f5m_9Gm%f|x_3J5-DBGZcIN8WY{RwcQ|tl` zX#w)X7Ix^vdbR9^Hg@aKuSXyf+riwWW!wyMj5n8;UpB9>dE;L_NUH+h@hFuj53na) z4}z*gOXUTy>PQt%3RdFhftCDuU^OrJCqS#2q2Gn8nXJ@&R(k=#d>;_>6d`&KBUNir*f4Cq1OgRa^e>{}}8GD26enf2$YJ*T4gnwa!aH96$1WZK5p&y1r6^7m*485LBow=y- zuw|RUqhdzIjEWh*HfC&FjQiiT*MhGFUkm=#7ySO4m7}5HzHhku4-yp!DiBm4c;i5@ zvt_x}y>3p{&Bht*AEAtz^CNZds4t%cx1uqj$?qmWkr27hqbcuZbN zBa~)=$tT(MP6f-B2_pF%Y_qO zN>%;>XN;rax+oxo(q-{a-th6$!z z97_k90Ex2HfcA;RQEn>6$kQs55@=ZQDyIrdDS~CHOi^uu^OkwkNM<;eeTfhk&Hn); Kh8|qQSO5Uodvj<2 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset_dependent_fields/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset_dependent_fields/why3session.xml index 17227a09d..d396a04c0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset_dependent_fields/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset_dependent_fields/why3session.xml @@ -3,5048 +3,4465 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - - + + - - - - - - - + + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - + + - - - + + - + - - - - - - - - - - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..51740b5ec94c8d0abdf4184e6681cd2e979e1082 GIT binary patch literal 61285 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 bp89#gF!htW8zk*}-v0Xsv)+6qk$4mUl-c2d literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3session.xml index 98c4eb29c..cf676b1a0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3session.xml @@ -3,663 +3,511 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - - - - + - + - + - - - - + - + - + - + - - - - + - + - + - + - + - - - - + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - + - + - + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - + - - - - + - - + + - - - + + - + - - - + + - - - + + - + - - - + + - + - - - - - - + + - - + + - + - - - + + - - - + + - - + + - - - + + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + - + - + - + - + - + - + - + - - - + + - - - + + - - - + + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_destination/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6d238c5013d1c4dd2a1eb2cc27908a4b46d0e25a GIT binary patch literal 9174 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 kVBW@YkHL3ID2d%G(&j0`b literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3session.xml index d6859b628..9d27e0498 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3session.xml @@ -3,402 +3,346 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - - + + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - + - - + + - - + + - + - - - - - + + - + - - + + - - - + + - - - - - - - + - - + + - - + + - - + + - - + + - + - + - - + + - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_dscp/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d14e27cc6d1692c528b799ace1960034b0cfa2fc GIT binary patch literal 5904 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 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - - - - + - - - + + - - - + + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - + - + - - + + - - - + + - + - - + + - - + + - - - - - - - - - - - - - - - - - - - + - - - - - - + + - - - - + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - + - + - + - - + + - - + + - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ecn/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ecn/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d5a0ac5fc2c616bb704baf236dc6f1936f890ef6 GIT binary patch literal 6205 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 - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - + + - - + + - - - - - - - + - - + + - - - - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..baf4bf24300e8bc79dd3373c39d112ca0e713e2b GIT binary patch literal 20904 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 - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3session.xml index a2f2ab4d9..f2cbf9b3e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3session.xml index b55321309..7661fc6a6 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..331e5f84326b3ff955c9b1bbf12f5885b1f128cd GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYa1~Tz3W%>UJ4q0j3h`7+k>g0eHhi4! zhxzyeyq;ETp6ZUuIBhB|s11iHwCI7RiFUoDx*8^4Q>IG8a76yHbO_rI&yK3)0pdVg zS`5R3+-HJs*L62+ZfMQoiY}8+a!!{IRO{93w-@`GJNj=k6Zdc@2R$^ zL!-$gNS+qFyskG-Dt$VNJ%M|#k8FDV`6oiX>f!l2@v591dagqkmrWit^Rrd|yj6FL zeWH)!^$|8E*&vG{ZquQBlQ0>&XwOjZSHpUB&(p9Ozw&&)c=q@$cwFaKXS3dlS+A|v z+35e;=x(epKEl5r3f;@D>+Y{_vF^3LmAl$K{?lgvK*P+s6WXD|IL{UnCX2QhAeT@} z$}vQpZB+OUK7kZYgF_Bp2bT<6YixAVk&}Tl8j1}iMPPu8=(S}-wq^CkXCh^!QZbQg zASJYfU`vtc(IVO)!Np_~NE>4-zXxfd6o4+V*g`!v0~$oo4P*sc>7fK^Adp7yF$bTVHm%Q`4L}2-Xgw4*j@XBiqYEiJg_vA6 z4#2t4Ku*LMvJb%(w%(V>60>KYR7(_+DYk*U$PkzlX6L=80FE2?h%Jk8HfPBV6vQ`y K+*Jfb5dZ+6@Dl6* literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3session.xml index 064223535..31bcfaccb 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__10/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3session.xml index b7e4ccf82..164f4ea86 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__11/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__12/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__12/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5042681041dc03aa49d32738bfc5c73d924cf696 GIT binary patch literal 573 zcmV-D0>b?tiwFP!00000|Ls>zYa1~Tz3;E+y%a`YBMF?t_F!r#IhDOGBaM_SIJQ|U z4(_k7)~2PUZb;ftn%b8^Xy0g_-kX(n%Yt~nqPrpX!)iz4K&wLQoaxhepJ-0YZ8{F8 zuo%99H{*Jf#s^KscHM^&AqzJhzr`$ zvhPoFpEv1lQ}+G#mNu!mrmN^8Ea>V)wNB1|dN9@O#Qc2JDi>`Y(`H6I?C2f6rBbsF z8;wdv5gjel>ZaU2srLCu_5|*oIN`)1uQ zr-j}RH%HhIp+c5@*u_Kns$tcSW>e_P!@A$BAJW)whtFwon7#P?Dts=B>x*5l$F3I_ z>|*tQZgo49KRC<3o(=79Uf%6rZ?yKsKAzjsKK>hLe!)Y}+cWCZMj&#?(O~c?=Zqwf zTtGpFg9a_%hz|l9=e6)ghG4*I%U%WPw2j85=mH>B6f|sfMhHnc4oXq*-Y}vgA%)e^ zPaxUohz?M&X2~+t6j0JL1nq=T=yL_BMy1GXtaXX4A?I16s*A^jStTW11?h&hlIT1L z1*$SO2pUB+K3A%e-2^gCPGDJB$w`=C0l>(_D3bwcv_w@w*r2alKtnMnon4+lIXR8C zR+J%6E7_(pM6h0IpPc}-(j_kwaJCMB4OEb8qPKMxlXFs$lk5Z4*DePTfrZPH1itwK LfjkLfRuKRIQ1ls@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3session.xml index b571f0492..501dfc729 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..21759dc25692640890a33e436d38f354447c75b8 GIT binary patch literal 571 zcmV-B0>u3viwFP!00000|Ls>zi`y^|z3W%>UJCmDfaKsFLIWkI;;WgFM!N=Y5*%%o z^w(ETN@;1j>@G{`HaU0@@*B^a_hiW~OGt+`-1V{R*LxUySQpsj3}423f&~maIt{0= z?07p1?*wy zy0hFDjPADO(CuzvOKb)6=p$dk{7ki0E`GZ))ojJ$a?~nUZ64ER2C3h}2Y3&qW*r-i zI*RCFp!H3;eNySmQS1raTXka7s?R?WYGo^)zYd`Rxhts{qt7c57UD_ z_BSV3A9;lg9q!|?e3dY2nANK*51Vegd7!b|^T1?oG3&MUx*Gjo z8{PEf#asCIO`&<&aozm&CDy#ww{laO$A8+)A86=Bb3rSV>1={hDwEPFr0lqpB)m7y zIb$KmcjA-aOxh3=3NXScB(T;a4@v+!h%qZuQJg7}NG4ATg3W+J2b4T`;zrs;Syzx` zHmHEv#ALY99Gy!(dz9!*)C59RkYZLVq0n>hKw$vX(g)B9jPeNf2+}NAMNuLlW@ohv zG6uXU#hUt`?uxPmp2_z-s&~d4aFiA!ysDdn0wTeJzJ=h#0fgxjML>>j_ zkT6$}V<`nrMA8fHHM*pd$QWv$rgmfa#K|+yiB~y-jiezdg;HY*mbl`aqMdXK>>J7g JN;pIj008sX4 - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__3/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4969fb72b5b98b11eb729968054af81206de32a8 GIT binary patch literal 570 zcmV-A0>%9wiwFP!00000|Ls>zi`y^|z3W%>UJ4q03zCC-2o02+imzrQjdl&*BskhE z>94Pxl+x04*ZE~Hrj9($sFKeR2i)V( zb!WLR7~O5lq1)Z!me>mC(M7(*`I&63So}6I8 ze{+KMkypsjg?&7xuM$Rsv-))9Vbg6l4>WeW{wpn~!K=q_!Q--AUCnwcX1%svSEK)H zqnp0G_z3@gC^Rp-uA9HU#hTapR&Gl3_)nYu0}ZukE@+1`9t>Am@u+38LFVKk@+_27 z9<%oR9ee`LwD-d6h*Bjlgbx{gG@86~!bBBPMRCS;_Eu*hGO1AKK?MS+{8EKTl`BZF ztdvm%33N!wI%Ay38JzV>NmMdakYomebAbrFjVT3)$p~YGm4dttQCE;++(;dq);W5w zo#a+qsQjHJ0T|>2(kyD5G$y5{m2$1jISRa{w;>@osvyI1vZzpS)I4SZE)ofY!c{`` zttU>F1xz_fQB|Rsx$!6+Q1Hnr%_oi( - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__4/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..13e61fe3cb353964d8cecb1e1753f23650556f19 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3W%>UJ5g#Z%7W?gQ=n9RQ9@zzLEvUHfzPf z{q>dYQd*jZB!tq`K1c}d8_k>d2JLR0bJ{KWc8tTg-10Q?vhu1F{xaQVp7COnkIVfu zAAf+?(`ucky5llVo5~Ar(_x7%df;i|T@PGW!<5&YxbiR@k-uym!uHd%qiT78IP#Vk z!|)*YnaH>6x*Ik(yw2i^FQbbv=gSAO^)&nK!9Hh?v(r(lp0#;Qn+s0kmOt=&t}W_N zXrzeI@ggs;>&=r=pN?Wr;NHt4n_hnYiBL~HKED&M%GsgkI&^W_Ta<= z=;L^OgpCmzWHE$oJfv?DM&gS$hI+pm)~owG4V&?6p6@r$9=`>T>-_3$)>|>_we>n1 z{a+j1jrGM>`1ebpd)e!{`|B;%z1FvKSG&i5+Vmf2s9ASH9V(>K(qf9Bvhy+r9b8hf zbyZNo8Pf0Y6M{&|F=5iK^^o;!4XRAKctzT9a@bHHtkKf30U!biTFW3^aFzp>h>%SK zks!&zp^>PRQNS)ENNFWVO~!ME29iR>P&DX7x!4qZlEexNC(UfyQPe<6pvgKb)XEyN z%4=ZnOe_Rcd^E%jqy?1%(&j)>JEVfiYN;J~38k1)LIWAWku5>eswC7DFtYQ=V3=bo zK<=xvf+072E*T4Qu_!$fXsJ@blmn;+a)N>{rL^ESoCIGSMzjc#Adpn9fxP$zWYOhJ HL=gZ0Y~LXC literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3session.xml index f57671e98..1944c9742 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__5/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__6/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__6/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__7/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__7/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c8be87764955053b00bb293f313c9be5fd9bdd73 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zi`y^|z57@6UJ4q0j3me&+(T%f?5X%_Mk8t0kWGT4 z&6585%1J3LO_$weDcvR*i$Q*)dGnr-?XsY_U(wyb{jl26IMAxlI%oPa-Y1&Va+{9f zG%SW6;LW(+q_ONN597AblIm~>p=S3qj> zXxaBCxzC$)w<-I6drOVGU;W?#siv->e_f*l&lgX)#S+Jbnuvm&NtPthZv;YwL9} z`oA{19mX)}MIq37)x?a;=9*JRmbluj}R^hs;& znS~5Nuz3fcKs4C|Ak0-x&<4PH6_XbsW))C*D=SJgoJg_I)_Oz(L}Zf{p{`X|3j%Tl z$;Juv&P2`5A(OBaos=wD1j^P3RY9t$MY7dkl~)S9RX{b(3du=`tjJf8ZYV2MDmn*2 z2k#>rV=+t3Ayp=M;$)gYI$8o@G}b<|WXKp1wdJfm$XG$xSZ$PHnQ~0lfYZ_?VG*Tb zhhBKBAlq0WWY!s+Ba>6DEqpLBku+$$wo`Ym0Yx@DV40&t3Z8Y4sL-<|gy5&{eDe+X K4_Tu`5dZ-7Egc#F literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3session.xml index 0851a06f6..ceb95a155 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__8/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..63915781524bd062bc71499e724c4053d3fc8674 GIT binary patch literal 571 zcmV-B0>u3viwFP!00000|Ls>zYui8&z3W%>UJ5(AvtQsG)Pt#^+)vwIpx+INELx*zj~5>@K^Bl3r(L)sLcomI;T;y^oE z_Weoj^CsVI>b~FJ(k3_8bQN6`3%WYdt&{Vg9!xzun4gbY^`gyV+RP{oJ9Oz0XIoCvfl7kxi#Qen+U29Xx*&ugk@vXInJ8n)ETaxR~|tn{~gO z3cVk0j<6vLhAjKAi--2CA?ru8DfIPW-EYwD!e5p4-|!{u`%%!2{>*8O>>9LV~1hO37MnwD!hg zEJ6n`PE%HI-~)&z*dTn-h7fegq;!(W69qI{lGns2(GU+9modguklFxh?Gy!Dvh|9b zV~}h@P&pSaqh(0S2(XL>R9-uoNeTw3Mi$H=3Qmf}n-V;@p!w2?3%Z;bgiS=geU+55Ra2WN0vdR5mGWmj3)5jG!!tDttbuw zNGCOMvW-vL6ctLujMi&W$Rm(aP+|~>6Ua4+m2{{v*^mfqAfJ+P2Bos(xF3Uj^9Av_ J - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__9/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__insert__9/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..760a9b01d061f132c6199793d163da69b9119c41 GIT binary patch literal 566 zcmV-60?GX!iwFP!00000|Ls>zi`y^|z3W%>UJ4q03$h3I5E>{s6<^Ir8todqNpQ4T z(qCUWDW#?9vRRhWZF2B1$ZtOU-Y~Yy0@Hql_kHa8)egrVR|VHOpmYP3G*Vl20@axWl3A zPWC=$biXP4ZhMCtVoSViHyd2-*gxClqH1KqzUmpoq?ijC#swjkPW#hg3m=N~t*~;uWMAH$0LPzE%oUb6u zB-#YQd2Izyjx{zB8EJ!+E+?8mj)`bY)+q&V1$Wuz$d#*UFzHH|(G}#`H|k}Z4MY(D E09m;Z_W%F@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3session.xml index 123f97f75..c1398766e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3session.xml index 1d3a8658d..3bf2b1aae 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3session.xml @@ -3,505 +3,409 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - + - - - - + - + - + - + - + - - - - + - - - + + - - - + + - - - + + - - - + + - - + + - - - + + - + - - - - + - + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - + - - - + + - - - + + - + - - - + + - - - + + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - - - - - - - - - - - - - - - + + - - - - - - - - - + + - - - - - - - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_df/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3a45ec47fb1207e987a7ca430c12f031c42624f7 GIT binary patch literal 7200 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3session.xml index 001856941..4835f73d8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3session.xml @@ -3,529 +3,425 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - + - + - + - - - - + - + - + - + - + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - + - + - - - + + - - - + + - - - + + - - - + + - - + + - - - - - - - - - - + + - - - + + - - + + - + - + - - - + + - - + + - + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - - + + - - - - - - - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_mf/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..992b1281d33289a8ffd78666270e0007ca7094ab GIT binary patch literal 7442 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 Q$DH{80XYp{q<8KC0L%9nQvd(} literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_r/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_r/why3session.xml index 6c550762e..b425c4670 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_r/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_r/why3session.xml @@ -3,496 +3,408 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - + - + - + - + - + - - - - + - - - + + - - - + + - - - + + - - - + + - - + + - + - + - + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - + - - - - + - - - + + - - - + + - + - - + + - - - + + - + - - - + + - + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - - + + - - + + - - + + - + - - - - - - - - - - - - - + - + - + - + - + - - - + + - - + + - - + + - - + + - - + + - - - - - - - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_r/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_flag_r/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..433c8f2cf7f624b0dee9024982aee4ca66b8af27 GIT binary patch literal 7145 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 ggm``kd_h5 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - + - + - - - - + - + - + - - - - + - + - + - + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - + - + - - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - + + - + - - + + - - - + + - + - - + + - + - - - + + - - - + + - + - - - - - + + - - + + - - + + - - + + - - - - - - - - - - + - + - - - - - - - + - - - - - - - + - - - - + - - - - - - - + - - - - - - - - - - - - - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - + + - - + + - - + + - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_fragment_offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_fragment_offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8ef7400fc75cf804422956c23f4156c652c75057 GIT binary patch literal 7769 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3session.xml index df6c9188a..0034455ff 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3session.xml @@ -3,621 +3,485 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - - - - + - + - + - - - - + - + - + - + - - - - + - - - - + - + - - - + + - - - + + - - + + - - - + + - - - + + - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - + + - - - + + - + - - - + + - - + + - + - - - + + - + - - + + - - - + + - + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - + + - - + + - - - - + - + - + - + - + - + - + - + - + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_header_checksum/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1812f290d3fe38d9af4de18aa2cfc3cbed338241 GIT binary patch literal 8602 zcmZ{GWl$VYv*iGT>mWgc6EwKHJHg#OXplh%clRK{-7>hlJA@FN;BLVgf^NRI`?g+f z)!x28`gHZ}>gvALrzv7l0RMH~&T|dF>FJ3IsOb73zPE67ReGP70JUsFPUTd=hSsy|$pHC9QO)hKqYYpmZ zO{>8-?spf}krdmuRXTyMBF~_c&d$^7Tjt;8QI>p1;Fk;kp4a^9>ir*qmDSbxRIgmn znwp*UbEX$;lleq}atPV|$;tiICp*`|6OCFn{rkN> z_c+!BY?OZ(zP)tudV9XBE&tSW9=A^s7?`r1n$+R!O!b;uR$8rMsBwgfHk_Fk*|}9D z_g-eOy7Rg}#2w}N^ak0le`TO`{crfwwVN{frclC{eVB*0Ji1q$gsabTQC=^7>bGEp zm-9rF!KBSRsEsF5sR;*z3=$7>sJ-#;6q#fh6@oioE!sS%r~%5At2D>!ZxbAVQv@Q%a9+ijmC9Y01WD|`LcBVG}0w?~+ z(RICh=z=`JgiY6YFtQa)LUFMztK0o@c_{+j`21uXhSDtkY*Ozif$xV&_Hbse3t_OY|(Qc`@tkwc=0W2E)JX7kRIDOxIpq z*C|YwS6>pGUISJd_up=wgC*VTn*HXeTd<*Bn^gJB6NCYny5OC>OMw`ua}?AwQul{z z*_OvPuW=U&%a1A3UJ~G4>XVa=RbGHkRZ!kuqsQ#v5GUmSb32DPM?tYLs>w6zNt_1X zWNXi4>zzDN*nE5K^m;2E^`sw4!!4Cn7U7sAd4Zr+r7?V$d>wDiX~xr=OpB3M8~KXq zpy@zW=0$3BVtx0*IvROku5)i_$PJGq<_{CqrxjwhmBUxfm`gdw*me3?Up#Bx(6t!j zRIGZ8>9ec@(}BQ%5ATm3N@%&VQaaqWZ@0u6{s;@+o_5dH!X$e)&|iGn{vWVDTPqh9 z&`tWt6aKm}Tk9p&n*e$It$EnP>$Ulb=7sL;ROwUQ?zSJn7 zFqCUj)VXbd6uG5sx9vVs?b!PUE;$!!eo&4m(I*F#IH5v&2vwizY&jh*CyDeb?pBIu;t)|?lr84k$2{#vY_T80+($r~zc3Pj@}UW!2emnW z>L!jQDss5;S4IJfD9=ob1nvH564mv*_UYH0LeJZ2?RQ59Fg;SeW&C;!?7`mrGV#=z zLosJR)AAcKpo?K$IGhIifLuq8bi!@KFI94VrM&J~&+8l++{qXo5mLoTX%_WRWr^w�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 Y_#$%*OJHP=g*RlV=#Y8|A3WfH0ikj~H~;_u literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3session.xml index 1c1b2fece..22c56f67a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3session.xml @@ -3,465 +3,385 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - + - + - - - + + - - - - - - + + - - - + + - - - + + - + - + - - - - + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - + - + - - - + + - - + + - + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - + - - + + - - + + - + - - + + - - + + - - - + + - - + + - + - - - - - - - + - - - - - - - - - - - - - + - + - + - - - + + - - - - - - + + - - + + - - + + - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_identification/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e4139f7535213b40915e33e78f605943f26519ad GIT binary patch literal 6722 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 MG}gDcKjGp25A9{gjsO4v literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ihl/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ihl/why3session.xml index 471e8adb0..1a34e6f9b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ihl/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ihl/why3session.xml @@ -3,381 +3,333 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - + - + - - - - - + + - - + + - - - - - - - - - - - - - - - - - - - - + - - + + - - + + - + - - + + - - - - + - - - - - - + + - - + + - - - - + - - + + - - + + - - + + - - + + - + - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ihl/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ihl/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e992216110a0d585e46c2bc81a392d5013261efd GIT binary patch literal 5662 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 - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - - + - - - - + - - - + + - - + + - - - + + - - + + - + - - - + + - - + + - + - - + + - - - + + - + - - + + - + - - - - - - + + - - + + - + - - - + + - - + + - - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - - - - - - - + + - - - - - - - + - - - - - - - + - - + + - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - + - + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c9a7306e542e40f599c6e85ebb52a61bd2af5924 GIT binary patch literal 8656 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¨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 DrNzSx literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3session.xml index 210cee9b5..35911254b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3session.xml index 49278a957..a062c5d6c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3session.xml index 51acc3d42..c2c51e3e8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3session.xml @@ -3,445 +3,345 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - + + - + - + - - + + - - - + + - - + + - - - + + - - - - + - - - + + - - + + - + - - - - - - - - + + - - + + - + - - + + - - - - + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - + - + - + - + - + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_options_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2eb2ab8db7cd54b0c68f5287bcfe58d891181ccf GIT binary patch literal 6784 zcmYk-Wl$9C_cw4lT~ZpBZkFy^VCin9Te?A5k?uwbL27AGy1Tm@=?+;+x`e;?Z|0eK zuFt#coHKJ?oiBAP2EzZ|>uI)u>uz(}(B=*6fpd_bJK`BOw}ccYcep)l<}dH?Piglu zUeRcs#<_H{+<=!9tD#yOTOJ)o#uJDBSnFupr))?x-BMTUMU|M3*j?Sjx|xfJkB_5J zCTRC>*X9dUtt$E{cOT+qwl=}$vT*?JYBj5T5cvDmY+2ypvM9Rg4jwq6zq#h`wAl4> z7T|tr>CP9sxz78zJdR3v{pXx_{rTKUuz z$>z<>(1JtF=apxFpQM+OmwW$`&g=le$d=FpzqSL2^Ib*biPHmhm+vR%fYl5*5@h8n zqJAOi+;Nzat<})uGL2HZWrM70=a&ALApF?S#oOO{vSRjNef6yR>eS1Z9suUZysp<98W2Lv|D4n#YqsDDuncpnS z-GzWlfE;y~O(sOk=gDnO3_UOdy9nBjS%-JNYZB!HC-Zv6tC?%coG^NJ@ebrObNy)C zaR7Uck;P{ zr?bs1IxolcHe7JR27D;kCCFo4P5TezTtL4%N)?ubAAbsQeYmou4wMC&{l2~VaenrS zs&t)TL$X($N8Y%b^$GP5IQ5bB@G(wUbSjPAA>clj`AT75+~M~8%+)2kz=b6J8_L9| znvX(tnZ9>K4nWsy#fu}Y6XuxD*6*J~`69`I(ProQyL!HBf-YR5F@iioYE;b!n`>an z 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 b6YDOO9f*|NEruxgUcJ7H#2arcMnw2OjE4d? literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload/why3session.xml index b0305d574..50c267338 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload/why3session.xml @@ -3,521 +3,401 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - - + + - - + + - - - + + - - - + + - + - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - + - - - - + - - + + - - - - - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - + - - + + - - - - - - + + - + - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - + + - + - - - - + - - - + + - - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b452de3036f635af5f55a3ef95fd33e02104894d GIT binary patch literal 7658 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 - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3session.xml index d08c09f6d..3aec06bcf 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3session.xml index 41cf5bbb7..834fd81cf 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3session.xml @@ -3,443 +3,343 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - + + - + - - - - + - - - + + - - + + - - - + + - - + + - + - - - + + - - - - + - - - - - + + - - + + - - - - + - - + + - + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_payload_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e7c4471ef491b49955879c7351d4f4f8b714e804 GIT binary patch literal 6846 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 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - + - - - - + - + - + - + - + - + - + - - - - + - + - + - - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - + + - - - + + - + - - - - + - + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - + - + - - + + - - - + + - + - - - - - - - + + - - + + - + - - + + - + - - - + + - - - + + - + - - + + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - + - - - - - - - + - - - - + - - - - - - - + - - - - - - - - - - - - - + - + - + - + - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_protocol/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_protocol/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9027c6b00dd1676d81c84f77b630046938217923 GIT binary patch literal 8285 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 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - + - - - - + - + - + - - - - + - + - + - - - - + - + - + - + - - + + - - - + + - - + + - - - - - - - - - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - + - + - + - - - + + - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - + - + - - + + - - - + + - + - - - + + - - - + + - + - - + + - + - - - + + - - - + + - + - - - + + - - + + - - - + + - - + + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - + - - - - - - - + - - - - + - - - - - - - + - - - - - - - - - - - - - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_source/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_source/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1196adedb4a5a3c9f99555ccb6ef4018c7f051b6 GIT binary patch literal 8906 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3session.xml index 7d2eb54c1..8084556f5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3session.xml @@ -4,465 +4,393 @@ - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - - - - + - + - - + + - - - + + - - - + + - + - + - - - - + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - + + - - - - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - - - - - + + - - + + - - + + - + - + - - + + - - - + + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_total_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..439e23da03ab12081b7e1a5b6ff1c6036b38b0f0 GIT binary patch literal 6810 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ttl/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ttl/why3session.xml index 7bbe28c1b..1faff6134 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ttl/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ttl/why3session.xml @@ -3,579 +3,459 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - + - + - - - - + - + - + - - - - + - + - + - + - - - - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - + - + - + - - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - + - + - - - + + - - + + - + - - + + - - - + + - + - - + + - + - - - + + - - - + + - + - - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - + - - - - + - - - - - - - + - - - - - - - - - - - - - + - + - + - + - + - + - + - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ttl/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_ttl/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..68378cb01a59e2222279c8e01db564f5db50bcfc GIT binary patch literal 8045 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_version/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_version/why3session.xml index 725b4e898..01b8441b7 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_version/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_version/why3session.xml @@ -3,360 +3,323 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - - - + + - - - + + - + - + - + - + - - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_version/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__set_version/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7d5f503a896b575415a59513f9d730b8451cb4ad GIT binary patch literal 5410 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__structural_valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__structural_valid_message/why3session.xml index 86766ec75..1933351cc 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__structural_valid_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__structural_valid_message/why3session.xml @@ -3,131 +3,120 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - - - - - - + + - + - + - + - + - + - + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__structural_valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__structural_valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..40ee19001d9a7e0dbd61f751d683c5e2d2f9c307 GIT binary patch literal 2340 zcmV+<3ETD`iwFP!00000|Lt5&ZzH)8z4x!keJ?D26UZE9fnCIakz4{_1%7&jXlzGn z4`%;;iY=*ax7}?^W;<+*F@UWxDe4ug_#V4NR(oN?UpMyq+OO6(KkRmGZ(8fypZ4F| z`)L2Pn_b+$%s-m={jU9Mwfko8V$)vcei!zO{bqM7cb`(+_U}At)b?WC;xKpHxQjRK z74gvh{VV=$*KY59d%v}t)epN_hrZE%xjOdxyKQe*+jwWU(XUoE*wyjpHf?^cR_nVT ze6_l>{y(u@t~(D4HkQA=Y2(lQq8n~E7zjGF zza8MgIruhqW_TX*H1848a}XlFHufWj_0DfgLnQz0y?tr>FqkX+n5X06cWgvJwEpnR zXe$msgjaj`Wr$t)(L?xQ6#eU;58=2zL{k?Xxe;gl*!an63um<tXB79}{MZov_y1ZT($!t*H?@}mp+5?sjZ zb|J5w88XC<8Tf!1*cdbLzVT^T$tl5+ixM1Jx8TT9f-__W>BW=_#nFXg2`&_MyHM25 z3>jj_3}V0xe2f`H-}p4F)Rf?;MG20oTX0kpxpv43y*xPolw8>8SALp!*o1FJB;*$As3#E!7!fUv|EVadMnX<(Tt9W?Xn zU`fZB5<>V^ItcMD-UOV&BO$E6ZJuz0zB~s)H^R`cf;0ouJY%MK#>~$%<)Q&PxN`_t zL41|-%pPMIq5(3+G=1yLTkbRGrLp&$)_%X=Af(^d*ZZG1JNp-TC!#r*igTivB1Q<1 zATN5?o?^i`uRIfhEAwYDj)9USL#Igwojt)aed`M}bJjARS$60i@o(>0#`ErI_6Q$y z4Xcl94j>DW4NQ^^jFZjz5!SSy3;uJ#e=hi6X2B2r_nt%okQp)wbCMC1Wh44=sT2%` zDKdf&AR}7vp|=BEnu|&UtelGW7>h7bvGf5zx%@#%c7YF}7h0BHJ}`p{Iv}KS|-k()68(rO6401CmRJ$$sZ4sa8iuCd9~GQJiRi%uK^)T?o8j*ZK>nv&60e3%U3)qX}XLws`K?wFw>V;L&dH@;P4 z=wpq+<-*T=tUg_3&YJNTS*x7HA7zFpVZ>hzwxq$r$`Qkky!I$tB-Tej}* zc$2TsuZSN`%MUMzU*>l?yNg%sbrO_QBq--6!II}(WF8#{<)Xi!bjpqifs z-}S(8ZgMhh?Dc9pOIorZ&%m!pG$nIfa}Z5oe3cUoESYIuNltz_JT}V1Z&4^E`IuaW z!Bc5YN?pnPka#5qG{aw}8Sx6u@CTZCxJ5jOg$b5X4=gjhfn4W#O7)0msyt4qo)S$B zXAEA%cv|5L{UAew%Z3M{d7h9oQwd44phv!pw&F)VgjaheAwxVZA!**0kUZ*&KKxdt zvXB$PQf>ZGUFl9))IeF}%gUl&Q5N|`S;PyA-%KdW^O9^p#tETsT}E!PgIh5rWPG)A zLWl9R-7b)k?Jl1Z8@?#9;dP4*FC{k53$wvQalO8E8I^K6xK(=*s;?T_VLWY}7|7oQo{0;s=O#{m4sA8bTGow%ZX~ng<-0e?GO5TVB&P-CA@_nNN}O902?YEsPZZ(QIh+~EoKfhZ+>16AEK3xv z(rA&S5Ir@2UGJxyWRaI8`7$m|z*B z=sD*Ek36^>3LqM6iAr)2aCqi18hm0n|1|e94aK)B za4JZigoxd2Ns4A0g27F6j#1K}8_)oSV7zn+z&T>6p~5RosS!CyDKuIrN|{LByWkO_ zk&cIi&@It6#%v>{jd6;RJQI{R0??>{aU&H)Sl%R}0-9$D(-;Fe6NB4=ULC6x3 - + - - - - + + + + - + - + - + - - + + - - - - - - - - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__successor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__successor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..46d20d78685f43d329125e75b5a3f1fa8ae12879 GIT binary patch literal 1028 zcmV+f1pE6RiwFP!00000|Ls{#b0Rkoz0a@6Pf+Vyha8-PE3Tq8mlW5jmejJRGREwT zaC!fIG_X)!n@zk%IFNSd|?G}$XbhyaVZTxds z5nf|I(q=hb_F!Q$v=`ja{W5=P$2(k7lb>zay?WuVm>=4KmN-yoTa4IluS4pe+O}Ih z%C=o%_=|GerjGj9hSe}W4CU@Xkphk7P5HvO?7O@{jCf1=Z5G4BBGc2fSQ{N*7=k&> zSpaiY4m##x74mApzJ0{Li#0bXTWt6{4?gtq`OshaSkr$dw5W-eBXFUfaiPzI3%TQ> z$u|d`dCZt;w@K{AFw{HkT+DfZKTiCB?DL*{n?6|!<82id>gomRdHDSjTXU0FCHBM# z*;`}l60*O>R_CR`AG1|FUD3wmoXx6vJY`AXQ!Of)64cG7uPeD*iQS6tR&cYeW8e5V z%|6>T)p3An?t^{bR<*v(DH8^GR3c%&sQA}#Wk^6swxhJBd5M+<8UFXdJ-knl4_ za@A+NU-cz7f9q~HS15IVy$CXZl~NlinGuFLr9gvzU%UOj7+#kreqBu%P*WNFCsM{c zr>aYs&nwIa^iFY%-g!jDL0!r5%kc1@4iB>4@K907@F7y>b)|fno<6*I>dLi49ldzU zxvE(_FWuwPJwC8|WDacW zui1H|cdP$32L}uiymA{cg}*s;0Rr2kUy00|1$On?p*igJW;T7x<499RoNs91M`FwC zcdXRoZ95#LS5?#uTtssW(R8P%nyb?&Q%8{8)jv0(lN~zUAt7<+H?f+zy?(39|M~-x zsWSgmF{0^#-DG5$7l9vXQNyd8?y>lrD zXOt8L#TvsL=Z0YtkpK)gDM{lJuw)!XW(tTmh6uSzWmh8=s#vU)4Vlo^7V|i4J8I1{a*_yiok_{!Pfn1D=8wsemiz+dnoQ)8?O9iBw;E@ZXK}F#O zmx0LX5J^Uh&WVTxq?_V`;>=sFtw~A%qX-U|lQxv5;8_8g#&~9^9Kmrf35)+cDsX=K z|C*)5sDNyvz>5T4`f_?^f+x!)QsS5*=S;`~a*d5%Q2AW>D4b6v8lZ4`UtHyurh@}( zlrh@qVj4pz_@W{mlt3*!l2u$yC}@HV0bMWv43*VFaK_4swJlUhp6rC;4Im3tY-kQj yr|1xD)XZ}wl#K{}LWzb$vWzLAP0}_pAt)IpjgTxjEmfRQviTdKoieJ(CjbBhpz%Qf literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__sufficient_buffer_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__sufficient_buffer_length/why3session.xml index 03ade67ac..f904cb693 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__sufficient_buffer_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__sufficient_buffer_length/why3session.xml @@ -3,52 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..98dd75e3f9a705d27149d1bcb99f3ac63815cf6e GIT binary patch literal 698 zcmV;r0!95FiwFP!00000|Ls>zZ`>ddz57@6oGKDvFmUK0m#C3)tb9eoFl4QIy{^qh z$-gh&ucn)=nrzc3QPu~`g2$U-J{~4r1E#xch;6unaNohaLDzJ*Ff`DmX&Al@OM**i zM_PYQuLD><5gh~DGvlZ|nPu)V>1lJD~2x%M_ z!*2G+ZnmSlv>Sen4gB5mL%@n>Yk1nz3`XadG19Oz@mjvhx_srYSp#X|2I?U! z=kt5`3}=wC!L%9XFc3Ni0o?XI#P-g)roWZW^?=_gITsshgA3GC7pO}vyRszb(jr0Y zTIz0c;#XstVC>r_tyhfCVaMf=>%tx6;c!FgX=J(nQVx;Z@Qr&+qUNa3Y{S4eaS;C$ zhi2BkqwNbkFGVgFhFs^eS_hy!#@7e^{69UOJgxQ$`3%lKXa@JBK-bj)DNwo7&$khK zp4k@0w6htS5r?ssu-;;9hH<4n$S)qtSGIacyRISo+qB?Y%B+Ai5uB9kq+BQEddUp# z|IYB5ANrv=N)uLnzb6V4Yi%#5_BD^%cfWU!=-F+me$%5(b-q-Jc&(2~!r!atB|WSw zVnED_F(pC-H!L*lrU50Mxr%8~^|S literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3session.xml index a8be744c4..20f6d0031 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3session.xml @@ -3,1140 +3,494 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - - - + + - + - - - - - - - - + + - - - + + - - + + - + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__switch_to_options/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..23aaeeafac637e27d1f42de1896334ce40be279b GIT binary patch literal 8166 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__take_buffer/why3session.xml index ce71e00a4..6ef8c5789 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__take_buffer/why3session.xml @@ -3,130 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f04379fb870a88d8eb5d53342ed52bb0fc01cd7c GIT binary patch literal 1408 zcmV-`1%LVr39U6f+I)novc-E&kjZg%(UM=Q*TjsdPYeIz%Q`-O$`v1nJzIU#qAkehf8#o3N;A7F8h1Il6Hr2B5Y?ADaDcL$E# z)I-CE`skNK8jb>>iRdVkRG#DfO@bQdgpl|ik~k1*=T6weI5eqSKm1sb?${ZbeaQs^ zd#?W9!EW?+@Ke^mz+iDGg~hQdB#%;|zB0BlwlemD7)xFsL8{y31Ln`Ha=Wmm6Vz>U zeH2ZE8uiDXAS5~FNSG5y&IU`>c!yuUko;n zA1j;Bna$Tg=E~*EY3$ClZP=00OxBqyS+xPF4agMHn%*{4HeU{#uYt^!%NKPsVNb^8 zDlk=Gs=)lzX5r5lcR160f7&`+r~dk;{`_uk>r;!fe`+zvMO-cyE&luED#HJnaRu^G z?=!1@)IDWSlCJA*eWPh zP^zGuiJ+XQSC|Y@RiUavRfUUJg-LBf?GLIFR3*3)C799})Q+I)K-Gb>(}CT?#;p(-D~$O-9j!mrCjE5XeZez=Mm(T`E4u1S)%P zG)gTwXzjBjBh7SD#-TPz3G1E7S*K{d0I*6y_MD6i(>&1!P8F>(@SLRaGH^p-1aJiu z8QE7Fi2{Po5&|E-LUJ}{V@i|;WiXzM97E@HL5emjf!@R@9nXeRL~vRrK}MeC=qX1U zA_t>Pk=AekBW>nEXJrSYz*07nz!OjsxHiUF6|w+{G@IGRA>)F-4$5n^G$mSv!o9aS zWaT94jE*ZPc1V;EOaoGc^rI#`8zsf4c(Ms~BE}GW(cW^JUQ0*?le9traVHK|js@iid8j&a zosxt+1|Gp?X|#4y4pyEeiihekc=C_?kh0(qw2xG|(I6j6O9aM&9F6RCs(F6(7CaP+ho>E2@ OO7 - + - - - - + + + + - - + + - + - + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - - - - - - - - + - + - + - + - + - + - + - + - - + + - - - - - - - - - - - - - - - - - - - + + - + - - + + - + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__update_options/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__update_options/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f7e0563239ab456e05a8a329e047f07cd9ac0cd1 GIT binary patch literal 5371 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3session.xml index afa5e3899..993aa8802 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..98f5be423db839b20ff648ea5f40a2bd12b8f573 GIT binary patch literal 603 zcmV-h0;K&PiwFP!00000|LvGfYui8&hVS|nz4x-;+J*MuLqY?kr=sgJJ3HHoDvprW zA^G=RIf?D235~Jc8Y&F(AiX;~ACJ~%03vwrAFe~{?!0gNTjhNZ_=B?dsiiJ@Tn*#R z;C%;Uxz`UA8~z!-QHFu=Y5D6;@Mf9mZZg(>#-bbhuFVhLN5Fgssf$d6E6$F_ZM5Rz zdOq| z4CMI$+2&Uc&c&a8|2G^j^7NSx+L`OUxn7*X*oOZ;w>ege8`IQ#=eRREG{>9y>}J{M z-Jy@DsuXRg0n6K{C|Lytgj1l=5!L~We8)f8$_0~RG>Nlhb&*Pi4rNqzkU$uC5wXhH zBzOv_1rshXWmQyQWpHGX*Ak0JRJD#FFdYr4n(-v8#FUsNf}|B=u88E@M5Ki@iiBVa zT(E*U9c9u^YlxgHT|}xfEF@XGgj|FerFK>YPE2qesl-M_q$?ExOrUjwk%8bMmL*EC plu$AVMPw>eNW~6}*CqF&k$}!(vPLso*P@8(>L - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..de315c82c2109368c8fc17d1d1890c19e96b49f5 GIT binary patch literal 13485 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 b^+RC>y($o5oiQEXkQM(g2sdAIHKqapZ%v~4 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_message/why3session.xml index 091157e5e..d712fa48a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_message/why3session.xml @@ -3,131 +3,120 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - - - - - - + + - + - + - + - + - + - + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..306ed6436922380367c80bdf4d691ca27ebca0b8 GIT binary patch literal 2344 zcmV+@3D@=?iwFP!00000|Lt5&Z{s);z3W%(eJ(716WBiV05jMC!R}>|tHIB-vF;>m zD~+CizeU+r5+zb%hssjuTpY)w=*Oz!dsJDh_QHn0ZtVB9U#)L`*zMZhwAQyj?Z3D8 z(f(;SySRUwUz+&+uKjDZ`)2QA(_ZF&7xs(&W_K%hpHkfRSDrL#d$DeDn7eJ<#hdnu zc<4U=il6P;?Y(dBw|2AoVK?j0H`*^($6kN8?d@tC@9Z}E)yf9DI=*hx=I3g)zWc#f zt2^ue6Wi4)t>Y%F{QY)!yUqV?cP)0^-EG$GzHMi(WBazT{OwH}f95ycaJ#`k(4qb9 z01wW=x3M$B^N`KFM@Y{>i1^yrj~v!Jzby@s{I~b^rR~FDuJB`?j)&i|5dqQq!!M() zIQ$S^?ctXpcHu`4;fGQ5uYW#-zkk{=( zUOO{nh#fQV0W+{MX5f9})3B0Lf+H6tII?cRk);G@$PChpDHn>P3&j##DC%~hsGS)y z#Eu!nfEoB0Gl;(NX;`T#!BLA6996gAs8WK{*wZdTU*1P-+(z{1Ww9CUZ&EKXHslL& zrM(=Ft7Bt-ZTYx@JkK{q!7CH(;Fb=o!uVz*tb!0b!jc2R5@UoV`^Kk%Wu|n{%&&tb z9cM}i;alk-#JhMC(1b@qSby6*;Rbzq4uo!m;lv8k3{3Nknc^8UKhKnl2I%0DXee!oFTzpt=pONJ?^(w4?r8Q1A9D?> zk82Jf3y}>>k`0WL&G`}5w4V$9bHRTu_+Mth5B>L^L;{c*G6{2%5tL;k`f;fg42CH( zf)5}gTJWZ~16-PmN&~E%iuM?bFj2Ae0YJI@K}mLj51|)YmR>$Eg93DtUg!tVOUVR4 z2e>r7lm=KEy}WBDzzPeYn0+Sz*$XB20-w8~kJ}CLNxI@o+YRx`c0*_H2in^f-LQ!_ z*X_5*1W|5NP>^WgLzsq^W}459(MN8K{{Kuo3a7Jreo%1QiDX6PfT<@0Rn&Ypcf?R%S6>zme-i;;6I-0P|1QF=k= zSTfp*X$0ZbP9quOX$L3u$iYc5rA}f|>Llt`Cs9hB-jkOUg)>qr(-mLmW90jpt-CYc zYz;)kc@hX=$j^Ht97;uU+H1mzS7%K1sKJiUW`8cI|N;EY* zWAGxz(+Xec2N@b1Harl`^Ms_CN=TXo-STC$72on9yxKDf8RBUPN%OXZmt+GnP6&PLGIEO@+=?k7-DY6sFc&et=fxFebvwo<7t~zH2PS1 zwkh!u%Mu?^x%h};;`6*j8%&njgTBt*0&3=TaO-ws^`%`qjHlIU13Fr$ZAyUTvIIz0 zEMh;nUEdC5JfzQ}8b@wAF)$Ku!DglO;Y`Vm_7_ zhSw)gER!diC~&N#AQ>7oQCd3%K8k2L3(7|L8~lTshEr-HNa|GQ(uDK7U{1MFRZCIP8~fj5N9sjFes(ypAO7#2O&M zN5Yt+!RZtgej86xX`(~2ga+)y8!xQ^PBj9O85U=TMjr7aPJj@GokRl`JVV%)D25P> z@Mx5vNa9Ib%QA4;1n>c2c^!BPff6aGq)F)f7(3YDu#;*GF^mf?h>kHZr#SYChA5sy zE}_Y>lWtrjLaBtejEVU`P12fJN1T<8C$A`WG7YnmD~F(o1W9a4Mnh0kD;6x(onL@7 zF==nLNLEKdIrrWuZj57!k%X9H?gdSh9Bm`13=I7&DYGUW!c3}p_T3QkF?ZKOPCtEjVtMi|&pl z8y-}{q>KtL_dW$GBa0I0iV5pHdW1svjT)`$R186gKpZ3`s4~$s%?_fZK~n6yi3p)EA_7R7aZzZLrD%H_RpL~D ziJYLdGezF4b>r_ z51sZH+_@KT6xuLJTyic!;%N6sk`CzW$VAey`$o|iK`8ay;hMr56D - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2e860da8cc4d02e37f3a55b6b631026fdedf14f4 GIT binary patch literal 320 zcmV-G0l)qqiwFP!00000|J9SfZo?oD#&7rvYyVz(V`N^0vsi8 zUu-v0|77TpN)5y5({X$s{3PNQDW0}yoZg^5_qewNwm+h`*vF}j&wgZlL>G9GQ@JuL zCZnsv8SjU9hVY65XSl*6I;&yuteH53gP%`cqBgkN6^pVzRyrLI;CVpL1b`ahQoV5} z06QEdz<~6|5x`h>8ff$>1imB!gu&UkOay%4_&Y~B^pQ`Km`%esBe4^^oJ74&7Y)&m z6i1H^<`>^GBtdmie8$Bh3@uvF{IZ@4Xs>Jtm~?^tA6BP;Ht>J-*Rm)EUE zQOKqgBpWGBDIUaAkx^Zjsa3EPrlwYOH5bC<)Jn~!DRdgjGt_CTX{f - + - - - - - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..69ef28f5458a1df183443146f7d3a706a7919575 GIT binary patch literal 1423 zcmV;A1#tQwiwFP!00000|Lt5&a~n4dz4KS}ClKKGp@&{F&84SKt~($I#+t~IMp}EC ze_yPX9NMwcshoAKls?ES8zO;+_Z}fxGEt*xn$EY!zWrmGHit()O$XvnGEYqo2N(GKFBmZ%JH<>@4ntW9Ho(7Pt$w)`GaN9Z#3_xqa5fc{B?tWy-nXPk2oE+ zn|W%R6CY3KT|U@%@2P#>(fx*}&F+zo8`{n1-_h^K2cdVgJ<0iUxiNBom_JXaJ35G& z-)fR{Wd@tO?em=g#MoPJDQtQpj%YD)Efx|GRVZ0Q>FBMEJrH z=-97aq&veoDDsMW9Buv4+Ip?>=l!gUZe{mzzI)yRJcqTb^=DiMD}OXr&VxXMK>x`z z$>q+bZj=*BQ@<4vh_s zy?u?%Lli?4Llocf;A#E&lP7UryU=uobjW$gdC2*1XWWqAkl&Es&7G$A7f#d6W$i-q z8PZ`K!#IX{e>>rP=@T59-|F)Z*fSQx#)gdz8~YCPz)C22X>}=TCu(R(p8VunM;SS;6l5kg?L$00O&KJotlQR4PzU|c8v+lL##urL##I;*4LXtuAU7}`-daTg^|E9tUf8h zmr-e0+OV`?Y2WqLgCXA`-yz@Ilkb{OAFlo(hVs-MX)69k;zty(E_j7!Nd%kb9DPbDC~9ICFu|H6EX|f; zBlhHcQjA(k-C`2&b%P}eOiZoz7Lvl41hsP>B0=PsApuicqR@aP5V8$itU)_j6J~V2 zCnVpX*CooCz@;NPmrBa9l;9Lih*6R eTS@&+Y4=gBGzTrp8mm_$3T&44cPDX(C9 z1Yd1-6!Z!S9pM6LEw)q6xZn=abm5*Lde$FjC5qEzSb78Pm7=qd0g@@&Hdnhoo)l~? z%_Xo}9Y$Lkd03*daT<^~+8%mt>L#&C2-?paSr z#D$~Q_!u%_mK?R)E-wwuEobT3VZ^v(k6;S<8ngl0n@+BPZ_c@>0${IX$xmycQBI=> zJ6(;P2x=#=1Y5OP7He6sM`t=a2T3b()?y6GA9ENcG6DZO+{TY@&jcLH9h ziphv8rAzWw8Ri=Y)XN1 + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - + - - - - - - + + - - + + - - + + - - + + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - - - - - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + + - + - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - - - - - - + - - + + - - + + - - + + - - - - - - + + - + - - - - - - - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - + - - - - - + + - - + + + - - + + - - + + - - + + - + - - - - - - - - - - - + + + - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - + - - - + + - - - + + - + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..da2c7d1ef9b121402c543d330267eb9d2f768802 GIT binary patch literal 15616 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3session.xml index 89a334278..633256423 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3session.xml @@ -7,129 +7,105 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__ipv4__packet__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..32dcb46221dd4e027a616d3c94b3ee2f10d6e98a GIT binary patch literal 1942 zcmZ{hdpr{gAI3>ZZb>+`<-dL-rhdvbKcMUp5On!=lMR*ql_2g`*!;aWp^(laVnLp6Y#7bR_^0FI ze80)8x-kIbC|-b$Wi;z@*`nJt{fd6)D9gP+45^)tyK@trG?vk40J6mK>nu+hs6q?R zI1cJ(afn}+u<^wBm^Q+~p3;1`vC}k{Ns?002!m2cT_W`c|waXPoS_?eye-gaIEQLEv;*(y~6?XAfC7`7%bI9a;dWZ{uvEWhUY63Uu{zveXL zs{X!)>sEF5uuh(l<3pkDLN)km>~t&mQ8)N#X{Mb#^Ym<@Y3rS|0yEi3`N*k~(Ju*2 zfcOUkUQGGlTa82-drJ5P7#Y&ONsxlZt4a3vMQQxves47aI%N39z}%6}yQvjnYa@Ll zvzT&`_MTFfC*z`4n|pI5ZIc}2A1Lv|xC?I{xn+A$45bYy}>LvU#Ihw|B5qV9w`?4 zqcuEuR_Ihwu0S?CQkVe6V`gr4TBa9cN?SW#xTEJVuVk(Z%Gu!3kYeWu@{Jm>$pvM< zp}iAU^U6nMzqu6Amr+{>ZwDC?vE+`CzRGVIc+%>yN&Apj6~jrb$*E=vHnL60ioX3N zuJ;oz0WBJK5qj%?dNiJy5@i@2tfXn*txQyh&@aMW(Nu4xOdKpq|j3B>in0GE%AoG-A z-d`8_f2;p3)j_rGXrP7Di@3Sa&<&VcSM~9Im&%_%gH1S3&WyWc@o;Y^z;s?5K3d2) zQ2AHuLCC})w;K{q%u&Q*oSL&*t4&}@KO212-+o*cm->c@xDlA8ybWKZ=e6L zOipmWrB6?&d2+tK0p9{o>#2LXaFV-~dS9gZ9&rHC-9{bbYvT78=-v_#@+rLC=p=^j zYMltC_^}q6bbOyOH>DrGPQ{{E9$B!+Thi#0$I!oobyU~xyvPb_3W{#nkL)hadTHdN zbd>j)yK`}p>Pucx+U}gxTDBX~k;{<@lRRw{=nQnZlYe1Y65CtLz_Fpek0B&MS9?QU zk-1-yRw=>lx^9pPQny<*SPiJ~$hP+asLqwr?LYLxqq<;ghhvG^y8K0xDM*y1y{=8^ z4LU4NMYXJDwZ`@;*(U889;0kF23OW{!{??B7tZ*)AT&K^?$QLYcxYu^^wUNwNrvnC zCzYgZS$*>yA9obLq_(DcKMWMA}hpj4B1;)JAewErjL7& z(ma9X9$D3=kaUMZ;8C?P$#MfLITbX+l}$=*>^1mlCo}h6&!y>E%Zt=Qk`TC-aw>hD z3Iz5@8F)~72-l>vMNU9ec3^R?Lx(?-*rd<_vtg;{1GGyTDsjnXrw#|w1000a%OUdi zeU{#(8vg45#aTF>(mPIyxC6|2UyUKmtPssd*l#_}0wLnc;cf(ikW@gZ>*>OiKwyhR zUP?*<_EsSScp+ir7`7@yRLW%7YP`~|TH`G8ELdOqo|P?B(iv3}LfC|HvOK_TQp@Ur zPZT4gX`m}JwQ6-RRq$#{?qoGCn;1ptw+cl)H~J(xh!P@`L=R`GF#-(0`z0uwt+cAJ z)EQTLJqL0mD5u6*kgI;gpHbyj43;kI>uCG(K_n+i0;CAK)-1vXI#jnLvq?f~fp29_ zgV1!YC9Qr(#8y|*0fA$j9+g3%5q$ya#* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_base/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_base/why3session.xml deleted file mode 100644 index ff9939e5f..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__to_base/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__valid/why3session.xml deleted file mode 100644 index d32be15fd..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__rflx_builtin_types__conversions__valid/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element/why3session.xml index b7f7de05e..41e534803 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element/why3session.xml @@ -3,227 +3,203 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - + - + - - - - + - - - + + - - - + + - + - + - - - - - - - + + - - + + - - + + - - - + + - + - - - - - - - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..dd35a6019fb837c9b6006e6de08b96fd1684ac81 GIT binary patch literal 3498 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 YXBf4qHB>NLdPuVF|1_QTq*K)Z08;?C00000 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element__insert/why3session.xml index 41a55c098..f73e163cb 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__append_element__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cc744ecc443859b83bc4c3f6fb41207344389a70 GIT binary patch literal 202 zcmV;*05$&~iwFP!00000|E-O^YQsPfgnK=OUm&16#WE_=nxqeEm&x5KIXJD9y_JyP zJ~GCJbScsd!~F0e2`S{0@zlG%e!~lFBIOy%fd~ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..56bdb022ea6c36d242669b6a4d4c0ef91e75d6f8 GIT binary patch literal 431 zcmV;g0Z{%QiwFP!00000|Lv7aYuqpth4=my-G_qS(k!x=&5%Ios(34|udZ5wM>CZ* z!{pyrCgcH02yK(00dFpT9CMED`M~uWE}`yxp*<8r?;(J{pCyhb?9zEs5 zmI~Cg%l=4Mcg1_$6F9(7Rj1%2m&ZDF4zTW!jC+w-K?-}sT zeW-aKy@U%0>DUSp$k8ERKTqF8FJ-@(v!)!V_4=+={xLphrspG%_#!_1b$%daUm*XW z-rTgc=w8mP>W5a<>#gdyT2%{=3y*)xBV6=m-pTzvUjSVI{m%hie=M!*PyB;_ntdVm zti*PMutAXpr=%1P$f6877{MhmC8GYquXJaX(n2#9g$RR0JqQ`4ZUX>G2H8Zc8{%LF zE1Y2n8iI0Y2V+sJEHN8dXd=-uAmy~Q3PTJ7>ByOL#28p^oOG;-WM^eCxC$YV5NJqo ZV^+YBnBy^8?wUw-zX8mj-Ah#r005jZ)N%j- literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__context/why3session.xml index e30d5a2c5..300053584 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__context/why3session.xml @@ -7,39 +7,23 @@ - + - - + + - + - - + + - + - - - - - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b6e1576cec7f11868a9231087124195ad15792ef GIT binary patch literal 493 zcmVry>|I&T0on zweK{z9hb{^g@>Ql*3;q+5685&kZ2dw>xPvf(Pdp-f3i2Xrw`|xX}nHp@#!By>y^U2 zC0)nV+?I-Og)MHU4a-VB9cXx`GQ~tk^%kjSgI=NrlW#ofhMy~8K@=-1$AL}ymAub~y=`#11bRDzD zUB}lvocT7eb^g}*Tjzhc&R@1|*8!`nwzXaVI

    t-xJ#~vJE5u*)YObKoAXAi3B+i z!hjM^C@q>~16VFT!8gsK;5v~_DmB>#ofHpF1rty>sda=oh%*KAt0pukV@xu+D5Mn1 zWEZp5jZ$+^!-8=X$vMH56;VnT1kaR&MH{5maSjqpXd)@BPBSDnXdA16vN0feoU_p! jB$>!S+JcE0fE;G9WFSe$!Eqv7aEko`?6d~ - + - + - - - - - - + + - + - + - - + + - + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__contextPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__contextPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9b2c2c1ebcaa1f244d68c563bea2d7dcd2bd47f6 GIT binary patch literal 764 zcmVl=QI^p1W`mu_JiE2nZPqwKYWmJ@ z(Wid2*7se)+hlEQ#wq0or=e|<4b9}oX}_FneL0VgdZt7FU8sc@bmUArby=M!%ijcJ zgKc;a6f-4?&%H4=Q^x4!RRb5-1p1h3GI_ec*;U_af3=0S3D=aZo>s#O#o1zuYwZ5M zeab#(LFj^O9)M7#l9_%v9;9sG-6lpHU)D3vMRivF%NEI!~qmVWe(dGu)Nz=q< z-WV&Mud+mVIa0JR{2!2TKyV+cYf9lGgk}q$GL<~d-49*;*+1>fo^?o#rs7|}g__WTmR_{9(K zOT5Z2UKA@wl70dGaiE`<^QH1%ws}}8a;eCrB2V0Uok-|CwhjjhpzL?`0>%Z5ZxoCt z=^&QETnck3%>SfgIs49Gl~(7z#JL%I_5pdHIeQ!Lp{jCPacQVg+6(54M??|?NAI}- z0^|ezVk+(fb3nWlwGi13jWejC5X7L-l4m1QQKbn4&H-u7gUlwJc^&dk5N(vqMy!&u zb|HIVoTAEXmqdXC!=m;+3aPUZuWAKE)?U*f^AyX9K}PR^`z&Ud%SNI?$p{4l7)eCb z5F%zr#>cvL$`g}~>IxhSk?V-mGq0ou9yrn3Ng|B*gk>XnoF}D#`4F`Xj56a~6o%K% unaCUo((OW^D#D{8Ac7JivKlGFz*(pPYiW?Hn2q#to_+$0N9t#JA^-rp*K#WW literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__copy/why3session.xml index fc33fdffd..2ae8b1984 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__copy/why3session.xml @@ -3,156 +3,148 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..530b37f739629ad12ff45248f6cad54bf638c0b7 GIT binary patch literal 2363 zcmV-B3B>jviwFP!00000|LvSxPa``L$KU%??E4Xt%Xdp>j>HREBsBZ7>er}zI}?cs zoY0Jh{q$SzTnM4Vgdu?>_$3OR>b6}~|DP+4O?NrQ_%Olm<1o6N-rS~X_kejkz3cEA z>7{=Qc#}sso#I2wu)7&e(=Gb@oYQnPn%S;h>~AeEzjbGqFPD89Pk!KZjFS#S_Y?m+ zy-#?7*LP|5w!B<4>HBT>FuMDOx2eJLWHiOe->DT>c%3GHci&px!X7V;F35l-$ z7^TVm_cX{M%`YZc(!$T44K*p%e*T;b+Fpp3bT5lQ%m!*Yh5{IZoWHE(YkiT=eD2MKQl9Dkv%_Dkx446b<$2 zY@zW-(JwCPB^)XgDikUdJ_{87e6Ihm6#x|g6#$zx#RBewXD=S_?;c=CLMRO}KjMydt#HVkkVaaeWxqnZ@@IgzF1UUW5nuob``9%7QA~gVDC}d?bcMoh zp>Rk{Xr5|)_RGu35Ma5bc)cjt?T+aWEec?uD%kao=}Le@DGT;PfMpQ?r=t8i_t&}q z5S4#ObN}4geF*?{=07I+*O~uF^?yh+|BAC;JdpN;2bYhunD5tG94IrP->|j*ZQ_~L zDJ?WS+iIlud@}0&f%9yLYOg1wDsw(&55)S3G*@Kx|9Dfr<+U_2h+z;@Na`OsI1=KwkX_$7xSgq$A& zZq5&uW9P@YN%Z}3xEn|9b$|JJx06mbjng*7XanainvivriD`l0AY%f@{ssS*(0GYx zF(`}4i@?3&#s?LX$y_9-ixq23PN-S5N(zmDR;qvzf`J$fvY5z-HxP5oK}0Tv$6&MO zTt+Q8@XV;`Kt`g8!3w7wNK{%#i#`jLqtyzP&FK41H3_+mRw$XXa>68KIieB92B522 zl9AfZ$Y<*TgL7W8puD4QNw8c}|3XGB$VfLz%A8bWTxc3(!t6DTibqYCfNLNl(^zlO zI+;9~i0o(#61*~+J8*_bN=CL3-bs~|QNcJKl~O!9X_HAQFvCO{ookeETA8S96kc+2 zw6{`=pr~V!X~)S3Si>VE11K}n<6_8};0{?yMmITzy%jVn8xNU-MN~rYfbGhk$d6h&BRqg0Ul;+xXN;T&m1TzFE07KI zSu5!*1(#`Xnj0-O&0Ge2vep+rfFeiOARQ(_ju%2?#yC?x8Yjqk$(Muy-SDilNX*j1 zr8EjP2uHUG&2ppx6vu;Uq%HyWIr3m4MDUbV$vQ>RN*4PJ1=}baC~u`z3=oCP(sLsf zM`N5e-q~X18p1FJkRG%|=Xh3u+2~5MmZ;rFk+ViBD=GCOBMTX6w2|VK7?J~pz)-x( z$@gFw#+-Ph?&_4Yk!UoNhA~PJd|-{H z3?KVAx_ku;u6 hwTlrfldCx8s#DZ|>Z~@#mS{`X{2vE!7T67n000R}gmeG^ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__get_element/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__get_element/why3session.xml index 81a9ad0a2..368698fd0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__get_element/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__get_element/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__get_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__get_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8db5a328aad834c2a6a28b343cda1319cb1fc382 GIT binary patch literal 258 zcmV+d0sa0TiwFP!00000|ILrRZo@DPgm*thA3?HWOCCC83F^JbO3>m76=2J*tQg7L z*J+W?&DQ0>pO4^O=~-@xr|2oBjdSEw*q1B6=L`76UuMc!IKvaMFg-Mf@k+Gf^Md5DPd7rkOvqf~oM?kDb0+e0D!3M+bXSa+u$$Qr zmoXL!5u>bkZ)bJtAK!nmhv%pA{L>7_ax72fs0J|y1E&JCb!{7h4Ne1tHl1okcQ5+Q zRN@W$uGO}NIIkLOgRSMDtn1pLG1wvXH^?{)rqNb_)+iVrly - - + + - - - - + + + + - + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__head/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__head/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..672765303f7a71676cba797dd6c927d74208912d GIT binary patch literal 294 zcmV+>0onc^iwFP!00000|Lu^mZUZ3pCT+|%9H@i6bl^-fb%IA zpg<#4n%X%BUuu?u&1bkh+wSmvjrSh|<}39ZzW!41Ct=*jTc1t3j5mYfo7?*Q?$$$2 z{=4_by-hivhdgXFxlXo&W6p3CLNV4!-mcUj1j(TlFZ@F^uH}YHha8oYqzSF*v{Tft sP*69pDq>F*DO~kd_F7o2P)XMHXj!kN(UooBx{BK72X7ft)OG^^0MP}IR{#J2 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__initialize/why3session.xml index cb3495e07..d15cbfbfa 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__initialize/why3session.xml @@ -3,216 +3,201 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e4ec7fa18243381529edd87abd0e44b04e3bd418 GIT binary patch literal 2215 zcmV;Y2w3+YiwFP!00000|Lt5|Pa8`TeV<>kZ!7KUN?q08(#@54K^rOBr`(KUG%c65H(f1O`_4wux06{Yz+)EUlK4W#{hT=X>Bnc4Mli{WrR2|ikE&*zVDM$13@&ofM7 zD&S9lV&waV(~nc=@8K+5^$aP3vdT%L?8yV9PbzGC;X6$G? z5{!(}PqF#nInGyM`6tcnrwuAiL=Q`S|ikW_yOW?O#Bo~Ow>(4YyS+|)Fx9GDFnkt$qZdI`cgBfq4Xrfq);*Sp%xHVo( z;SMDlp*PvnGlrifvIap%$!n#)H*O z8BG~?&qphAeCqa-mF?#%SM=qYmWlXpZ|1bTKIdiki;Ly_hEjjAUT;r-_wzN)Gf*?I zrym!66%HT21kN)rsDWV!K;JLm{$qzS9=xH(=gHmYeF%3esycXd(r>k;!pR*j@OEGZ zy>WJTG6~w^J}tgIZ@eyrR(Ep-m?HcA<=gLzj1xwTLt;SaKMdMP!B4Yb+EG`Jq6V6@?Q(;$qyg++N&H9zggYu z4Dq0TI4ay?OrL$m4-aF9FT3FjW(a$_;Uq3_w=~4lk5h;UVXzmxb!qTV?;Y_Om;S~) z!5^I^!tr<_ezzye=82=qd1BKrrxTVT>TxaUe%fm7Npj;!h)-WQquhVzh>Ccb;k7gL%7ZqaBtg={H1JX zd~tm1J0sw6key-o;+4r5cLZO%*@ImZdFy6xlD*!j#(iuz1P^uv-0lay@&7yMo^9IA z0h$9e2RMEQc+Jz8<9SfnT%kQEY_{-MH{Bho4FdXjJmVeTIQ}sY)0$-*z%nMVfQ@3- z12qF^2G9)PofyDf^MAb9$?i!XkH3ug7;pNw7bm!#KCaa^gW1zy#x#K2*8j+Zrc%xE zRR1rvxoFjYEY;5=buZpiAH9_%IGP6x?cW@<2MoXZRlyH&fGJAo$&JV8!k?m4pT2Aw zzp^Iugw2hgDShGg?((av`>k%$pY)@?0JY~kblam&;Ie4CE(u5`B^@-B7zwPxXr=Hm z<{(r^|A7A}*=Z#s5gJ>p!5Bn|!BTVqGI@!r8Rvn6^nRK4fHQJS$$Dw^1bJrDb4*E+s@a%**eYOF{6_u+LEuiWde_xWfA@%8Y!r z6))s^1_uJ!4;XjN$KNBc z#z17ju3Mr@GDe>yNYK*78YMfnn<%YI!6+&!8^I37Spk(#O5!jt)e*3og>__{&{A=X zvqTQ9gM^BPT)Im+0gEZP$ea+#lq5%^k6bD!Xvk$cDWsL&CuWVvR3e$c7{SJr1jedW zw4E}>@@iyc97{;P2!>4ZY7ugFQPn6n*sUon*n%oBmbKti5L^yE)K%0d-+AFPxhN2w zwG5RYZU_Wim^Sjjl}9N$wtWFXM{Rkr5etxJwmsLs1IbgVQP44TJ`|OFHYt0}Qz6DK zJGKgrEtPG_l~!G%D9>W?%6pe3TRHcF#EfBvq3duBCCJGFxWWKqpxx#geN<;uK$#SU(Cke4eaiu9B z=lKt}CQ6wb8E`62PL|kThA7)bwm|OXA`ECUJwmx4F=8swiuH)D^A;q_ft^9y%wv?4 zMN}aRFC4}+2R;(niko#d#E?HrcCa0_g$4*sqDbXpmFJR9UsuV7WVj?r(wbGGP pjBe^>S6E#nq>rt@=12A|jN5QQG%do@1?*Dp%9o^t@000fSIMV - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c6beb323802f6af30f39a06f30cbdfdea4b34d6 GIT binary patch literal 2156 zcmV-y2$T08iwFP!00000|Lt4LZsWKT-RmpvZWe<9SbP)c4B*8W6QFTtGtk!H6C+&5 zPTNY*{r6Lp;zUl%X(y3yk~Vvh)}vS~R-JQ1QFME07mH@QxLV)FfQOrS{ma$=YN*Mj z4c}Jws_~0vb!#_`UA1;;x2^qqa}({{F1N8i%zs9V!KP+&yg9Y*CZ)JpJg1NQM$hVs z-H#J$R`Z%3+mP=i=&r$|X7eguUANyB+kfnJtn4QG#lq&yE;ecT_3p2`X_jrXTD0G; z<94xd-&*|dy4@@m*Xw50;(%`L@+RWxW>}Rj*h_oS+;zHIx6Zotdbx;S9$De(>Snpz z`TMWEu)f9aZJT@X>(#d1*k*;^2Lm2K0-OsJUWx>G3JPs0*2gK^sGy zX4wBlpYr-qT22I=`N^>Z=Lep)l=@ss{gyhBlUMJj@}idA-C5He?pn$>gxw!6z}?Y6 zI$z)&uQ3HCXAG0K)2H7rYQ00y%;u9{ZD?-oZ?*E^wTIdFgF>UR;eWR68jV8yTC2~y zQXYxnQS_UKmgc^tc}w&^6aMf#{L^RR|0VE$kLW*EBnwsxR^J+{n0iDSITEp-GDv&8 zObXb(R7c?zNdqus4W8|y0CG4C7%%N04j=>O9EJZ;<^X+YipRUQK;M)+g*~TH`ofmN zmco`J-wJjO^Yp&)wv9C)oOf;UV0*o6+C^x#ezWa9amX4(4ZH?+e>XL88Tz~Q@mCbY zEdsMP_&Cc*#e3*tFBS9QEiugO;0`+B_OUt5K|C^~IfmbQQxAh13?uPmaDivK?O!n6 z`S+FEFyRhlK8r}cJ&0iVsx^G!+Qu(8apm!4%HA&G>gFnLY}>3?i`(eibr1bEer*@s z;IV9aEEvG<_~B?&cYBby*GJP69cnce4vvlsQ>nA9q!=TDgUR7dqwY;UOOSnkBZ+1cX~Iy zXmyW~o!O8-vzu(ItQ0ei~3~|o+3O&c;1QdbP^yY&QMW+q5wq! zK9U0P$?8?OU$|em|3SFly>@g0z@~yw;eX+O;r~bCzpdKKA1uTc))v+l*1j*+PPkZD zjeTC}zpmiap#KOqziiq`CknG^-#ccfSjd>2WP!A3ZPD7FR%`qHRz)<5XcW;XqH(Nf zJV?f0c*yR1rQ~Vk&O5O&PXl-#zw@F`?@yoLH3C)i>1WcXegaX5Ux;6be^$glI5D|X zggvev^*g5Bn#OLssomdw+6e-sFL66`GwKzd?RD=*SED|QBo;|LOG)em;53V{l+;wu zPvE}aUyt6^`~*^&9n1OjPlW7O^lHPWbA4~wlg^C&#sT{qd*FPwdyOA(j*)^X&xNU; z3-D1N4AW`@A}p&hO41kfiYafxBgpNhLDMn%Nj;j*|EM5MK<;rtnhGoD}Mk&@YXJ>zW4-1o}$mMOMyp8-6ZzEX%{;}J;v>kZf7sh`uSud1-Ddk_o z_z(H9xcb3dzi_{Bzi|KOc~t&zbZHb zj9Tx5QJSL>tpxtl$vA@+Aw*9Jl`d*3fO2Yq<^GQIl%!BjsGyt`GAQk& z922i-kTfttQ`Eo($3r2APeKuz9 z9+hSxM!~^56^)GC2&1(OhN6+0&=WStXcf_3cx^4wkObpSf|JRaV9`idSRbDfWn5xY zqquhvSg;_eH&hrvBQv2V9)wUPIUAIxUTUSl3Q#`q1VQS6MnEdPu|DMR3RCn<{#rC(r)T~2YLQ39u!*_;W=kF>%7Wi$>) z?KPD=A~u9Y>qIOKLUuih3MdMc#VQA-q>>borUFVF6A-DPDO<@3gU5@EYvq!~(Nc|N zBuU1oNg^G-DDu@LfjGg+I;B$(0jE(|$pBb5LuBVmSHgRuI8z+sMeU*pEsl<*XGR6f zGJ~k8up$ZsPWu^g48=`*7p*7SFhVp2n&pq6NG2JQk0?wuVPcVPS&x#ysg1;o*$OHw it|DG@%mhcmM!e$|e{9 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__next/why3session.xml index 3f848e6f3..ab58e729c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__next/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__next/why3session.xml @@ -3,210 +3,186 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - - - + - - - + + - - - + + - + - + - - - - - - - + + - - + + - - + + - - - + + - + - - - - - - - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - - - + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7b052774690543bff6694f07398f3504f468654b GIT binary patch literal 3103 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 - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__next__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__next__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8f9988303ceb9db94afe8a49ff6d657d26f2c9f4 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|LvAdPuwsNhVT9rz4cHb`D6Ss((WNWR7FCZs=Y>Idkm45 zU9=mZ^w)Q?2mxAXg#?149uish8_)YbNo*g}yriNJsa~(>Y$*M(x}?oOtC7~N(T~jq z(>Gdf`KCGD9?=@AG}5DL#b@W^b-z8Ob5_T<)n-(OOFE!0G=3g#YRP~piI%)N8Bcff zy`rf*BlD-66lc0O_esO5-_YuW>1EMh6mQ2c^G@7hLy%OaDhM{hPee z*?g*Yw38f7vmPF|e>{&Eg%1?yp@D^dP<~-PP}2G1QN`T{3i;6aE@N;XC*Q@AXXA0vd@>rNV&HCh*R0?sM>04X7%qxi{u zH=s(>+QjOCQzQeaGG+4B1}>xlji|J8hz_}0Z!)3gdnMmXl-f zIcRP|u2nQONE#P>wl##T9qOVh>fq5t*u5B|5*XKV3xYEl$E<-gQFAs1mxAX>WmP3K f$fl79Y7@&4xjD@m17~n;QaSY-tPMih;tl`+^3+jl literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__reset/why3session.xml index 353aa794c..6151e864b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__reset/why3session.xml @@ -3,93 +3,70 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5aa223c0194118ae46de6118b82c98ff259c6b78 GIT binary patch literal 1041 zcmV+s1n&DEiwFP!00000|Ls~$j~Y1;z4x!!+nyp-`P+v*a6vm#jw`M$yIfY#0z;r@ zl>Ga3!;nBiW+xhVw8Q$+Agg$;dainI7as0H`n(D2CH2eAW7sXjW(a-1FjkiV&9HT(YPI?i|P!1_L1{P_HYi)tEL+g@_xdr4g>Im#U>f{z9DF|3y9 zGD}a5mwKuCoO;!Rzb0R`QtVs#l9S0-1?1`Ft0t{YzNV6|?uQ-OuSMR7zukS~|Hyl5 zJDu^{J-@-X+HbXgOT4$*pRf-)SuD!I*{+9cz6X?e=4JJWt>e1BW)_8B~ zanX3HjMo&SDaNhw-W21!Q(qUZ=|$6vTjTw$>%}vFeT8?m-#-YO0yG7@~wS;TErOL3AIDE-%ZQO&)Kl&$e_HWk=X2Wc#dUfVySD4Nx ztxQPQInKhUbz$T$YoTLH)t#g39-bCpiN4)80k(#cGh`HEIHV~woI!F0p1is z0+?cCI&FeWDI4Y4mx(0=mcsbtg$~a8F*@6skQ_ub3PB`626G0`Li3usu=kWnVli01Cnxug{+fNB~&cjq0w$!ys|Dp(h?PFRLm^F zNK)22Cw;KlhLHor4pmHo$;A>>glu$HRu{%Nxd76QoTKR2Xe?d{X^1t4Xd@}3BZ2j0 zIp~lsvIA$cA_OHFpk$a-B1`8Yl?BK_9%fV>SYx>`2PT=!t|Xxq0Ypy16DRFQE8YDA LOnK;p>plPgb$$#j literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__size/why3session.xml index f4ccacd3e..8834e9f08 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__size/why3session.xml @@ -7,18 +7,10 @@ - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ce15a6eb352c147529796253bacc265c64e60ac4 GIT binary patch literal 208 zcmV;>05AU^iwFP!00000|E0|_Yr{Yc1>oJkqI(J4xhal^t|8rvSMj2g+k^Aj)yc;B z_i+fN84Fz=LVD;!%%sSlf@kbH-#Pa0c!Q0kGC_rj5I{eveOif%e9w|uw(UZa=Rp(} z$4rZ`jY`C0Hd*bVnNVzdP^J`(`Y0(Bu&tdx{&N2RULW*Va?`fG3w1!VKg*#$?_KjMPyXcoR=NTa KJ;nxZ0RRAllVr;P literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__take_buffer/why3session.xml index 5e26ef0b4..28ca892d1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__take_buffer/why3session.xml @@ -3,148 +3,117 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - + - - + + - + - + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..53cd82d20a4efca42b6895493cf5705cea61a80a GIT binary patch literal 1584 zcmV-02G98)iwFP!00000|LvQ}ZX-7khVT6px#h|#vbY@P;ERy~2FWGRwZRo5M3yvC z%NW0XswFS-Sa!U02eL%KkPW-|i%b1qmq@z%>c32s|9iE`fALRp`_osSZsz`K8r$jo z+OMX5-ubp&<>l{J|4igWP0(NZ**f38_D!B^2lowO0u!-|ebVg9L{H$d|4tKedD-Nv zWp~rAzx!owI{vl)?$>SDl#*8u9l4Wx>j>c8LwLgo`d&|r?-qSizsj*~ePW^8*HxMQ zY}AIb7X0vv=n6mV00=OIFTXk;Rx7U8Q$-Tpe18nw z?y1Vb5_N~xYWHgQYWFj+dlWxdmGgg^9_kD(0^VcEtHpIr51ur4WyHtrZElOLp;8v) z7IJ!kQR23C0vdo}J0?nmt>$BlX}7twmqNsyVseeQFO4+D$FI8& zcc@0(Qb#$?mOA1nd+G>dY^sAhxU0T>5ZoWA-#@g5D7J@xYC(N$J^u-$`o8-9)xQ5! zwy&=Le=4QVQhMD=R*YOPW}NtM$4`Rx7hy_NXPBm4w) zSlu){h9x+{O~WHR>*#qA7K>S%e>|=He@&mtkE7uSRDe`~3;>Y+R`zYhsYWWlD>06O z7!?>57#{#e4~pFy56+35Y{f*y#91uC$zx)iGGZKAU9nTKa~4Z*gxDDY7Q2NWMYW=$ zqT)Q3;KWfebU{%oiHe7FT7nbD!@wm(tsN>H&S(ja6b`>!Owkj%JI#FY&Pugxwd~0+ z!4X<^*n`dk0N8i=3vj3ar~o+qB{&NJym0IDxxX<8Dg!D5&SD8pn*r|!z{T_R!Alq3 zFOGdf;$npVSr}Syuag7(&%mJ*qJd>c>G0#p9a?wW<;NF$hMwz-r*{kopPh?C7n$MV zCUesi@2xQ*1dqZMAr%QHl1`A3jMDix_ycuQvh!eyu_h3p)M(IWQi4oy))H`(cwG<( zo03WxjV5J_@lr_>rI$7vZWa6YYa&@vQfY{mT#OpIJH?7rB4!^-uOu6-l}3y%a;KFj zhLldEjVDn+J188aniQ<9Ap~+ z8FjQ6MKHb?W3_jJxJ}m9g=9F$H4shK!Hb+RN;G7WDa zIwb)iN*-ij;oe}PaX}JFXV|e;FlkH_Q8NqJKDJ2R_a1?@ob*N61jS@gh=-L`uqaY+ zTKnFIh)uSIbW)twC`}G3nLb^y6hSr^+FDvRK&Bw0#qzrpin;LL1&~N=6X%TWqf`@% i=J`XNw1}d3 - + - + - + - - - - - - - - - - - - - - + + - - - - - - + + - + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__valid_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__av_enumeration_vector__valid_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..08fab71b554925728d459942a10e76d7fffebd11 GIT binary patch literal 798 zcmV+(1L6E1iwFP!00000|LvLIYa2Nb$KUs_xc9zDqtP!oANVD-5Ym^juggdp(S^<0 zvE`8b_osE*q~%;lbC=XTgh9yCS38=SkJf`#E-99~50vg_x*p>&&bPE1X)en!ecBzE zE@;~GLw9L9zTTGmVgH%7+?9vrSG1zA*-Qi9(2nCUP@>^$yUWwvFzor}z;om}dOPrZ zxaJ*|aWfCM9Lr`m3~@6TzAM8J4msD!x@0?zWym8>Y2S-FFdwFA*lxxu+#UCFL#tjM zdzbW?_FtCv;^&>BKUegQ-bFD+5oLX>I*uQ|T|HWf@-1A2AGxaj=_>qh67W|`z%NZe zX_0-k$W|B1X4vue-+M4GEl+&S)#UenEIa7&qUG@w^VnOWIfe1t$yINn==H^andW_= z!l&|U7Bjv6;?ONkW9sqAvTTI?#)MrR0b9BsAA27jeQx+Q{9d;PTYd9@M_B`~0r-|R zXoIc6_BODM<@6hGed>3(f!VkHz>#}}nrMrINvc=-L9*1>#;{#En@!Y$u^>2F%xjxg2;II4onS<5^pPU!o zC}ofhN$D{|h}on}V3qzuzL&Z~ZCy~Pv`J_vvr??c2bU7cI$^6ybjfNPHF@jVVoVws zw9P66p);{gRRmp-naOzTbPO6OCd)Dc`2^V_yHG`{1ILQ3LV+P=QBP6MRvI9P(ps07 zO<`AUDO>kINhJ#jg7HpL$R5CEseBdbPH9D`6*GbpM#z-4NEDgSF-CAzWV&b|vjdrw z^en9d1wOH`1Q_bMUd-9&iA)U%1Ed-}g(-p5v4)m&7TOS*MdUgG8bL{PO0!4;IU1X@ z0!d0G2aCve5gpXPkx01)h`kJgU6hh*0%{kQyoeeoS@RdI_T(8QA~EZj>qm!-4=VXg zRq`5rChb%bHON*uV4X#9)|nWLSya%WlYmB8Bay5_gISt@DJz#TWKD}obrp-~gtk=k c$I7OpY-Hy+MJa?ohFxO!H*e)5-;f~y06m3^uK)l5 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element/why3session.xml index 80324f7f4..090a30da9 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element/why3session.xml @@ -3,227 +3,203 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - + - + - - - - + - - - + + - - - + + - + - + - - - - - - - + + - - + + - - + + - - - + + - + - - - - - - - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3a733f3ab3619ead722eb90e31db2820e44177ee GIT binary patch literal 3478 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 E0H1z~%K!iX literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element__insert/why3session.xml index 1afa7bc67..8df35b049 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__append_element__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8d3f806bc7e059f61baec44e85e1b62485c0c180 GIT binary patch literal 198 zcmV;%06G63iwFP!00000|E-O|O2j}AMDO_ue?XXt!8Hf3i{2&IrZQ8}fypHHbe8Pj zyUU{B&4ZVspkDEiiYUrEaXVO(RDNzOfg&v1OogST$ce!g z6$wi*?k18^?Q*JXP9`zcpcTRP!5{xk@q_(xO^G?)T<+qE=Ylx}N#z7hD0W@&rW - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..03ac5cdf153ce82e45afc870da02409650a0de79 GIT binary patch literal 429 zcmV;e0aE@SiwFP!00000|Lv7eYuqpp#qa(Uy@!HE|12MJ*vryD=&ATB#-mXy@M^cV zcG-OU%7mnWCWO#zXu%gDqi5dJydS9C;5C-LpZI_illK_VKde(6&)(1c^T?Uld(Oul zPgv4E`x8^yPu|l$7d{v7W18kt|C$eDDn6u{rWvW6d%3;&iq}2h=Ux!}_JhAPe3Xs& z#5g7%!@V(VFMl~vJ;GhaT_T_I38#d)EGPJFIx=o?ocVscEDi4t<<8GP@W4%Zw{)*g zLNAl(6<%RTr`m%gAV;wIGkO(07yNb!nsVS;=leDIW@J8+n2TNRS!Cd4W-w(xVgAm& zy{!W=y;{mNk7eqY%QUZ*saFP92H(OUUiEgF#=|$PP_9t^gHUcROX%i*eY~FrUn%_v zN*jj+(L~p_8eFtOsLrwMT-QY{wG*G - + - - + + - + - - + + - + - - - - - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f6ffda728e6ea2cd792027f137f07d6bf1f9ee51 GIT binary patch literal 505 zcmVe)OGUL$zLb` z|Cs!_0)I`;6@Wk){0PH0gik$-Z2R|d|1!I@(p%tiyQn_NN9vPYQlI2Q^hrKYpXBoT zBp;?vGn2WEv4u@f7c59?u%6ACrFQ>V`GSV&xP%qfIsBuLgAsB)26k)((; vh$tm - + - + - - - - - - + + - + - + - - + + - + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__contextPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__contextPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c3e0b66edad579d90ec8ab2af28edcdb1ced7783 GIT binary patch literal 773 zcmV+g1N!_QiwFP!00000|Ls@LYuhjszWcA(eGK$uS(Xkxcwk(_+gC-E_|1lKn;UfnY6s@QwM!DdnKHCtQ*cl`Uq47-`lwue^O)IP3fPmb~w z!8g>5>mk7ctJ|~-*LbzXxoV00^mpV^$I^l4ssBs4$S@(OB=I2skHsN z8NP13ty@p`@pQVHx;&bEJEHGwxshXl6bV88jwiEyvehtyf`(XB>ky|! zh(L=j3Z7VCQN%2xFN>ahl8SxF)nr9qS2#-?<*Ym%o1Dn&6RjVk^$}S;NzM~$gQ@wZ=9`)?siry~$}>^*zSO}h9gy(9 z^2CM{8@?4bOfM3q9-Mk`>cRg;kzBSwn1$Iz`!_0iUUn$nTdLmBPfwN=6_96=`Kkcn z3ht3W6XqHPR;A@1;ET?nWD0emQ7I%TN-n+B!eJ>Z55OQAu}mw=lqbtXPNG7t1<6WU zbYukySwthAaSKj(v=%&6;F(43B#@Jy6eXlof15=x~Bl(t3OmO2`V zEZ4dA5>b($BF}lQ9rwa3LSG5)H;xyXW)hfnPAcv^dCR@?oERbkN|(E6Bu~33=OroT z2%Ho`l9jBaf*A0!p!mUPRAxNl5qT(_RRw7qZ;XNFLW1{&Qa&1~({B0&$+;PpAR+(& DM3H)? literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__copy/why3session.xml index 30a7db584..70fa49368 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__copy/why3session.xml @@ -3,156 +3,148 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fa7c3328c7ea0cb2ce127bddb376ef228f3ff263 GIT binary patch literal 2362 zcmV-A3B~pwiwFP!00000|Lt7MZW}ui-SaE%{=xu@ZvvA6yfMZ=kh>Z5w!!C(07ur9 z+d({EKgHI=veZ)KSh8e=3ky=Knyf0Gb68E0?rujeK8@YCQD`UA`$?L1PcDz951qSn z_|m@xcb{7~ow}!ny6(Q6rit^9Ij3pc&TQ8%_P3UoU%Io)w@aT!`clVHHZ_CRKN#7>jQ~U7MO%idVaXWS6zf;3MySp_0yZhR(25#M_!R{M&Gw@Y$ zqJf(WNKN;-e0f{5GMJT5jU2f@-BoFGG>+-VqVZ`8ZR?_I7q8QN_oHne(m#)B98%k+ z@#D8Nb=~NG+S&zNXdHsJWg4l>tynp!#E-h2`JD>t-M>DqT>7h@-{*OMQ)F1)mF6o6euV@u z8v-_m@f&%--e(4@V5?wzC$Jr4f|kdFOQk}k!n^72dn}L^2O4$rb6~?DuxIIf8?I&F zdgbhUaTa!v7GB9(7{omshqr7iZ})Ly+mpjS_nwZsLo1*?XH6NJM!P><9DR3JjS3LV z@XDy(vNF0@c5c)v0IJqhtvQ(1yzb|#-CDEHPfhQjHT$@6m^v2dQ3um5wZm-J4*N6h zFjeZR)K#h5&;_y#z5!_LEq-ilqd&hf@~R1!s|he53UDc^00XiB>$-4BvOs#qyIE}m zmH(Chd({LmP!zy3|351Im$9u^1#q!t!OIFjR|TjFP%D7nt^&}t0;v426~J#=0sMRu zR0H!LCGpMY_~uXFsl72LG2kj@K)J!|tX&T_pemrNE(gQ&;|!ZpBMMfaPD6|2J}S$)Vcp-(7(?8ACdoOI`=P@0d_#`g&5pEOT~Og*5ag@4*iy_ z^@oWKtBYA>*w|8}j(l+Hoz-R|K6&heQ&n(Iy1!xlycsRKD!1($9ZXZ73p==NRIkZM z6`U$KRdCKra9;e&n$>??F~4YL*UZUfVy*|;KE62^u zlJ<+kX3L`-RTZi#R8_c0Rd_yTw!-!=mF|`9mF^cv_u(R7G#XHW{VId&p@)b~`M5s) zV#APtT%Uv3T%WCqU4OuBq3y9Wa~`!q zd*Ma2KGTpXMxMJKTrZcnHTrkXJs`tNM#zpid^PqJ~$veiJw`c^Ia&0A-o?}$#n#D|UE44B~X$ufa$^nSATpEWnZ1PGO zshkoFm`qedz|8h-F_Kxr;ipl09DIlv1omjNwSlYXWpN8Q(G)bce3IH*Xk`**6ga&#kWU*4j zB(#wc1h%4u#ZHqn)`fyT!*y?^i3~oAY=cxXhKP=Fg+Nw-0U^X^`7$JVgBj!oLkQ8* z$hGIpOQSOmgygDNS)#azOlt%MxwlN3fC}P$P?Tw&jpkmY zgap8t3tgEZDm!7BPKIWiq;`rXon1Dnbf{gy1hXWe@K|MXQVF@1RTK>4)5x`CymrMe zP6?7OE0isYc*1aXa4rf80a?iyszBu1IbNmGUI1+vr@@3|lf^(74GB_HpHYpOK)g`Oz$MfbmI{6?FZkjX^Cg%U gWikjDU&uHxNDNF{3`lNPdK8rWAFc>QmC}g-0GT~&)Bpeg literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__get_element/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__get_element/why3session.xml index efb48a731..7624c4546 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__get_element/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__get_element/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__get_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__get_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0f518a85405e7e1d42471ef629c8caa78f4363cd GIT binary patch literal 257 zcmV+c0sj6UiwFP!00000|ILrRZiFxpgnOPMk6;`B7AdYdg+97=wb*OL5*T6(;@&=x z=u+ppG^1V3x7wN7VYp`;lZTWyED3W(Uw3>jE8!J~g?`3U8XD(%hvfrjYVZ{|98$Qk zZ?8M{Izgcs3wZzx2oEiB*Z~&$Tq%13puCP$u%;=)M!rr3z)!i-UIFr{G|)&#lH+O~ zQiYgk2+JAl#;)Dt^)L1a{8X9$Sm07G^{En#^-2aCgS66W;?^415(Q3(T125<_*>fq z6AhPbuQZRMja(Y$k(3I&w`~w~KMs8ei#_<@PGQv8iw9(SB0}{;_t9gXM HRRRD23Z8T@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__head/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__head/why3session.xml index 409b26f85..a945e1457 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__head/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__head/why3session.xml @@ -2,38 +2,27 @@ - - + + - - - - + + + + - + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__head/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__head/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f39d3c26f418cbbed6cb713b6c367f730c7ad470 GIT binary patch literal 291 zcmV+;0o?u{iwFP!00000|Lu@HYr`-QhIjvp?xi64<17yeWC_h)vL0vYL`b(hdy5E9zFR$<`QUd8eKS1bQCh_e5S8BGwsPIzE7{E;9<%aOy4wdK^r=e zcjhQ=XNP5-M~pmCWQ|CM@KK}nXT-!mGY8Fx9Oi)|Wj6*qvCd;e)MLne&WP5}-aIsEsw zy4mIHc*l5#V-XDrIl&}003v}iLU?v literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize/why3session.xml index 77bbe23ba..c0416c7af 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize/why3session.xml @@ -3,216 +3,201 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b1b21e010a8565c595915e957b1ab1cdfc027291 GIT binary patch literal 2232 zcmV;p2uJrHiwFP!00000|LvSjPa{bZhVS(&_O{ZjM#_l%mZnGIf(EIzrk z1`KVAR`aLd!Q{m@a#U328*eEhpK|4d*a zPD1`M3un{RPiNo4d>UrM&G#^o6E(r`zxfq~<8XRO%a8SC!*OsY@#=tkhkcrui9D|F zdVCl^>c;zs{k5gwt?2u%rmeDkqJyM|YGysu!5+!GD=Z zFtSQ-V)Mac?B`+jH%;v4l`73dcU!6{^eeUhy6saCD~c6Z;OU2rn!n?y!exqQ9=_w*vXkp-ksXg<2hcf%#h{-b5w#w3>ie)zL5N z2%GB2F%K4U;fS?L`ev9nVwj3dTE%g# z5X}c4%m+^nz4@g1WaX3XXWDGjY_nWuK3%KNMrf{RuDEu^QVgzmGetAS(iDGws=_Vx z;u3CfLi5K*_QxM<{%|)EHFq?3ESHqC^UTGoWo@o#uDE8#qPml2ie`#+Q*c2oSnrGn ztD7^LGj5)bR^|B6^(QOq&sQ$#>lMus^*zn5&Untl^nBKTqcof^Cp*yhp9Ug`*o$U`JIJ zPUF<>XndW;ZBE=VX}l_h<~O4S7(Mmvu(9U;7EY&mW6A2bU&7_;xCcY-wdb{6HZ;|VQBBkLm&d<6zRjld@e2st4FB#E4(51Y9fx{E?%WPoEx{vK;6Z%&ni%Ewdql+70r0L?I~V}( zD#U95cr@4U2;dO`z_T5A4$!nM~ZW2CsKM0!!vg>|u{O#a)*gu?mgunRu_#@vUe9`}T&^@}kx885P z-+KR0d;j4FqTMqe-5k!7#72ttB=LiyVk0TKJ>BhEX`&B@93Ss~^DlV(*1+-F;20YK zE8{Fr)Y`wbe{27@-2O*lGyvQz{r4xnpS#G$`nq^LDv&Y+0aM&-PBDc4MLyG+5Q7!;Q!MJ;*sDJNO12Sp`P zE~$>Z6R2~JpcHALRL&|1gFz|+pFKp)L3+DPTS;IbSwiolc7f-I$+3h<*pP}9Db`G; z%RHeRjn6hk8w1&Bi;zhh!@*kCOm@3WuY5X7+6pY$DU=kzM59BNq%dV4g>xL_Mm*hk znH+>f$r^8*Ey-}@k~i7Jl%+v!GY9!DAQq9cE!nFmq)kc`Sr=~)T7#*k1JPx#ebS^+ zS;Q=mqSrDg2ZnsXWNH+27(@;MEU`#haTd0dCZl2sCd&jh3b)MVfON9L15YRl^hqSL z(iE2jyV;8xB|B6(I1zK!(VD1G8E}^6^UB)dpy~js3#3#~6oCz1Yzi)L69ka5sGLfS zHA;8RNR=-q5|NAGRJ9=QuL|nwKk!@T66}S55;0is z2{Qd4Wh#041;xQ@!jWDM(_Y$;qXUr31L zf)d)5MK0_FYbZT(8Yjr2;&-sxnZkqt=5CFWU5q9b?`*IPpJ+@nAW=x4`2a&=fj-66 zW;>vctb_6@YxXo`2$mVHtr1mw)SVKNhpm!lV_TVn=1L}}E?V@$EHTQ>A&|jqY}Txp zx0##C7y+ax6Mt8|inbHh7(z_RlSju0*U<|H%Ep51*6Im#9r&c20LiB3(OC_a=jVkm zp+qKbZ8Y>98#rnow8+K)h1pB)tH zX&_srIT*M=r4(J~DAkrx#&XX(l_7EW80&fM;O@7MBV0*TRh8UnwOuiS@yN3k>_TO0 z!(sql3sd!%*Tlu%0lFe3i(?`~So5rc36|I6?73AS@#%V GasU9A%}-hY literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize__2/why3session.xml index 7f108f369..e93841a4c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize__2/why3session.xml @@ -3,150 +3,143 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..312b92a64d248ee93c899ee935cd49dc852a7119 GIT binary patch literal 2140 zcmV-i2&4BOiwFP!00000|Lt2%Z{s);z3W%(Z4ZM1So|i?8Ni1PHb7(dvhdX?eqn@h zoV2Ypy8rzar8tq(O4>=3Nhe_+(z01B7OUQSqA0pM!_}(Yt`-&1YLKy)9tiL=a=30)$UKcObu>RSgo*RcD2pxZ`XhQRlDxm&8qu; znRcs{|K8Dmm)&-?y1ZyN9Zl#fuCEe(+>Wc#2YZGm?e(CWi_W9JxLB{!mpfMUadWj^ z@BRG;PcU>eJa%Q2aIx8STWmMveKg?-B)~_3!c&m|4?&@;#d1wGzN~vE{Cra{`hp9YS>b`Z+_Luvf`W0dKuP5N{ zXdr!D;2p0q6(%1TCaf&Z_F{$oY5VzpxRwXsU6C#10>5&Nlt zbim83fE`M86kdrm0AtqBr+pN_?hgZ|OFN1K*oZkt;eV1jz;C;H`@VFsyIi;3Dz>|@-Sw|H^b*t(!@fSjjpmHn0dmHlst{k>5y0b&*$RRyRDP!-_qDL{Ajlik?L+{)a_++UBmGwm2Q zQ}0-YS1hzP7~X`Pp0(Y4D}}|3&mD`|_c0dpZ;w`et@`@j^mRC2RrR6jL)C|>4-@)u zs}BFAOK~$KXAcARwAU5)Fm4ZFds?OF*N`H3juurZdRJ03ED$Q&E88pE-#^ircZ9Nw4r|uLr-Gn)F!}uqxn3Rlr^YUSKPgvn98u zbNe37#*=GvI=4y|uljW6+dy%u29c37`Moh480V&bmOz6|)%r6YbiTzog$b_S3+B2P zz}veS%qRl{tRljsL|@1yWx9=bkhWj%%*5XZb!R5$lfv^{Do+c~EYO$`p6B|l!c&E3 zwck1X@mFM=QxQvQ4kvfJt5_>sA2aG>#=CgTC<5>&?yggK&)vN;{w-;GrF?y<`;?u9 z<|k|XssdF7stSAr6?lm~#Dg?cHK|V#?^;aW_*2B(B5=KtH4d>#K$UJNgU@Xhv;+8U}K0}2(Nr(!ZC0xfstO3k!-w=*2EM* z2t;FiKnIv@vOy&ud?q7xoF~Vk(jaxT+0wTlxk%9@Ptjpe&XSRCIHTFxHk<5x z)QSdXNf~lWMrKA&K`ZVY$ApqmdTaur0`QcjNy7U?Mz&ELwNci%;Ec2)`T!R2rD2WFf<5=mZqw+3{C|G0$7C5TR|g| zmeHd!2EZy%Qs}6tNX`ZwK(k`S8x^^~q=E6E{8P|!>Q>;Xj85T#`5|DYM zxE1HlV-U#`s9EnzHk<;;LW*Eqw2s2f$UrNyW|kn^$E6x2BMXV}?+BI>BLM}2ciEA| z81TK7Zm5<*>OeD>*>l4~Op+jP9QO=u=;I6O8WrGFHrDFuGo;R!sG`<6%>e7@l zFfiOp|0w+-*l2f(>-Q#4CMBp+<&KtoMFcYj0kRa1YAQHtR zEb4+&QLIGcg+ne04kAe>fBJCw8}vpgfQB(p+AZX1dQDP|KQDL4Stv - + - - - - + + + + - + - + - - - - + - - - + + - - - + + - + - + - - - - - - - + + - - + + - - + + - - - + + - + - - - - - - - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - - - + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3bc9926b960589432b1f53b34127cff16b4db401 GIT binary patch literal 3100 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 qS0;)mXL45B~!X>bja$$p8R~2@RkC literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__next__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__next__extract/why3session.xml index 5ed4efe8e..6ee65d88f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__next__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__next__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__next__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__next__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8f9988303ceb9db94afe8a49ff6d657d26f2c9f4 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|LvAdPuwsNhVT9rz4cHb`D6Ss((WNWR7FCZs=Y>Idkm45 zU9=mZ^w)Q?2mxAXg#?149uish8_)YbNo*g}yriNJsa~(>Y$*M(x}?oOtC7~N(T~jq z(>Gdf`KCGD9?=@AG}5DL#b@W^b-z8Ob5_T<)n-(OOFE!0G=3g#YRP~piI%)N8Bcff zy`rf*BlD-66lc0O_esO5-_YuW>1EMh6mQ2c^G@7hLy%OaDhM{hPee z*?g*Yw38f7vmPF|e>{&Eg%1?yp@D^dP<~-PP}2G1QN`T{3i;6aE@N;XC*Q@AXXA0vd@>rNV&HCh*R0?sM>04X7%qxi{u zH=s(>+QjOCQzQeaGG+4B1}>xlji|J8hz_}0Z!)3gdnMmXl-f zIcRP|u2nQONE#P>wl##T9qOVh>fq5t*u5B|5*XKV3xYEl$E<-gQFAs1mxAX>WmP3K f$fl79Y7@&4xjD@m17~n;QaSY-tPMih;tl`+^3+jl literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__reset/why3session.xml index b49b513ad..a1dfda37a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__reset/why3session.xml @@ -3,93 +3,70 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cbb84ad81574a13fd1ad705634e70f8e36f4aad0 GIT binary patch literal 1042 zcmV+t1nv7DiwFP!00000|Ls~mkJ~s9?e#0JyD9*O-z=_hW84BM1GmDE93sZqUPsn0 zl7An{UMF_q>@6TFh<4dXhA@5{y_tC=N9^w~e%ax69oqHo5xX_+dTiT{_J42xTfvIq zhwg!JiJJqReh!yA{AVRrupI7u#g@y4w)_4|d-#ZZYWn;b`}+X|I|^-!F+)CGyR`Y- zwg>w3K)XO~OS^|Hb=a@(ckLsE{=RG5aKG#6bKkc9AtmbCwC)alcE&7ABX95stS^9J zB=Xr=b%Du8Vm`SkkB}en@Z|o_fhrWuZz%hY;yPeYD`4+0kn+#NezWfL+tMZ;hG(uw zM6!$HU=ID@?O2p!5L?>NmUjJUwB2z12KGHIGH35rHoyegXA5TEGgVj!`Ztx~%&KtE z(G}EM8&PY^yDDW>%3gz%-JFxf^NBn*|ITKocN+T|PgMc1g0Wm*=k#dLu96zyBCCN1 zwyZK-W%v)Kx8Q#3tc##dNiVCW6w;L26;SniTK$GME8x>LVK|$r3j=O~)gzQ#KAs&l zrTjN8GIAbwZvS z9fh*;Ib|w@eM_2(B-D@6B&Lz3v9QxiQ!zHHG?kR5=9fLr?`2%cens=Z8{)b)cnWtQ zo}cZjOjMbeBiB_X%FDzA9f=7rMOCe;S~KN(p54#V+HeYbdB~~^RT<{W^&3})qRWN4 zPN-@yZ?50C8kAfh)RjTif?0DtUoCj%6BE8Gx^4(i3%nNiOu3$Cffqg!^_%5lQS2mZYL- zl23+P5D+PWlgXGUgEdMs=8Q}JFZdU9ld_QyArKRWB}GJBppoPf<-5mh#a?CGNFm&B!!Yplh83^WzRz#g2x(e1DaqlX0j1Q z6fuGhkb`7^t8ff4G|mZWa_BQ*R+&J`CMS_gE-d=!>|n(kVF&^sJW-TLB365B@5nLIqw8$PQum)ugbfBDoA%`YAGFYkR ME8txX(^b literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__size/why3session.xml index 4914ff2d4..a27ca24c4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__size/why3session.xml @@ -7,18 +7,10 @@ - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5de1abfa89b20f9d204bfe57bc0bd3d2b4b6aaa6 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|E0|_Yr{Yc1>oJkqI(IPLSuL78rr>h70)`kJvg6TogAEh z--J+_vC!oq(0hDHg$?CH@rYedeGq!X3w&nN1*XD`2>wYM^Tu5DYt - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - + - - + + - + - + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fb5d76fad28c83812a395344a39261a3dd32e0e1 GIT binary patch literal 1591 zcmV-72FUpziwFP!00000|Lt2%ZyPrdz4KS})+=ZDeaOKVp$3BXQs}ziCn{8y6lrC| z|Gu-5?8vojI2P3?TV7uvsneiOUjZhd-K_`6x`W{Z2j zp7}-ZyKbFVzux^l6;nAyKk@TTK703@{idJto0lolNT<^J?4MowY#x>$R)yXb8zJ)}WT>%51nQ13&#j(Ap7sb*)G5fw zzYru9`7E8db?kk$$-T+F$^CyI_v0q&Yy})EoEnLbDEn@CpVK#Ko5xn&vwE|y9Kmczz?_uu)fK&$+OAxO67U^4vjr+VyxCV&El|L zU_T%2V_dlCcd9zB-6|yq=eBasYwm2gXGI61neG*uE;QGDRRM=R3fIh_z8Oqzn+G=! z{>eOeZwSaQ@iqwDsnPGvyXpFJea=tPR6Hq8U(6tytBt|cTEFt2`C9!3qp7^9y!9^Er19F%B)`9UYW!$D z8&z!=aWu4F+b-huz53XhLRc>6UHqb@=94 zk|xe3&e70*mEyd*w~BAr!5c2poT53!cxZ1<@gApmL|3{9|%%YjasAz9yaXGWN zdA;d)>lpma^=^6G)c)#1RkWk@&i(elsTW5zG3%%LoY1PEyJVjq(y7Yt&CBC}bxFB7 zbt)O&JeGX({M!wTC8I?#rhs=Ylvpgr5Vf-*2&uSIzrb&(8O1nnBXE>9E0vw$+^66b znp~946vf{cdS9*>lV$BZ7q(B!bFFL6T)364x&9psW+%B8|h1P9ksvSy~EGtV9PU1S_q! zj*Dm{mMDa?Ru%v?45t}a+7LlpNRB=lKpCv@Q4lpbbh-WQ~WDaF%R))($`v_cxE zlCi^#Oc;i1f~~O0mRa4pDl`GXNkuw3HYmtsGEp!vcY3-eoERt$;#lfLu}$q!Gfm zDkrz&%dik6u?n103J#?LkQNhY)KNz-c6nK5ilc>*abP}y8=^SpA<-0|aJj>B%tTER zR!SyA)dfL#2{Z-iNbf;dF$jz^8ImDU*a9lZL3*Sgi^e#r#Q@O{QNSWl!O_GZmL!QG zLu)OaE|CT%)ed literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__valid_element/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__valid_element/why3session.xml index 57d0c23c3..304d08e28 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__valid_element/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__valid_element/why3session.xml @@ -7,79 +7,63 @@ - + - + - + - - - - - - - - - - - - - - + + - - - - - - + + - + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__valid_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__enumeration_vector__valid_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8960e96fbcdb6ddaad17d45e4d004815c47c4f4d GIT binary patch literal 804 zcmV+<1Ka!`iwFP!00000|LvJgZ`(K!hVS|nd+&wAZvyKDdrwfQ#wu|G0i z;pV^(-MQ)bX4gIrhYz^pu00ID#ud_byBYWv_ne0T3l5*!ecjv-!+~#)JY^mRo{l%X z$2M-K;f{0L?uQ|7r^fef80c85JQV$IGq$0QyeWrX$&Kl_*$lhwD8l{8ky~8#aO%Co z4|w=%Xs^CLBK&oQZ}3f4V^$etT64O8`gQ$iCBuuyslODb`FEW9|B?FNmejve>f4gj z7s#pj-?qb^ci-v$G`GCr8y0(i4`Mdo+pDE~FH*ifAWntG&mXROpH=U!{H8a6&x zRzKV5-9N0`tlyt5@NkjP?r<}f-adH*3vibQ-1UjKx%>XH_x3U1g~o-(AG#S^eKx_P zY~gX?@fCNd3wsNDufpEg&c6@W=RVpCrwgY)&kpkGpOb~+h2qPg`0Unm0eJ!WqCl1{ z>%#29>_ss6XnuoRaq_(~KRD~3>GaE>%ZiixwRRA)3m zCatsqRcm2#DVS)`TVhjH5RvX&B}cVp56-%vXS2Yh0+K1@OB9jms&N_=scJoVvSdvS zP>UDutoTGCvK^t!kP#Imt+mCP5R(OCLWy26i^z417?Q%^e6Ccivq>w;F1wPeiah(| zJ8`MT$XtM|%~-w5S=%69RGUhj&4uTQymyj2QY!lhwI=JF2kWb0N=XKYD0Zl!1RJZS z5QEQ#OUWimi}6MF+{VO$l@fm_vk;VOE*W i7f%5SswjkLupkK&hH@bXG5a*DZ1*R9rxU38Apig&?Up0} literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__available_space/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__available_space/why3session.xml index f24a57fc8..1886e4ab6 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__available_space/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__available_space/why3session.xml @@ -3,36 +3,25 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4c54ac9152fc668acd91bead08878cf9655fed9a GIT binary patch literal 425 zcmV;a0apGWiwFP!00000|Lv8*Z`&Xk#qa(rcAq90Ou!s^$fa7P9w)Bo13o$=n|MH~ zJXnH1&9Uw1)KH6O@m0jxza;f^fOrdBOvQ4=$ zsNuf4D;mOU0s*(5=VJ}OFwqB`oVNRvcj-;+y3|zV^7nW#&Tl-4BCovkgTPBdhqkWm z(!b$Wy(PcS_y43n-JFZmghRlZgE zR^=;KdHaEX^|oxw6L8Jhgtqs;K`n5g!NdjNyX;$%SQ3!pL1udT;}wq={&Ulp8S`(F>Foy<~K#E<_l= TG0bvbMML)!5?bulX9)lR8u`&r literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__byte_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__byte_size/why3session.xml index 16aaf6f4f..0363bba00 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__byte_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__byte_size/why3session.xml @@ -7,32 +7,21 @@ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2007ea36b8e5d38f3670ff85d88dcafa7e8f3299 GIT binary patch literal 424 zcmV;Z0ayMXiwFP!00000|Lv7eYuqpp#qa(Uy_bMS|12MJ*vry|kW=whjHOX3@G2Wg z37cU|geAf;W-qjDlc5qj2br6dFQLWDGZi SY?$04lHGS0l-(7$3jhG*1J{oL literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__context/why3session.xml index aa3702dd4..e40db0320 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__context/why3session.xml @@ -3,42 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - - - + - - - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..dcc0b498f6e5cd32a9be323165f1480349ea559f GIT binary patch literal 698 zcmV;r0!95FiwFP!00000|LvIDYTPgohVT6pz3W9O=zM^tus5N30pE&|G}@Z3y<6K0 z$=g@XsdQsP*;or9-US=kqhB*J|HmMRcOA4%aEBga6JW$z-ZXFp?LNY|cRe1U$KV`9 za8K7h?QWeL@b?kBfX+2thrMfY7+{-+Vc(5-J36<6Va)NvVb_clT$88?Fh{5f9DJ7l0!x)}FF*ALt9e)RuI7D*=6$tuc;oI@ z`M()A@3>=_vM+T2GP^Uh)+Z;h3p+rUC!H=zI(;G1=~ATA7a^T4N;+MFbXA2hV4y;B z5~z$yGii~?kT_$)%EUg=AErvuMiUH+UUIKImB=}wjTiuFN+Ac4iZcy@80JZo#@K`g zx%bvmfuJq*Ifzx#1e<8mMj4@fFg_4eN=8EzprDfyuUHaRAp;9iDHUXv%BiKq619;q znS(@?mGgWVg$JWa3ej+772(+kmOxNBNLC~ZaYhMegcvJ>h{ - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9745bbe417db4938259717ae2ec4f18e01c04f83 GIT binary patch literal 2348 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 S;imdt0sB9f;3S3#iU0s<0da-^ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__equal/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__equal/why3session.xml index bf672244f..93e221220 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__equal/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__equal/why3session.xml @@ -3,92 +3,81 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1f9c929690f22766fddd6ab1c0c7c2193281c058 GIT binary patch literal 1162 zcmV;51a%RaYbyX!w*P+kT{V!{KhI*~0a% zj=P!$`n;h&u~gglyyTKmjh}eP_#Zh>%}r8Rbk((EQ(EfsFgZIVlmkqXf7Egx*Y9V@ zS#CRw9q|fGv@OMURWr2zY=;Z{?F`3dv!>Oz`&HWYFy6YA+aaw7hV#zSc5-hDe|`Ay zfjbEtxZrI7XBU5QRB^fN8t&-tn=^KirH`i!UF7w&Ip?k_L|pRZScc`iaZ8cg2iLS zyz(in=liuC?o`bH{V4zn2O(4*f>8C+x2mt*IFA9>8T+Md6T8fH?MNns|1w?himuJ3WXPXRg8z)S-(4ZKep_-{L4XBwDk zV5WihNdqi6Zw6)-m|0+Efh`Lx?r#ki_dggG$2&(@yq81D#mWD$nb~J%pXb@9s)Do_ zG!`vXMCAcxaRDSHYl1~Bet|#1RfsO8VzSP`x*YhfgOJwbpeT#zSV~lsy#bytDo9Yp z+mM_tK3k!^wyCg?e3_8J$nBP*$;Lx6pbMMBXmfH9ik+NNl~A@|&cRcRiAZ@W;K`(< zqD#t8KIuxS2$6E~D&ztp3$!J84;HjCPy!2?%4(wtP-W+}&m1KY8bE830;y24kbRk^ z6Px1%qH@+|pS4w#PzcJ!xyO5_=!#|l^AbME9*`2B_?MyfY?f@ z%90PrfD$G%m>Dg?g3;Db5rVE_Q6{;<`i+!931)LGF{dC&Ne*k0GF5cEMkAW& cq}%FE - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursor/why3session.xml index cf79ab7d0..82ffeae4e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursor/why3session.xml @@ -7,32 +7,20 @@ - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4c459aaab2bbe98426fb4bdf032904748f1c80c2 GIT binary patch literal 419 zcmV;U0bKqciwFP!00000|Lv7MkK7;-hI@WRy0m;6TwHO@D%(eH(Evk&VtXB6PuYJT ze3y-KcU!HCOJP|;GVd@vgLnrBml>wy?UFGh4;2S~OtHqtRN(Wfwe-X=0GpQj&xm5_?hWt}<2 zRrBJ_qE!m#X}Z8R7W-W0z+Z~1r**T9HI7i~yAnOUA9PK4i<4~xjVa$EW%rXlXS{{V zH=?c?(Kqds-vf*Lf&a;S#XcP45grEmhg@tVZzo*w&AlGj;RsiorTGbRg1NRWzvkwS z*TaF}wA70&-(f*gcPH*n+@1JAPOPtiKAwlv$Mu8#$=(~q-YEW`MnO~r${grUp=UA( z3dVR)nsM|HsQkpfD1tmf=lebYMy-%jN;{9eVN3)gy=Xy{NGV0vGs>~oQkl*;X(Tch zgi*9pv;}b@P0&3Et(4PXIs|8c1&64-k - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..da385902b710323fab484762c46731bbf7b98316 GIT binary patch literal 277 zcmV+w0qXuAiwFP!00000|Lsz-Zp0uA-T8`s0>luK;f5}!cCT)=955|XE=hr$dVgP< zsH)Vd>TuHu34#6W_xxlcPl&kRDU2V8ncr8Q93#eQ;)G|;nO^HRL>@i5HRU-WUT9ov za7pYbwq1Uv1I=lObfhsey`+`ta8geGib$un=NG=rn0TSY?pwk?gycenYgJyxSkTAp zQr;Au)bR!+vXc1gMCa&giwmVlQ`u7c#QX3+76?8s<%;=@78d31+8*0 b80{JQAhkD*2|+e&E2t5l%~4TajsySz69a}V literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursors/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursors/why3session.xml index 2def7200f..1fa84bc02 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursors/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursors/why3session.xml @@ -7,27 +7,27 @@ - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..661e0b61a7b1c16fd0916ef7f4f586691034880c GIT binary patch literal 343 zcmV-d0jT~TiwFP!00000|J9I7ZX+QSMdz%dmjFfa8zhn^R%!#DqF3*eAeGA%z*4gN z;6diCo>(m;B*eMz9_S0a-~|1aD<4o9a|VL^yI0x1a&G*2=N&ocvhQ5;m0N@Nag@Rv zWxUsRs{`xMd8FF0m7b|ItnH%D3%tU{`+NTYDRn>_w2pd_MHF9;{+-(g9IWKIDnQ>m zTnpx-G8G*8i&=nJ;J)?IR(gRgLu>cpTyFctz!|p2=jUqo|G`o9(_{Vf7oX(RpZf%r zaJGK(fyo&*WW+~9V$s5?WflBm-n?kPY4x-7VRG8Ws3#7A#?64VB4_7h1dxc_ zY)ODuLd&Ze(-YYNO)8Bxn?fQD!I{XCoPUf&B!hN^0a-PBKTSF~hs@wt9XXCjaKO&2 pF+J+$zjKN%Ix&f2^eJJmE3#*q1=AFbNira(egG~&b3`lz005ftsNw(s literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_first/why3session.xml index cfa801c61..768b32475 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_first/why3session.xml @@ -3,42 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..abf2d4e245b24d517659e795f4a4ddc0fd23a9f6 GIT binary patch literal 432 zcmV;h0Z;xPiwFP!00000|K(OqZ`>ddz57@6-V0yG_|U^%R$VE|sqz&KFr=2etP5!>Gu43+C8iP#~`UrW>jIU%|7?aJA?hw8X@)b99vGSGZ zK@4)giLLpyulZ(n*sT2LjQw7v{Bvi=CI1^Wi4VS&V|?p2vHOoN(GS#ZK3TKb)m`20 zFQJE@^Fl~zqBgAUrQy&j9TYgGwF%-2|K2uCfMGEz=K;0rqmf=Klu}5Dyq7(J*vmk? zL#{-N(FCb|2qrisC_g1+!n6xWG{hoBXca}btrO^hIq;&BM#WykQj=_y0}UNS42&Bc axHg^W1V$E}>R68iQq6CQ{lT6-3jhFyz|jf- literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_last/why3session.xml index ee3a923f5..13811825c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_last/why3session.xml @@ -3,45 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..56e9e3f4a761831e120a701356840ba73942f3de GIT binary patch literal 721 zcmV;?0xta@iwFP!00000|Ls=EZrd;rz3VG_Zcu=`q=O6iQnWyhg|5Vq93}*0*^%fV z>DPC>)=AYCPGTb|auFo*Y4-QXd*_Ir+a+u>bqR3q1r!zd<=*!q~j0`j%>^Dd;E=3T=Z zw%(fVtt@&B=y4e4{eJgmZ{qUM7j2&-*#`-(VLQ94)O1RoCCGEz;{w8RHoJ$9kjZl1 zE^_G6TMGf~?%Buo&e{QQme_f;1n#i6Gs+sS=rbm4gAKUAE?}1}xnI(9i`^AfZ~aA9 zhDDq520J{_gtOm=H}cw|&G%5z^)-J};(*iD7RGs8canKLCp z;q!-0-zLT1c2aEmJ2e_T$_rxMI^H4uz}3I6f${tp%8Nf!KK~C=wU6o0^XCZ=B(>mL zr2d1)y`ueU=Wc2GH|aZ14u3dL-bME)YV)n=vbQX{G|r=<%igl+u96xRUGZLHgep2^}}J6jm?W73|Wjl5AOpT85ueWokRDWl&` z&XcXj)E`VqNQ3VOYUuhlcl>o|ZEfT}ba-O%&6x8?XO=v}nf2TjkDh}s(cE`!c%AHe z*M<{l!}RD&?z?1+NJb%R$v|+7JSrnO3$k)(OeJa74AkZW|5_Ebi82^oc~X=LrK(NI zoGJlBiL#WOK&+?*Mjv&WU_FcF<(5+p-iyGp6(%PN*85=a%U3N?dLXcx67kP)Tx4rP#K?Q{tQ(gg!& zxDKY45}|fd)JTpP6J-gZ){;P`U{WxtC8r-F)69DjqemaT^r(Xf1S*T4dU%b^6%+sf DnAc%w literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_size/why3session.xml index c64b2d5c9..54205f112 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_size/why3session.xml @@ -3,42 +3,31 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9afd050b6ebfef544ffb048e9e14ea39192f38ec GIT binary patch literal 485 zcmVA#advT@wU%*X8S?N5(vp7|CcTd|%g z+``b4kLAQ=<42MDOHqa24pedVz~^{v)u$zbGkbkX@F~-3&a^zQ7tXX?ip?q0ay_f} znMAuRl{X_=;*le9%oo`X9Ix}uLlOUB3Qm?D#c83skS|sk%eKI0EsS^B&A - + - - - - + + + + - + - - + + - - + + - + - - + + - - - - - - + + - - + + - - + + - + - - - + + - - + + - + - - + + - - - - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0283fa728f28fc7d4edb4ebc1714122fc442124e GIT binary patch literal 1851 zcmV-B2gLXviwFP!00000|LvPiZ`(!_$M5_U&#i}|z|OueP#4f4!DGPab18Tw_O&4@ zONvAX@$>0ByP{+}rV`tcRJ+-OWy(7o&d$#N=UIvxuB;zEU)pfHu-Cos`o$-^?(Jf* zX&&q!>ziob+xaGL5A(}}Eo2{)#!b9l4Y%FqgI&dDxcuE-ShrlxyZF(rqwhK!Y`1$| zr}^iu+r*DIap7Z!?iX?0UB}JF{)un>axuiuL)W>Rl;RrC*sSLL(4{`k!=@$phsDi& z-mR8B8m`ObKiZ2H%F&hmU^nBbEjjU|ahCV4#>N23B`;b!I=rweJABB~3jNS87p-V{ z8JgkHCp+&$w_3*#Jtkne-j9CVyC@#7a>)Pt{cfK97|qth0y9?P%oE$${6Ncamjzsg zo!7b)XJ3k8BFTJI#&nW*qczDdtarfJ9;Pj?!3IO=eIFOY7*#iqi$8}C`=mWwkq7zQ z4c$#?AIrHW#qZN}oYcgX`}JlxaP3@8WxO2ry&aa_I<9QExxT)&KaX$W*>zItq4PIu zEZ(l0TMXb~si4*H^6J|<-hAN`u*|jr)9(!Up7hQWcS}6r+P>xJ$I5xJ_idT(e20GH z*Be~Wi|l;%xU5GEep%9}f|85kEl2iG2_BxKc={E^|8`+9ntpEGJYsUJk45*}X>R)e zm$#Jwl>q;E^pyaoA;7(aZc|xa-Az9q`b9U~uHpt8vfBZFt%kh%+vcmo8QjEeF&w$k z8@CL3f*z)bQ}liaIHC-1kA6YK++VN9Xq#Sp@zu4@{@*AT;S>rz0~Svd_nEMG%IJ@R z#qFN4>aDgRwGH_}+mM2QR@!C4ix2jC8SF1!m*2Urz4m%4Jb56zWl9@dggk|qOS%(ha=q?R0JJB5cUi<^q~XfNbSh^vU}witHLE9S3CeDNr?8oy&v zSyNe4S@Q~6b3O{pYR^$QP&x2o4$L0y{6Uqi|LpNS!7{SFDL8xd@xg9z{QRJ4EF+16 z1)^|+;Dk^{C+`iHl4(b{{}23^^2Q4z1EWG|7MWEtaqa|--bqW6OaiS)10jh(jH4k@ z&Xc7+BnXxoBNNdkWLJ&Qh6)f)EakSd*mZ6u5*$z&WF-Rna(R zBlXg0r_qQviaFsZhLMQzhDqM>flV;vwtV~)PanjrhA*n?p z*#zOVRV+DUwRC|QN<$Px1xPk%PtZs;!URe==0I!C38UJwAVM$!qE3WMG|~-qIxC>@9Zrz`^nR9Wi@(+rDRGwz}&RFf3zFq)|eu$O8+E7~y4! zUNk&K&Vo-#3ne*l!WjuN2$W+|z;cCxY;Zr$OI-b!GPhJ24^Cp$yTay1TQX} zR8kpff>j)xzyqH`j9{{EKsOPKpBo#a!eCGwR_l-gPFJd+fkU=3O^}>>O*|^e5J6HT zo*OJ$ZJ5(CW?z&vilWp669ID(oN^Xl099fFW*e6+TR{_0-<~LrLbhHh1u?jU#VkOI ppjgfqrD)}Nj2f>(oJi4l0jMsOl(K~2jItGL{svCXszj_)001fom3jaG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_first/why3session.xml index adb83ffa3..d55a90a81 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3dbd66ac12eed1db3e58de9ae2889356673c7025 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(Ix}K?LNkveaw7Ky!?DkeSJ+f8yI_<8k_qY Z8yOm#ZV55?VxZtB$WRgP9~KET0RVPU7P$Zb literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_last/why3session.xml index d8bc48ec3..5ba154c22 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d8ad8d4cd171be363db14aff17316bb3d1fce93d GIT binary patch literal 72 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(Y^wpSPchznQ0rhl!`JsiCQ#nTdxN - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8f9988303ceb9db94afe8a49ff6d657d26f2c9f4 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|LvAdPuwsNhVT9rz4cHb`D6Ss((WNWR7FCZs=Y>Idkm45 zU9=mZ^w)Q?2mxAXg#?149uish8_)YbNo*g}yriNJsa~(>Y$*M(x}?oOtC7~N(T~jq z(>Gdf`KCGD9?=@AG}5DL#b@W^b-z8Ob5_T<)n-(OOFE!0G=3g#YRP~piI%)N8Bcff zy`rf*BlD-66lc0O_esO5-_YuW>1EMh6mQ2c^G@7hLy%OaDhM{hPee z*?g*Yw38f7vmPF|e>{&Eg%1?yp@D^dP<~-PP}2G1QN`T{3i;6aE@N;XC*Q@AXXA0vd@>rNV&HCh*R0?sM>04X7%qxi{u zH=s(>+QjOCQzQeaGG+4B1}>xlji|J8hz_}0Z!)3gdnMmXl-f zIcRP|u2nQONE#P>wl##T9qOVh>fq5t*u5B|5*XKV3xYEl$E<-gQFAs1mxAX>WmP3K f$fl79Y7@&4xjD@m17~n;QaSY-tPMih;tl`+^3+jl literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__offset/why3session.xml index df77da6f4..379a8358d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a74aa78c8436cac4e98d1f7a1f9661f75b4af92a GIT binary patch literal 235 zcmVUtqOOx)Ijf>i?ZAcskchzr5kh0z>I%lvi$@71MjdBXyf!Z*Ed`cP-W5 z@;sfcANAw!S}tMC&PZvIbp|sT1<$-A591_xogdV*5zz;g$#eEmQ)DEK90Nj1TKi7g l2FV+t - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..864541458c495179c7a599b425b4db5e3c2fa05b GIT binary patch literal 393 zcmV;40e1c$iwFP!00000|J9VsZX+QOMfd#`^9dC1US#1-G?B6#d5a1tl9t-I2XN&4 z{ot{)h!sU~6i3PiL2;|#9v*F4J*6)5)Q&6FgM$Efc!PbdDISOaEnH;xa*L4`%8_z=F*#FyXpgTf z!~Ml}-{5!V_(~w*t4N;m*Zh=wgKg^yEuTd3F6VPJu;#bdU=CM;&d;F3kEOo)K`*GE z<|nrMeSg|}w_?>+?V_78c$U0IN!}VOv_%^zFc8)lsX3G47yMQOnvhhIV3n1IQBsk4 z10$0h$5BD*BK9$nAGr9oTd~8L literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload/why3session.xml new file mode 100644 index 000000000..0dd2380ab --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload/why3session.xml @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2f00c1517573d04f94f3e52b3c9ea8d5ecac8eb3 GIT binary patch literal 1714 zcmV;j22J@NiwFP!00000|LvPgZ`()`fbaYjd!E4p{eA%BgD$}sFeaA)uSE4LAs|Z% zMFsKx`mH7@S+b?Xi6h5y`XW)yVzZuK7n^o}1HS)q4dHG9x2psI1C!)1Ieeau{2Yyi*4&Hhc+nT;Ri|6RCcioRC)*NH<`m`>=Df%P|5GSnehCFE zIZA=Cq@D)>JTs~#Xkgntpue_D?*y0GedbQB z2b(=y*B(l3H$x7^*u{W}j%xEkZGK3mY4B3X^w6|@G#!{$b~)b+oT`KO3^irbyUXdH zy{>9XkAMNWF+Oli0KxBf*I!-f=%Wk18#wzUIfa`CGQSmU-Y{zlYF-L8!@oY&l((%X z?RMI*xxKxEKcL6!`)9sY4RIAw??u0TH93!q5B>SuorSn(|Z?2jPSu%o0hA4$c710KuvdTp~6L@uvx)B1&87L*RG^6;xzV z8kd}7#4@5#NK{Pe;JwGO04#DR2&cv*u-<4$E-NmpD1|44P;0ocLPa9D)51r|a3Bhe zLaGv4k>E6E6jftRC@yp`luMWIF93yfrL+VON;*kMvYsf$Ara*vO1z#{d9W zJ2Ff0iYiJIk33i}jX>a|0Sa@)OP@Fs+3QqfKTyw8qA^$!l~IW?8Xr94EI-$du(6BPkHfFf=3#dg;nh1rZWZVGKjr zl#*itl*22Gl7lBqWvvNZr^Kv6%_t8EQyi_7(u1&W@Pw@*fb-GBgu&oOvZQ@bS_tP% z$gaqVOe%C1#c*4Ox6y*5UxYFqQ!jAJh4Wd8R?IjBmKaVw=CQ^~0165N!Z}*)hWcWa zHc~_-wM>rSDJQ8Bk(me@%S-a?RmPt2Swo5Gn59JZf1E4< Io?le}049Y(v;Y7A literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload__2/why3session.xml new file mode 100644 index 000000000..bed30b096 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload__2/why3session.xml @@ -0,0 +1,160 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__get_payload__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..248714a2a221e52e7b7f60854a839f08cf091d51 GIT binary patch literal 3138 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize/why3session.xml index 32c92db35..0bf0edd13 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize/why3session.xml @@ -3,183 +3,168 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6c40c2f6d40c0e0516bc957e1797388a60158be1 GIT binary patch literal 1938 zcmV;D2W|KtiwFP!00000|Lt7cZW}ogeebWBw*_`E0E@RGf$;)YH2LbL`_?W$(M@h>kz?CZ&9GgR+1J%$xSh_r>AdZ}-Q;E4hHoAJx#<>ddviUV zcX`o%q1kQbmy6Bn`s8_{=_-l&br&dHU(ee7`MXj4a(+9Tt>gVgXB0c0p1L|qyq+(+ z1x@E1eWQ{ch{98lz7$b-4y4_$SoCqUGr_y*rv1~qB>35MGoOFaEYCl7pC&SjV*!8h zj*;(1oZe2Mf6|PW9YZQXqjt(_Jl{h4yu!8@zJ1!~PoVsc@$E)5Hr4j%g8wp*U|^Kq z#pZ)^Y!@{Dm?!vQg~}+R?Uou5dW&s`qu=SD^v47vL>JxpkNNVDU6p;H?z*k)v|-xu z=#;-s@c)oScp;7QfIZ9z`s;%J0FeJcWxBXSXyoAy#6L3eE|_>S^|J|x6(_#u1a@)4 zV;&`?XLo}YKa&5B$lt%xQ46Q6g{`_rs!yBhvkKfDUQFQz6(i{X!%OUvzcel>q%KgDUzM%x%+y23hb~)PRtJo#H*e~Tf^ULEnhEx|v=tU`q@u7z_ zp*JGA-tfXtzCz1qY?M`5EMy!Hu4GyJ}F1+X~{yBKdzjc#$u zZZV(%Y-wq1|FQkY_J8;7e@R0az&+bP0(y8KeW$3?@Rb2>=eZ%;b*HTyPS#_-GMo%X zV;Rs`hVX!m+oanW4K1qEFo1WxuNV#B7c_t;?x>H40prcT@i5?24+HivfC0Pc_?v`5 z*T&cQT646;*Bo*2HP3GHJ$$1(?*{qR$4`HwG8o9)KT;WDBX+zWsT={=rcvaQ7Qr}8 zptY1G+Uy8O#Nup1@f-YGnFgc=gF=R4lsDGKpuLbzxhSLoC_G9uz*mS+WYNJCmz^O9 zk_eNu#T5rUNH$7kU4oRLEN1OMLm(9BAz~!3vCg+&q-an}qk<1YIVvey=}{Lz=OM*Z zGuKVlDUpR#RLKyH$QFa86r(6b2}nH1>=$V-2y)aap*PZKZ-ulmX=xLOF49m8jtAK$ zNmAgAFezeE4z)#LGWZ;o4Kmc~aKA{eJe|s37g0>`u0Sw4CQ?aT5gn=ovU2AJoNl;C ztgWEP*Z)H@3ulDl%tkOaDgXw!WTiV^rN7mAd4-A=e59!@* z(%y4c*=mP%RBf4nBsp_NjI$S7WY#@T?W`j$DmS1T?^8)SY1 zk}-tRC9eT1ua=D<`#vw%IHr(`l-!Xh0}4u7l~h0o?k;Eg8GU1wc15#AX_lUqR;gf; z!bA`w7BbZqMB@-qQSzQsiKsZJHXJnaKkZzucu7VT6+*E(W*@Y2#s?-I9kBzr5KKQx zHYr;ntVmg=>^Oofir?{^UPKOBok6N52+Qs%gYq0ep=M%87$U_8=j3XQQa7R45CJ`p z<3?g$Sb)gOtih<91z$&*MwDQq$dQAm#DXl^JIe;O9$Wqi>{hb%#f#&t>t#l(nR5tGa*Oox#ChJRuwAMWL|L$_l|HZ6D^&@ YSV(%ug`h9GU*&Z3Klp7VPx# literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize__2/why3session.xml index f3e203085..7ef3b70c0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize__2/why3session.xml @@ -3,200 +3,185 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..415c828e987675c861c8b1ee146b30c734b00c0b GIT binary patch literal 2526 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 - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - + - + - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..31bd15421bea02f2624515f2ed27261cea192674 GIT binary patch literal 2796 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize_payload_private/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize_payload_private/why3session.xml index e63ad8010..b22365bbf 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize_payload_private/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize_payload_private/why3session.xml @@ -3,301 +3,189 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - + - + - - - + + - - - + + - - + + - - - - - - - - - + + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize_payload_private/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialize_payload_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a071a8a038c04b7a5b94d74670b1e0fdcd46d57d GIT binary patch literal 3499 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 ZN?yd2b07|(wUkS;=KtGSlYX($004B-yQcsE literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialized/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialized/why3session.xml index 75c904b58..8e97f88e9 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialized/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialized/why3session.xml @@ -7,34 +7,26 @@ - + - + - - - - - - + + - - + + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..26241150020374e3d54575149a3b01f3aa6931d1 GIT binary patch literal 669 zcmV;O0%H9iiwFP!00000|LvAbPvbBU$M5+RdtV{>o%+Bb2hbv+-ODOhYy1LBX<8B& z!M9&KeGs5LMCnQqT%x!c|K~sB@lTBxa0+puI=6(*8KuC2+CDqq+$q(&o0V&gQ!2Er z>(t!!JzS-wS+vpJMYa2-fj*{v{jv#B`QRGcgNb)FK7Yu9Kc2>iZlrHRZ@RTUO8WM` zg?TV(^DT4%+L*t<-)`mL9Gc#(U-P4I^JTnO{WUCIk$l}k6Rc`eikcccgk0v$$#YGH zWp=-Wc%7}-5W}La*(S2u2`oEjok^w_-R|qnPGV5}^E<6EoYctR%dqkFkUoc`jk}O9 zcr>X&W@b=sJqux5yHivqZS#{}b)ZSKHx%lzo*TVf1Oq7ZL7ZS!o1G;fZ6^zRQLno>uf{dS4M+F%>dy8Xqdyci7JjZ4eCBbac94lh=jeu_i zd?Vn?BA_TF6B@V`r6k5!A|$3lcup{vAgL^W;9sK9)N1FXz)~9xV7y=g5yPl()L7|L z5Gp`>Es54dV8Gl_Z%WI(rXU&PjzJ0{g|~)j!H{QMV$jk_;wkc2ASVpyoQ@W=l7SP_ z5YM!i6eA)L!5U$TsK(5uAXZR;7$=4ZP6Pt%8Acp= - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a740dcc72882bdfd864fc9bf58b36e2992bb5398 GIT binary patch literal 296 zcmV+@0oVQ?iwFP!00000|J9MZZbC5(hW9*0A0f%fbzoqriiA2#i=;j63&?~oU~rPn}knCrzYN0^bo z29B^ezovxc(XxZhf!(stM)+yU4o^@pI0q5jJ(iTu&MkOaaSZ61`H000xGeD9$}o); z&(+<>H+0T@b*aZ3mji9WxaREUsc&HUGdw-4_y0CK(C5#rue|&AWgfGw&!0!6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__present/why3session.xml index f7c9d9813..3a97057b2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__present/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__present/why3session.xml @@ -7,25 +7,17 @@ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..77b63344301fb16463433030ced2b0ce423b178f GIT binary patch literal 376 zcmV-;0f+t{iwFP!00000|Ls-5YQr!Lz2__T3AU3a@u7!a#s-C5My^Jd<;~!xsqK{Z z@8@<~VWXFhWze#V5a!8GlHbE=2``i&5Gn-*)MpIV@05zP8L3B7%Jn@3wW1g^UMXDn ziFPR`V~Fbzb4eV$OUgR(CIY4%SZ^M|?0Z-_%=KFc4*GOBhUYL6+=Gwwo*u#(EI;0J z4qVV`NP87uVW0voX#CjUN7qVuh|)K&bWvn zb`1H`!~|?}nq`^S7e-8D0I#;-o$1(>>gneivMzjzXkrEZ&a)mg|BZupqATzJ+yH!X z2Ta89Z-E=Nz~V~3l3R7sB3-GM3J$Z1lc+&z$%KJMSCSiSv=rD_UEcABs<6@^U@fUd ztPP*ZT!4~GDM&J$i40;zX$9!E7FLvuQ^hnfC@ZKLfo?c&Ge{JG#0;3SMIzpkB`KRm WHv+6>SfR<}P - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..93112487c54f01adefa7b11669ead7db94d93c2b GIT binary patch literal 1161 zcmV;41a|u$iwFP!00000|Lt1KZrer_-SaED>!L6)ciywe!W*FmvMjhI?z|kLlI)Ol z5clhQN!hM!D~@1|Y`LKplr+3LysvX+IMi@~@pg@?HZ<+}8+I+O2W*-yUH`uNyM~(K zU)@c@1upxv`8Xaf@KY^nSd8zyW{X9YR@cLA(|^J1R1GwY!_^3aT?$Quks$AmU0!}~ znm&EKN$Zdry6QT0%_{XhUeecawI0&FAyi4&&Y!i3j@-n*!_ z;P~s|?wpeo+86BaoPJ)ELX~?!x$aVI0}iPM_W1#cKJ?eic4%VThpr#7-NRUJ(=twD z7URuob-Ovj=8gZCkJ<&ko$cBNQ6^n4^vU6~8Z}&Sp9LU;&G)n9Cz<8go&W zCY+a9A>O;UVexpkwrpd~S>V$>+4nScUM;t zr;fWD9^DOgb8d>RS<{amhj?%#k4Q<=(pkZvzD|W{hnAfGCym9K{GR8-J>9Qs%c4rSrQEI@B2K(JGR4w(681^Orf7L^qxOb?N;pkitoO9{4B_qC{kwhgiVFXIPV&pVplaZ>JgKWIf zCi{>D2bsaBC^<@=>B^dnbd|J6kRm1J16rFx@HSI^wK5?)%gM-8mYIZx;t@exE2Ynj z2Tw_JpjmQ?jBI5sH#})2l4r(6x;mpMHD)x%F*Zi$_A|=CDlTKrf!UaBM3K1+PGlEj z6k3iIW|a|HIOoAwmweDcX6C_rm5dWI!3YIV$uxpchtSlbbPAD$2u`LHg9%)Xg#jub zH4mYfoGAy{L>F~NF0DYRsa9^Z5|v9DD0jx#=+SAJbsYVZfs%%>?l;q~Oz&QW_i;*t+ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset__2/why3session.xml new file mode 100644 index 000000000..14f33dde9 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset__2/why3session.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a458a0126c5216b36b114b41061ba49664dcfb01 GIT binary patch literal 1757 zcmV<31|s<%iwFP!00000|LvShZ`()`fbaYjd)vbxKv(tqkb^JA4iL;~p)1jk>I|`x ztWdNO@2}q?Wh=5HC5}bU+MYHHJ=n$S>Uw-^l1=>)J|>sM?;+o=!>UVdx4sE|7uG{q zhV2mk-Ct9<49hL;K8`O(gdvo!f4Vq^w(V*2&((hxun;Hq`nZq_xE$YcAucZ)T5X2g zcKc`8P&0g*%;Ux|T#c$iPpNG~X2o}}eOZ2O+bw;$rgfs0J6}`Zu4uarpZROLS`YMf zXxn&Q3O9`E*cf&B7F@x@pE{Xw{F6R5!A{+n@LR~;P57|T2{=LE;(NVLU#*_O4Ozrb~4B+VDvq$`aF=A?efg}TQ zJb*ol)8_c8`I|NHd~@!c;*VK@p$C833O6->vjU%Q#l1J&@z8)fZH1kh=T8%R!W4Vj z6f-ryK$4it7f`C_RC++8k70F{CjgC;_KV&3X79^QPq|BBparN;dzA2p?Pl2xZSJ|Zh6M8%2|68S{l0ssNUBJxNO}uMItCAf z9~JLh={c7#Q7ph8!-<>WlzgDorXByn=g&QT=I?E$(t;7ljAhIn;0eX<{O=*6{4|4m zxXpzRJJAFu@Ogl5_&x-16yWevg5zU^%aaJl2M9lI!x4zXPbrR%F)ruA_!*3N0gRt- z&1*Wdovv<%H1G~#82YJoJM^JjQ+{-PqjIEjq;llFaikfqK#H?xVU;44B9$Us~gJuXpTiAr*#TPBKUl> z@3%}|6bHF;pmC>bdX3lJa_H9WaJ!)`5BhfCx6Q~XHu!LL%>r>ZwqMnAw|{#Rme(|D zdG^rKb-%spw+nIk>3pdC-VL+N%`WCS&$}2dhI)*6+s6oe@-bq!_VF(%{95<#yzY<8 z3TolM*23RU4#!36`5ru-_PNLbnWYNt`1g(XR0~J~+%} z(tOSu9}w6rft_f0zunwFJn%70<7?Nv*TX@cJ(dUT(4BQTSf_LnBAtLjvvPBrROt)H; zUi0;`~sqN3L*0HZ11 zC&EmESV%Tnmt>T%f>Z(_6=|^O$;*_3&}r;WHK9lnkhSta7M!voLL{_V3nf(uETo?% z6f+vHz>-oDD61TON>K-65>dplJJUFd$|6P*UPDAKSZ!4?xmX20ddWhzu_?%4d8|TP zFC#`vLTBp=L>7{UgoA3lbe@HLlR-ErnJhU#;iE_;E14#T zco)X*Ks-^(a6qKuuR@q8eReV^0O`FYos27^6f~v~qOn=%KqgSpMn@ZxH0YIL^`jIv zMJ8j|LBeDyJa_{->6}YUG32aAhk_iXv@J;_&NZpAxFpymP79D40Ng008doIpe{xD> zX^6AJv0#WEfk!1KUAi$mMB^;78(oavqf}tL&)%VtGECN+MsNz10w{At(#2&-F{08W zIM5o#7=nGG6oMKvmlG5?O#)jSUC9!7oCckqJmH$ayQC0|(yA0)baqZTk|BAaw2YHo zzOi0MXOiLMvkAaENJZr0izcaQSA<+&GE3Y(FZ}EQcMN| - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cd5928704f89541df8800734ca585d67c46f5f8a GIT binary patch literal 3780 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 - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - + + - - + + - + - - + + - - - - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b4b38144847aca3c60004f0ff63480f7e8f402ae GIT binary patch literal 4513 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 - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__buffer_last/why3session.xml index 3b68f57d6..bc40da28e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__insert/why3session.xml index 5b89096bb..2b7edd9ce 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_length/why3session.xml index ea0e46296..e64e6cc4b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_length/why3session.xml @@ -3,255 +3,224 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..63d9c02ab2ca68a5c2ea4efb1714fc4db14a6b55 GIT binary patch literal 4107 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 vF&KuLTA_2hf{ZC&L}vxB!$JAcU}ka$V*fj literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload/why3session.xml index ddf921855..7152b5a62 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload/why3session.xml @@ -3,330 +3,275 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - + + - - - + + - - + + - - - - - - + + - + - - + + - + - + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - + + - + - - + + - + - + + + + - + - - + + - + + + + + + + - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..63ff63202e33c6e1c99afa02c3e171e3230e0e3b GIT binary patch literal 4961 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 IGT2!E17!b;IRF3v literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_first/why3session.xml index 18e9734a3..1b48d5cc6 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_last/why3session.xml index 2075bb331..58bbe3259 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload_empty/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload_empty/why3session.xml index 1221beea7..e6799744b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload_empty/why3session.xml @@ -3,252 +3,217 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__set_payload_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..95adec2e8a24a19e321e17c1a2a4edba21f4f994 GIT binary patch literal 4017 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 XMvuM+;-D`+q-gVh<6#MaOYr~zXJh7H literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__structural_valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__structural_valid_message/why3session.xml deleted file mode 100644 index 278d32ca8..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__structural_valid_message/why3session.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__successor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__successor/why3session.xml deleted file mode 100644 index 1339f1056..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__successor/why3session.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__sufficient_buffer_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__sufficient_buffer_length/why3session.xml index 8fe3c24d4..b02559225 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__sufficient_buffer_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__sufficient_buffer_length/why3session.xml @@ -3,52 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fdb031b3b5c650da2074743b6caea7b64f1f2d72 GIT binary patch literal 759 zcmVd(MUfmbWCnZJ{Ds7kTRVvj81N$4)YI|t?%qAddvx*n9z)~r(7&`eshzFcC+uo$ecZfl={atePjP_%@BA9Dh_l{!IMW06wwi}P-DZnZam`Edo@>eL+OZnr)OIvO zKc7rq@H@s7Kdu%5J95^dN4tJ@p?S8pr^h+9j%)(A)Y(ZY68=tqLrsmho@Uf~YNJgg z=4rX1_IE1w;$Mo=&zd?evHb_PaPuy;g&hqE2^SBJn>sP3WZ6~dek&+1!GY5$Z_M$O z-erdPC+WXx@e>^)(TBH1UmXh0`%vuWy+BGns*a?91>e5@L&LXUEMYiA!+c*2tFjo; zu*56;v99Ka^V(n^H%aw%@4CLsS4j$W*DofBgRujtZaQdD#_1h`C}%k;TS zpZ%xL_JspV7`t+OR{RTrZ>fLSpftCGPIbK{(yLF(b6ux5LuaMNBh&{bmc+<@%=zT7o17wcrL&*O`HK@1sptp-!z-3=w literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__take_buffer/why3session.xml index 20d299d7c..39deeb3e8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__take_buffer/why3session.xml @@ -3,130 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..40a126e8e38724501fc35f7c79a05532338ea09a GIT binary patch literal 1429 zcmV;G1#0>qiwFP!00000|Lt5&Z{s!)z3W%>)+>kKJnSKtpaB-`rSMf4lEbc1$MM?A zV)O4ilI^V1B-p3nvY}+-he!c#Cre=C3@e&ss+P(Huo|^~v6JZ83v9*0P?bFQ8;IbdhOk7?zbiL~C z+RYbSQPc6q_ysp@ye);+KOEV^y*2`Pa|o}9;7Ol8%|J2OX0@1iZJE;|Zx|KVl-d?E zf3tgCm&JEBqp!ELOw_U~OIo+rwAtWa{AapZcJ#e#?>|}Kren|cZXN<|p@!FZJ70A3 zW!v4YXw$awuH#|Vtr>sQE^il$c6Bpn(g1H&H~Fl(4YF0~Ug=)x{t@W@xE0_I;4Q?wzWGM^ z2Q%G1n&V0Cb}2rVU!VqMvm-<&hZ+Mjf`V<4^wAo2S!KJ*_Wvi_O;-t730Vm_8A49B zk81AQk=2^=JYmPB;y)kkO`MD(1N#mu{rCa}RdsJFx(8MG-l6dAHWOeroe~%QQ1B?tz11ruAVPdKO|G9*8WYub=Wi0jHyOdwI7*CM5Fc*mAGe5 z-1Ft_yQ1xQ&BLi(q5Us@ka92N68 zk0k~Hh&MNjmcBl|$NzUJpRFLguY0(v2oq9-^AUt*^ky4(qdrT~sG3nVe1VBefN^pO{QQRVJ!TJd%n16N)ZU<7x+!8#@i&c z71;olKx~$!1d(;3WE4ipR^nww+Qn$1(N20tHV7;vu|z>WSyz&~FF9Mt^HhL-8NHIISL# zI0+yFx#B=lFeD9v4d^o)`6dxV$snR8vfa ziD0vHSy6vE5HEuw(>sdJLCLB(!)X$vl#)7l%+%KbKw}N#2F#GMjV_sxffzz?$zYNR zdn@@;ER42z0F@y`N=4gbMPbikvPz@xt<(#xkVJ~wOOPsuAU!X%@tGu$_0G7y^guTx ztj)$-uA`8h^5hf)7cya6UA>iQC_0Uxj260JGA>$msEYybq0v&Z#U)%*7ZkFk>)Cqg2dVI?R10q+q{t0k(1?g~HY8vq_4Q(fC7XW$e^`Ay=vx2)ib=aC literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_context/why3session.xml new file mode 100644 index 000000000..96f1d712a --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_context/why3session.xml @@ -0,0 +1,122 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7aadd9b9771c8e0d83962709cc5293c490daa0f9 GIT binary patch literal 2150 zcmV-s2$}aEiwFP!00000|LvShZ{s);$M5TeSR4+sP!Y?nx)S*s@hB7K`=&iIQyg*O2b#aNEVUn}2~-2lF1N{ZH*>-H_H_!jFi#EYQOjM-o?#H3%~!i&*eT@ zmxI}v)**i85chT9e$IiTATGqWb@;CgdrB}DF`tVpOxs7QEsNI2)5qC8yDR47y^R4BYJC~OpZxCA~8b@zeq z1)aKeT&?LVSmd%Z@&{T!?BXS<0oFKG6)+Vr6)>+7F#Cx?RclpiRqHEP>vx_GJQl=o zr7%nv)+DJ1dnzv~FDfs7c3zy`CYZV?9zN$XQ+-ZeOSqpcU`vMc&owCPzjS1JdpDcf z=uQs#0raq2dKen6=hB0p^#2k*9>2fx`GN&GJQ|9l=Zz0d&hFay9}i7tEX0k7CNmo2 zMn{twnRMf$X}kzG{+j;gp>C&q_uRE?cE`HEIlJT_m%u+SA?b?LGV*`nI6q zrNuYQN)j${o^al`q_ev{4~9<4l+kIxs!QzuCAoHJxYuk8xvA92d% z4g6!uhq*t!L+ZYiFL0+b6;n%Ce4t)dvB$7mNUBObp@=7#W!Sda~(rok(<>p95 zK}ErP z$Siwl8;`+E{A4g2E#AKpX5)0?>3>I8l2npZlDuh>T>3xs?zemu0u=%k0`C9D194V73QQ2adD;FTM1j2ryB zf}_9gsF2*$Oz6!{^=1_Y`uO-ym(G;@fj4ey4;6oSDGSU{jt&b!9GRc{p0IUkWuwD$ z(@QHGk<)lsJMHZ9MT5!3MUTW`L7bNl>t+t+#&KgtS!!vR-np?HnNb#7I$ns#jq7gI z08f)QmOnEoqJy2)>8-z_j&rvJhw8n8-N_PW?Vy9Lo3G_KIb*%Iy7V)p-NBU-l@gT_ zZQtdZphDmcL!fB_WEUi&=8@?TK?8!e#;L%Qb&3Ct|67X2hhUMJ=y>!l zh!}+Q&f5^ANGOaTEB5D%Tx2LAa_+g%8I!a@O2Fupl8Ip?Bhkp@tjxkIlLb%8GRJ}i zB~&2iLhBM#!(7zXDoqmAsqAo0Fe$i`R&sBOC)G%!l%nQBjv*O?~Y)Xc469XCP zCTeCuWG{d&;$8M3JIaYng2xEf7f+_~7JQ%}U6xteh=Dr7RrXdh4%%fhvJFN}VHkv@ z!DIxUL5mQ5u#5+<92vRBC+-1MlIY0HJ5<7Go*6Lej$uefzR5ZWG)Xb9nA5MWD=toU)SI@nFbCvmjk6R=iOxlb!KdBrT;AN=2_2TArns0!xEj zG|?g`${VvNEovnMMbJdIp*+7N{MWUAEaEX3L6|Y5=lPXo8^e zg%l-5D9HrT`=o*`O zMpKfJF-NMlL@eN%hJZ#+4!(SY!a6~tMlEYnkk5`&EgDBd4}wHmq|g4ORkog?kW@g5 ca+#Sl$qG&d4`uAa#)>!p2apH5JS2Gl0JCZ-8~^|S literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_structure/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_structure/why3session.xml new file mode 100644 index 000000000..a27b8173c --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_structure/why3session.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_structure/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__to_structure/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e20ac9413aee32a0e9bee7edcbada2cbe0ed639d GIT binary patch literal 835 zcmV-J1HAkniwFP!00000|LvJgZ{tP`hVS|nz4baDny*6&_!4x1pr=CD0f)oc2vuZ9 zk{5A*eJRUvvu-xnq`Pg==pu|qugI4)AK8|t8^Gz|1LQ*wcP+-Y{{%w|{RA-%wEOYy zw?@DpxN6k0`h^u~ zyX_*~!$24#WcG794yAjDaise_^+=J^_cX*i8b|oZFLB#X^f1N8@GRYR?G#H(T^<|B z8~wiP;%?ira5yHsKc~KV;;fPXRCA_xSTPqoPQxCj{QzD31YMgSOFCb-`O>6(cYmDt zXsMAXPi;Cj=D%(FQN0_sI~t|~ly(>==-BkKl*hH4QL8WJWVWGSJ$sMc;N=bu-4=2q zuIDyQ+qt$zH|lx;n>X0{o((LgUY+V_GiKURpQ)eb?(ccKqyFP`yS%z6>5VCHKaATU zJ{wZ9ZhAYROX%?;sG6s2^Vj$KMCj!keKUJF)qN)Rn+~RY%VesTae8u>@t+fQ8Wp#U zXk(tvk39}7@7=(*L>LA*e2W>aFK~Ds9CbXc{vCAW3+%`hp7#aMrMURqDdGJ4fkiGd^&)+xG7w-U9jTGPeKO9w6K4_1+ z)WHXWEW8NP6eTn2?7TDn2l=y9Rkomv&;hN?)`7zuL`orR6xOKhSS6~Ug%Tkp3ErY7 zw2%TSZA)@ClPfGzl|m3Tf|TeT*pP!VQe_khW%9YqB3*HY6&j};DiMhxk}5B*$pHvDEnkE1ffhW933qd$s%77lGe#5_G>T~t-P!a z0v?OhL9i%P+6M0v&6ZuVSpj#@Sc9T)N4(8*%ja&UKq}>|r3yxC^ag7~AQY)A!<JRb6UV?TU007Eip%DN8 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid/why3session.xml index 2b0cb5544..3ce6838d3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e2dd8fa9ea8411522990c36e97c9634e673b687f GIT binary patch literal 602 zcmV-g0;T;QiwFP!00000|LvGfZ`3dlhVS_m+_`vc#~%_L_Rxw-h!e`ynvBN~Dcvry zw`%`APPgqsDWZig&?<`LILhl8&-n4kGGfFK!mgdtco9P8FI!#{hcK+yJcU!v89&v} zH1HS$ZKr%Tg)m|+A#5g&9lWpq3rQYuA=8u(IsZ-^pJ2RP1Htxypm6|gfn}0d_V`CJpQ{N!b0Mn#4@J` zt_RlM>};4bcCD#eUft|6pgV{@Y79`0*C*0FZR1vwxC= z{jGA-Q1ntIffi8<0QS8XicuIaCMKm{!8_L^=XxMT)Ej9a8PE{>-u9p!D=%k}XpC?` zk;$-aQ?kaQ2CGOD8E=SX70HHOZ#YS*34B6ishE(I=%W=v#=eTw!$i`NwgRkZMRY=w zYQ1Hay^c;QWmOgFMzzKMi@Wt)jMR4ZGQek6L2edQuuBaAZX3 oTL)ES8qgSJitOqfymp?FPlBUv`#MC$*^+I(0)=qxYv~sN0RE^YO8@`> literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_context/why3session.xml index a200c6fba..0863759c9 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_context/why3session.xml @@ -7,132 +7,124 @@ - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6ab2bc1a84f829ff836cdec8523a1e19ac6aaf8e GIT binary patch literal 2512 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 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_next/why3session.xml index 2ea866d6f..cef1b3b02 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_next/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_next/why3session.xml @@ -7,22 +7,14 @@ - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fc9cb06d28cd18885b7abd9d2fb93f04e20a1d5b GIT binary patch literal 347 zcmV-h0i^yPiwFP!00000|Ls%DZo)7Syyq+W34SCoIdI@o6^UcTb+uWqTT3AX$3gJ- zbpljs%cTd9khu7z@yzbn6IV#_utL|^CE8<)8&BZdJqC|$9FOrm42-YX^n6;5!xgL? ziLQb(-gNN@{U>&u;T-qacne)%%fx-Z4b#nw)Dq`wby|7v6FhDqaEE~j04>6046Zo< z^t>CmC5BW<%KW$41jm1q)3%L#h;Zibe{ssSTnkc* zRDB=AKye7zz|{ARX+Inbv45>6w#7RkL8LD^YP#8e{T02_%rpz5p4 - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f7075768ab845978c813bb33dbaaf74a93924634 GIT binary patch literal 257 zcmV+c0sj6UiwFP!00000|K(A;Zo@DP-1Qax1U;>4=+Gr-_981mNpxaBR#Zt2n!m3C zBVW*|=yK$dM;-wpMg)Kz>zuv;8hve)0|6{KQ-zgU!}Fl?LMcL|LOD|IaKp5Xa-w|h zmnSQgB90v3h;Jtz#0c20P^n<0@U;4k;hY}Bt)!(xTw17YH$3sf5#v4Mx`eUnhIPT* z_a1)Mjqre}(Vjkl(OUW)+64=-{s->u@A$9(#k7(_s8=y*???ng-dIU?c0L&I#QY*Y z6eEk)D@~IPMiIBxOhF0bm9oKE9)^gsD23x3C2EaMdm)XSVwfi_5P9T$h$Q;~lUdhp H9s>XXZOnKV literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__verify/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__verify/why3session.xml index 41d23f850..899779d1e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__verify/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__verify/why3session.xml @@ -7,361 +7,284 @@ - + - + - + - + - + - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - + - + - - - - - + + - - + + - - + + - - - + + - + - - - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - + + - - - - - - - + - - - - - + + - - + + - - + + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8494b107529b9a503cb54069a18416d261538b31 GIT binary patch literal 5605 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 sgChDko+}6+H - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_message__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7e05c99e1f8c5f8a226951a3185527b8e17ab9ea GIT binary patch literal 836 zcmV-K1H1emiwFP!00000|LvJObJ{=@g?s&qbZPhfC{oZcag!>eR&)0iGvQ@PWbA*R z3pN;>U}wz5VQe)T7+uaDcJKMLlKLz70{xQ&^KIWWVO0vAD3iA9YhK$iq39Ggnr2Uvzg~1}QSZr#*ULSaQ>d2i z<}jN?Ed2%T1m->Jp!nz6Pb^^YyG6xNIl7BI zdVs!fHv@Kk3zKuKdk4IWM& zmEOkUbI3V{q;2DlFNum|vvPn%nr=W|kkgyjT+{O#RTU}0QBYDc9QDNbp1%0mpMc-B z6nh@Pr@JK*@`McDnL3^36ql;Q_9K;}^!H@$X!NQhbd$B%(e1DF+qLdnC4njk?>z@p zy9WYr97zJ%b&}5F-Yh=1-8i}z*tPHY<7~^1p<@pXFTrI%$AFFj9Ul`Nm%J;gm(SGM(aGdR0lCGEXMjl%00LCxGl(wxuxbZQ`H!SI#RYL8-#M4gf`ZP)TK_0$4AC zv$-*s2Ga4AZHx(AWWs0%5{pFTv@}jcsdF(PtcWIoR*q@sOVKf4k*q)m zZgp`&;aMJHN|23B;EVFi$@OsR--=4&(lAq;#?zXESI+oYqV`~Iv - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d6bd9de25b74c407b493441e70b4d23f2aac4c0f GIT binary patch literal 197 zcmV;$06PC4iwFP!00000|E-O`YQr!X#CJbMUZ7w##8HQ?q1}VmkCSvt1+wDmQ;PHU zbqFnF>(J#mxIaInA{FICJdI}T-|>oemdY8GUIYR1qc!G5MEQAP@f1m=u*yVLoTwuH zTpE`qlA&!K=$uoNkknU&Z_8*7|8oCZdEmsv9PXTc<%Da&l>GYgg_=;>Ey1x~hy$|n zZg0|Yn%h - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..480853d2dedacde866c5b4705d399115885686c5 GIT binary patch literal 426 zcmV;b0agAViwFP!00000|Lv7eYuqpp#qa(Uxrcy8wq*H`!(NsKLQln4F&d3hfmhjB zO4xk+$b|fXCJm+8(1I_*Mo)fE^M2rRf#+DR?aX_enXE;R_Gz8Nbg(w_%`GQlYhy}0 z+a2eOSDdY->s0tqtPOF_rJl(9DHiKvra2>(!zi~G-|>6|JR1eUix>Qb*|TKASEeEI z zLXGWGpn5K_d%r;SQGwmc+{)bVn8VXiFH?AWhZVvV!hZn5&2fp`{Et85*P&M`k40sJ zrYAjktwrmCmLPf~z49In1p)^r@J%(L58Mx;w%L>MN`mh?Bb^T+IECP - + - - + + - + - - + + - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..55e203750e81e50498ce867178c7ee33ca41b3b1 GIT binary patch literal 487 zcmVpZdJ?e4=W#5KD^=s zlrc^)J~4dSDpZ>{Dqc#?)BLHtHJc@2W9|SOvn*`Py?g>Y71k1^J5%DPSYhqfs~D70FV4UQ-{PeHpt z0hIMBD|B7{puRYv0wQy-xbrS!$|3jG0chO^Hkx!Rl7d|#X|h2w?7hvXwZo>vDkRF< zx1vs%5HQ;WDNxt5hom{_0Ev5$N}_Bok!AdA>KswT_7-TM4bmitmq{hlzO=003^n?1%sW literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__contextPredicate/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__contextPredicate/why3session.xml index 879090311..26126731a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__contextPredicate/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__contextPredicate/why3session.xml @@ -7,52 +7,44 @@ - + - - - - - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__contextPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__contextPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e3b4dbce054977019eed5a7f2b9443181247bf29 GIT binary patch literal 726 zcmV;{0xA6;iwFP!00000|Ls;yZ`&{oz57?}J`B*etV0jI6e}?FH1sM^BDEQC9oKe> z=HE|AS1iMpwnOD0YkiRonRLj&Ek z`vhNyHNge6Gcl$9#-{IB8Xf9mJfY)?IRuiNFzmTA)=-RIL~>Ud&8 zI=ha}lB;@d2X^ihnL-i#o01muRP6&jK+Gf<2w#22{}ykNx;@)M59RAtQ-H8qwVrNg2`2A#>$ZJN-cFNts-}ObntDRj^s}m_ z%4p6D6@L-@LxO)Sy)RwlLKDN%a7)824fjSTtoJc2JkcnHrpZMl7m@rgMY8OWur%7z zXiKBL)oJ8(hlTU${A9TuOeQvkc_~F2-(QK z3<-07FtgR64pwAhU`@uc8Cx2YR5q$B0pKt|P7&%9EYwmUW(HX2I;OZqaxX*r0jc`6 I^?V@!0QM?f82|tP literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__copy/why3session.xml index 3ad7b5276..96c911f10 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__copy/why3session.xml @@ -3,156 +3,148 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d14eac988b966bcfe80a0b9b6ba3de0df73830ba GIT binary patch literal 2338 zcmV+-3ElP|iwFP!00000|Lt5`Pa{1NefO`}_fJSJ-!1K|#0y#^H2bpZ*Qk7(iNpY3 z5=O)R`Yq>12%StA5(vRBt;DJJrRtpHYPX%qw}Vl>!*E|p9t{RF+qJ^!t@ZLpcTURXvQNXCpEw%g%>?7*7yfs2 zpYZ~($9eX#UM^VvaW{DwjKAYuW;nbVjPT}L?&K9-=bLYn@15x262J5|--(N!pK2#M zxHtjVOs?vWm(44^Uis4LA^wGDwa(#9%D)zsk8&IgFyUZv9hK`}gTXleeV=b)9+347 zHU1-y$M`Le2ZMNfGs(XuD<;zs(f7OS;e>jguhY0w>kYvxTAF!d(Lx%I_5cy;1 z4mOUn0}kN)c`Q5K8_6pS50g9?5C4}twIkBS7O0CoVO{h>R_uiKUGDA0J8T2|XFmH))+Vd~60EL++28qBvm)sM-WG_eLPW;;C z-aq5l(pOW%nQwNU!p;{QTDDS4zTvsxCP!1TL{=^2`**Kj|)o)Eky4|f&E)t%$P z-GmysyB!jyM+0)uJt6*Xl+!DCF?Z-w&MhQM&YWC74Oe^quNAOI-j^QjkU2GwydXzw z(Kw=L?1Qp(3TdouIC&RoA5OOVb|h`Ue|}jh`pHJv2{Y z3sK>POod*o!(q58Hga{BZftro*yY~$;cMTj=9H(dhNZLk7pCD)JnKw^==xVX?S|FP z#qx1yR)gQPrD@BnwB=>5oVIJrF0Y5)KwJLg4cC5hR^SHN79=unEYsvDpn{ zJ1PmP$F?3{M0B7#P#ZT|fZn{*LS6LAh*&(0h)Q0}$4{wD z`#x26NNIY_37xl)rV~=8)fEFXr;E8Fje2s|2d94Hl#JAeH5vEuk+=N1C0Ym!vXV79FT`RPerviYBy@X?9Av< zJxMHANo^FMta8$*={oDm*9fm&HhpXILl658uvz-;=?^{pKfq?`#{Yfs|LEzz!t>d? zlaJ5-1-+lm{d?Ug{Z4Z~^i2MH-YDJJ|NgW8TTlM*;aT72{Kop@VEysW`Ov2NOUIkk9?}%0<$LqaQP??^F39I<6$;VH&v}aFFdn4iDiWK%|WaBa)?t;Z>ccP#wHGY z>Zys$yKhQZKQqSbmdH(;K6|}2b&2oY^J&)EqT8;`zvR%TAm_)RHs?nxW9J`iv*+8Z;eI@H zm@VPwlfCqgu_BFkXpKOH#fuC!dc(nDaMD3?|A2ohU?OsX7NRf41|OY8^dhL}gveQ2 zOIDl(YkiUcIcI50@Jf|Zl1WY$5jc1<64V~gDoB$ha4agJb3u#Zv;muBkYps8w>imd zbSgrEG*M8)TzDm{7al~Yonpq??7U4uhwL#ZDY?)>p|e?W&a08$&B%f`0z#HlyGf;B zDq5!GGEdpY1Y~3wP>)UKoO-EsNYW)GjL!)*x*%gDBg;6shHJq~&LL(SqOys`XiJnl zIhD!CF(Ea#C?kl%4L1cdVC0EB$`Q#iWaOD~nxhU%c@9#O#~k^>agmdcAY+XSa0Z_0 zNy&1dtjWq+CyYy$hEjYCAgUEGo=ONtDu;rr>>VhrbCHm_m5#hptpv-SZZ*=l!mZ0z z3sZuDVuBZ?kX^NsEQG=nAQ)3fLSxR!qK(ejME=mhR4c`JNf=WQ(um+PDxOjd(G}%< z7Aa%3(kx1914~Yd97G+<-g=#YliSd`Q2h>u<-jq=Ag$moqBNHJtxJL&mEqb>`(-IS zMHW{<6OvLO5Q26P31~iAttvvnG46c`nIhq$@r6d8lBPRR5#2S9yjppNPSL=lRNCt( z6PJjX$jyWw1rlo%1!qPJFP!J0pa!8zqKeaO7~1n#sui%PZHms3Yl|_blm1Tn9Su}B95lzW?!f>uaF*>5`tiXnaNr zO<*N1Rx8g4d&UF#qDayu>UwhMAq$gpaf;X8OU`m6h?W#Rb&XNPUsKC^P1wOVK70bV - + - + - + - - - - - - - - - - - - - - + + - - - - - - + + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__has_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__has_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b8e5c2ea84b71be4581a0e68038cb8556448d483 GIT binary patch literal 773 zcmV+g1N!_QiwFP!00000|LvJeZ`(K!$M5J;OKnCaWQ<3}V(C<_~x0_g*sm(j4`-ay0+XQJ;Rv-?fte=915?md{vA zF%=NEg@(ru&(>a$emwJb?bi0a$Z_8FBkzAA(`m+;|C8tv;@Us54?pAJPO?Gqb;OZ- zCP)9WUxq1+KNz@|HG~_&Cxh^z=W4h% zTu%kpVLtxVT^;Kt8rlu*Q$hP^H~jFYp@HAPf3@HrZKE6ejs4fozO>&B^M?6r$9$N- z@sU4D_QQ@?&8r{n_*Xx;Z1LDO)GygkQroAVs;y4%#B=r1j+yTQ`ksy2k;hVEO->gR zH8NNqff-GxG1pN3fDd51iq2t>rxjI1n^d%HQ%pu-3eFf&sgA8Oq@qtH`cR4o%33pO zHU+Dv#gy)%O9reXFs>?cMZCpWFcE2sfk8y3GuD-45R0|O>0pBO-e&eLDe|NjOSVfP zpmjNsaVZ+7#7GQ@Df?&vD2d2*NoPnpihY3KfpyL%ko7^MLWo*K{%Il&rA8{bMjI+9 zUBtJ99+R&&D?$;4&gg5@0D6(A1?)pq{9THAI%&B9ZsiSYt5z - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8925a0a5a75c5db32793596eea87aea2a470c5da GIT binary patch literal 2255 zcmV;=2r%~_iwFP!00000|LvSjPg_e8hWF=J%xkIB(_F-Zs^0@xi z6Ffd1^6B~bV|ww0&htQv9H&#NGn_8U$@lfoa5*~}XY=X!<2+wXr{TxQzs|?Sbb5X^ zn~!-h{YEF3ng6)hT-|c=JkV@CiTT+WD4d<0O!L<}QT)gG<;lrazW>q(iX#tCV;v=) z%`e6U&E}kaV2$SVpqe>mM>S6;8(NF`TRvEdH#9)GQlYJ zCH(OlR(|X{{W^#KNhfqMvZM&gDkqJyN4Jzds!~Z#v zps`AC;_$(9oGxhoIZy1TwJP02w_Bf>APXxh+)QF-uGPI8-W0B6zUa!#}(hl4$xh6U@jVa%@3~T8x_Zm zLUbP-m=B(udiP29$=WBoue95y+h(=Re7I7djnG}uU2)}#l^9&{Zi;S-l_~!EP=#CR z#UwpZ3-@^1?!#hV0Cv!cgEET^zQ*={YKQyn(@ui!O+cqD%UF5Hqc^)$_Vm{A{>1n>WpwIQu8!vRs z-^b~yz7tRru*V-~V|5I_eoB=`zOD#{*ADt-<~KjKSmM_A75O^3{kjiyy_9Nzdl&st zi3vy7g1`$DSvri+2p2 zxz~zU_Sn*l$L-OEuf{g~Rd8#>fxEWyOVWUA&``Hpm(8(t3wlVs?R~#;*~cc%Z$!Xb zBzqPE@y@cIhrrh%U>ku&6Qn*uz&!)-Y5qNdKiC8R+5+Hu{fNgOo4N^Mi4?q|Hu#4R ziuee%@4yuNJK!I@0|4Sr15kDVzQn8h0)RQ*M`xjK#Fd+gsuft|8Z3wpf7C^}`*9F) z|6qNIt=ZiTPkuCMaij0KhdkIek(VCw+Me;+u>SYI&-W%j<{tQMzMuP# zD~3n+@lJtGflh(Lpulq;#Jr#9fSnBeIpBey;W07{d$^CamPNlGSRBqB<5zrS)>-j( zSkV##Yb&jW?-1w^=nyy{2wWcm?u*g>2KM`bON*y{d;D5r%bV_vklN|eoGwiOaJBv4 zV^ni1y`S!X<0p&W{fE%~*9dt04tu*DCc?XU&d~o=L4VHhCi?fqpAB9Y08KmS!6QdI z`!{XThd&}UY^;4iV0~+6FCe(OdHn2leknf2qp{6*p?3VP+~#mCL3-=ka*b*}42V{$ zl$};c(RrydfN>%x6*)=_)`0OCoh5B7 z`G~sEcAY&>B358TrnuFwSnWDw=^xq0W5J+DDUQjC_^h5bdNW4w8gqZ4Q=$^lq7Ulc13BUP-S>DdG6NNMM2~h$TWP z9ApOmZ3<;hB(u*p37(_NLIp@Va!L-eyJdRi;Us6WN@(dY7IM}Jr%5R1l9QZNagb{` zT)Rw~5`u;7t>AY{0xw)*n``TH5TXY8fpTWQW$R-UIVzKa$`L$pLL_18>Oc%W8JUT# z8j{iM+AJJpD-D7OF6ioCfPn|FsFW%Mpt9D%LA2UI3GBQeOpU@FbEP5xN>tWct4s;( zR-3?;#Ku!4R^x#jq|@1y76!rD%%UJ7-K0yqFTmbJ3T%+~9e5M?s?W!D^w6BpF1Ij0iGp$r|N%%w=-OB^!|3 zy-bxNEgC713!#_>5i4TE;F5K~hM?kfl9-iI3@y#0lPF5nTnK}6Qc_ktxvZhEV$wU% zl56iI>gZ||4n-!yj4?ZriW0G8%^pRqBszzw))D29JPO0OV_6lcn2QNI@dBi0Ag*|f zYA7rPzhl917dq*T=29p?_C;V&RV7dl#RdgYSRqjOghjDRNGU-A?c8c!+|?NqQtudL97tcg7K9mr}CsAts%QmmyOwGcGRLzw(KAPw d@`>w{7@k&Fyzs8;s`g3_{|AunR^$(K005N1UtRzJ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__initialize__2/why3session.xml index 92bb450cc..548525844 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__initialize__2/why3session.xml @@ -3,153 +3,146 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cc58e874837da50a7e92f9b7d1fee0c2e0022c8d GIT binary patch literal 2199 zcmV;I2x#{oiwFP!00000|Lt5&Z{xNW-RoDpT^B_GUVamp6!791FTmh+Q+R9evlZ$% z8Cx05{QF)?wxhUm;>2>3j2R%YY+hboUY>JEQFNMXJD=C<`OWRu81Qlx?|!=ZYX&oN zZNvAay{Y}YUVgQ!+AbTru?CG{d{h7X6LK4__q1$?(0QUFXzqo zySSdu-S-Ax?wZwnes^0h8|=_mySR_|cGVx1HrQ)>Rc{(y-Zsv<+uOxFe%Z6ax6Av* zV(ah!_R9JOo3~AF#osR1&C1qG^xo_6021I*pzvBGz*A6Y%3yt*!8#9DXQB(MZZEq= z@v82(f7PXYwwIPOL1%h)?7-!Lrzt~yDMS61I+2q%dz{LvnQTiZb$hw3Dc=xw|9u7S zjt0`@0`GW@DKNQUn7o}n{dzUiTLevPe)F>p^;i4LOnLCy!{ncxLZhMXf40pn8in|6 zrao_n@<Je#}z)u|z zJSb2`O9M(w@`qipKW_>r$07Su26LPLk&%7;Is(ZB+X=V}0^e?<0CG4C7{)*^4j>zf z9m|tVCiW->^r0?ZZz}^GVj28vGSEbtPxoJN-S&6TngeD0=wTQT2#*WNa92IBLsE?%tf7IiZZ_1dr2?Gs2o z1BPJ8c-)qzIxa$2O7bzn?)mTUaP;>%*73`IT>6OcTrRN#H*vkTf8^Z`#BvkAHS@Ml zI1YL!3cz;Ya2TpB?&afzFgnV@Obx|>{bS^C9I`Ebh~tDXdIOEY$OFMpb2u2$7LOUs zHZ@|pU9q*xFkHb+UcZ9-bhT6GZtmVK)PC)ibhUcxr=eBMS=ejv5>xyzL5T6NWZ^`svacZH@sxKxIjOR(rIg? zo(Ag{tJ9)1Z=*DDiqsUPDN6G!;5Vy?q83Fhidq!4I7%((qfQ<5rNZr|#qP+{;}cM= zWKi-Nw~r1|4R{4}+BYBveHOVaa#`fEkGNJD#@@TtGb*QJYgp@6Oh=Vy^vI`U&OPXm zb)rZ|@VPVToU5VlG0@>N?4RwU%DqizjgHD}FxG4Ump2`ZBpC?GEbPjYFX#?OsSbN6 z-HP4_e1B4(MsPeRP$P`nov%fkb!SYlyNP$A>}sY z$GHv30`R9@ZxVZ8{w|Dv|4LpcUmhU;%R3Lxton;;6xArIQB>ofsxkI%<)d^K=pxM6;Q}u$bXRh@C5teF#XSb|1pXLY!?A# z_AdfZ1Yl$VphF5UAONr2f5-yx)C1)QpM}|FYw<^+cG+6&Z!I3L0h6(p3l9#*IF;Ci z`QY;u5**&(7}fvaUh3qjM?8~fA01ByPM5%w$4e&7q<1*&q?1j@olfgFH)0kapHCZa z_|JWS_6*0<#yXu=RV+|pg_S`l7Nd2EfC5U^5I zhSMm30!J%Sg}_OmQR_gN3WSg(oJ_>107Ob2(TG;WTh58J7MORM2x2+5mxQ89N+uz< zcbq3+Nq8fJPAo*vDFjMgWHcHUy#b0wyoxpgV@5?O0?+>)!;55csW)6C=g>$T=gD9~ zJQW@tYC(u#PGCQn(##7mRHKoslt@%2n~cJMIb#|GPuvmEN`;_u;A%`yiANR)*E%KZ zOmLQAx45QJI;w?4BVFOgM57OvxV2hv;TZMOc|w&jjxjVcBYMJ7VhAS}C8x$|j`JY( zK5%fJM2YM5L<74J4bv39PamhSxpcuLSS4Dr1nN6A*}W^0|sQ3q6A93@=R0g zn84pig*H|gOEhF^fvR*0%oyuiBqSB2ASSm+r3;oqCIsk;E5*6MxJY1vajJZ>!eLA# zLG&c!7)%AyCq|eNT5GPn7uZ9t!2!N1L9;JPDny9kZR<-MX~hwQr}a8#z7d7vB#9dt{N%~hbXd@sXWIwiD+R-o_tLgyoh- Z9~sxdAs-Xrt#mV1{SB`$q4q3&00695B6R=& literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__reset/why3session.xml index 03a348709..e29b70167 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__reset/why3session.xml @@ -3,93 +3,70 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ffe0afbaace633e5e0a56ac4b4557ae2f1fdb071 GIT binary patch literal 1051 zcmV+$1myc4iwFP!00000|LvPiZ`(K!hVS|nz3r(0hu=Kx!53o#^tkX<7?Q)Sv5uQs zO40uNj^bqNY?W+KGu|ZT#TM-Gt08CR;fRvQ3(ViPc)3pfdiw=;Yut|5_dB}!?egyx ztOWkKyCz)XW}yAy^m2i}uha^b)4N=W<+7v8tMOYue8em2M*bMbPm>7lDD^#Nmb`u4 zmCe__AL#QnZ4>o;)-CP&OBx3Ji-x{WpSB}?9s53Bm%`ta^==s15x1e<#oc5Rv`>|IU9f`{L8D0UPsm_=@QV4Sy%YpPa$pS<&x#HVdS9j@<$XmAgHt)$86l==N1> zD@gteGkWoJr#PKxu0Q;M_kMi1T!5}TgKeewA6E+X>?=hjJnXp(I*HFL_XRiWd_ODi zu4^i!=3^+TpgYH+8a*S_S~DJC(J_+G&!Q?b*jRMJVRR2(lKiOV7K^rj^2RS9+WtxR z_=?^b&=}Ada0U#hyoXR(Pc;;^4b3xP(cFgSF-1PdqDnPc6B_%}tt;1%(U8%Q@%E5W zt-)xWMZ?5-W8#HgKk$Y44z8d2awCZowe+Je6idqDg zJtY7Z6`u#KC8QQF@oH*OW#O3H7OJIJ*TwtuS55H7$%k&sE&l7?{bF2S-9?mhccDg0eW!Rr!Gg(AR8M+LIeS;XXgjylA5@CVpVQy>|l&|0NXToNVcEMx#g z5`4f`;%P<}qA$@FDkh>$07VxE!5HhKNDA3Vc2No^jTHe>lqDw5K6=*mAf*#}GEyCo z0S<+t6w!nrYz!U@SW8)GwqqmRS!ZJ^-deAON6bkhSyOxgrA@}nMy5k6V?y9xlTTWz zq%yh)lrmY7bYdghC1W7U7-G!DX=?;f@y1Y;+9;8Tja=t~iBUW2Vv1TC;8_Gosvx+? z1Ds~lKg}pP5wlO(DjPj1Qn~nGtn}JA18CVObP-)~3Oo`LM%L-X$nAe z&Lm``;)2dVJjprmNVNt<#R)Tc4$x7dY@GFp?ns+0%wL) zMInZ06=)VVKIC9fOje5H=gFz0IT(<5Zlod+LAacev=L^q(p}*w7h_9uI`Ft1au`9n Vf-%UDf}gBR_Z^{01}0QI000t*0Av6F literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__size/why3session.xml index e0fd2a794..ada909138 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__size/why3session.xml @@ -7,18 +7,10 @@ - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d0e6a5bb899326f4432cf4b787ace9758dedc62c GIT binary patch literal 202 zcmV;*05$&~iwFP!00000|E0}AYr;Sf1>k#rMeibHUE6r^D)uh94llD4UD&MY%qsEU z8?=lO_AhOykpP8g-CeAll!j}5$Ec^`sXdv2O~-EBVI7rW-e?d$)Q?!L?9j9>u( E0RC-WNdN!< literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__switch/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__switch/why3session.xml index 1d69b5a2f..88dfdbcd2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__switch/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__switch/why3session.xml @@ -3,203 +3,176 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__switch/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__switch/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f7bddf56442047dab64ea20d9544a56f97bd5ec0 GIT binary patch literal 2928 zcmV-$3y<_4iwFP!00000|LvViZyPxh$M5|q_O^#$0Tzo-AQ`|HV*?nO%R*Oy&lzE5 z*^%U6vY&p7ZAq4F`Pr0Xjfen>ELB$*$$$OGCR^;~S2rF{7URpSA1Tt?dAk1R<$p&w z;$J6A7k|#&irb5>A zIy8?|^{Q8Yf=C7`%OG4e{+Q{?`e@35<^g3@>@5pd=we%0IU*qASq5J%{X4^*4#-uM8 z8}6|817{TQ+eEMv9LYS5SYY2b6>+h{wBNsND7k~b73X$rH=^H}PT3>s<-n zrtO!yqp1yk7S@Be?5s-r#Gy16#Yg7~VGm|GI}WcR&*(kR!m`JiC{7L{R#+LdC#&?@A1> zmz5`cwWpPbG3EVD+W6sg{Nj2#SyGOqX(PZyRN3p@)wH&nrlhecg;q z2RmD_4MxDuYq~8h*ezTBwft-O_p9=cyxJ|NLuzjwrP=cL+EK&(E9`EQ*JX$~38j5N zZ(kfAP~3gy>|FB>l@{=W(+(Q$-UD~gc=s;6>-JsT_t*BNt<8~T|M}Nvcm@q<_kqS6 z(B1=R{BHxaepd2t$cBc7Hr8olondHjbeg%F{gFl-F5IUPX922=T<&F)A08z>qm8YoU16ziL39If{BQd=A9qKby%jw7xkE0&zI_Xq2fuwQA#QC6Gx$gM>nPXr!!=#6 zBi^h^J+>XkZoS{XC1y(ld+v!jZ#~lc^1HjG=Xz5mF7G9A!$QMC!@{Xyq5LAM5ug#E z5#V$QaB)B15Ab_!JjnhOy!HkayygxS#h>mK!Bqv9_tm=xmgPkIuADF2&cWLk+~nw8 zdVo8Q^VfC(yml8bbPKiv_W_6N0_yYtw|hI*>P-==G8lR9u83zki6ex-w*<2J5H=sW zA8s;rewql`E~MKpKe>O^Dqua4gkB?;SJCy|%6eZxinlEIoNabhoY7IcWgJ?R^(VJQ z;+x8;QmF5{sY{XH-{$sSuQUXrPjyQb{Ju-SRKHuQHp%#QGCa{pVgMl?AHs*FdWTDdQ&*HN^AtjH*e3+p|>`OyfY~K;ytWaNu(V z5Y!qAv_U|XS@_(9 zQ7wOUL)@*vY7XT)qrR59tM(Vq-Mw^H?Ow~SV=BccF-UK9l-3)tAbrwCqT zojJ3H>nwcGWF$Kf%zzIGfhFUjawsio)EWbw9wiy67aFk?BGnYr2u2z&l~W=l;hje3 zydopr@ytc$;5DWoF@fU96wjF{BN%s~%1z1NhTWh>ln7H!^wDCd;YPOhUSpbIi7WpcW3NCHnC3N7Obv8TYqBS{Z6Qre+r;t(rCS44i<2YSu+lS{iIevc?oGv!r!83DvzY5j_himCiO5wX;qsp{QCNC~ZsOm`GeC z>)w2RtL!$RVL(+wD;1n zq6vFYpYF)E>o!lU=jv21%abJ3ByS#*|ElMSg)Nvd$lKlGBaiStscTy`Xo z#9Su9N5`yk#-MT5X-^uY*2Q9_Iue7iHcE=w1yEGsKDulTl|+zUdn;-o%3_%Vr7x*2 zQ$ZMl)0D7*rM}N}vL#JQ4*HCMHxOm6dAeUI25&%63_Kl_)sEmgiPVrwqwW zp-o0nfIVwi2apmA-k4wm1_M!*Ea%pc_*v4u6?CKzAORSzFepp91p+0Vm1@={2&Ih3 zJHjtlk!paNfCZ+rvMCTHyp{@bpZ|y*sZ?=Nly*+r7&C>U14QSoP=+HEE75r`$f`81 z08L2KSv%0g7H%{8zV4B7h|&+KaimcOvr^=g@{6VDb)@tv1VGhAZiEY3c&ay>S&W)X z!yE}nXX0IHZPZ;PIgofL-zjVkqyit6%A{)@Jr%WBnNAl9Cxu*a8-bEe&_4=;(GkvJ z(JE375fw2AmsOC)DT_8LNsI?1W8SxrU>zkffd;wKiaG@&rJ&50k;3xMQu-Au=rpxV zvN8bGqGLJt1xUXgZzU}6FautFr#j0=u(H+hAzSW*9zB$HGYN-cy^ ac4E1t-jv7-LFN98qWeF_Q75!tzyJWXrH{`5 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__take_buffer/why3session.xml index f3c4bba9d..494105abe 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__take_buffer/why3session.xml @@ -3,148 +3,117 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - + - - + + - + - + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8d014c309560bbb09973277a9a3fb484f583ddb1 GIT binary patch literal 1581 zcmV+|2GaQ-iwFP!00000|Lt2%bK5o$z4KS})+-j@IOL#1iC7WJ8?k@H{E&-@}@88X(|9f+bf6;GZ`0c$4tp)%mvF;QIILf9GN@=iFcUZ-x( zb$8cpKl(K`9Ub-`{k9FaIpgN5BlmFM8v(pJgzt!;_j+!8chjHhHyGR2Cj#2NZu0U= z+ivmGEv_QAbg>m~+H2fy{Xe*E+jz6;@JqL6vh>?-&Sp>DqpKWp>4SfC>Z2G6WfWeW zQvRBh9(3y690Y-F*ULrM<^?X(mQc$j{K3(E$PsLK4Y!MBw^+5^-MWVfcOAX0yA54o z+pcbx%XWRUAn45;_!!*x;_S|EKl|k^_9zo#>wJfl%MTMU#+n&xXmWLrU^H$U$~6hZ zFxz7H?mIzN7b@O2efxzmL`=_XrF*6OFF^OFjRzPrc>PPLYz!55QDVo0^#wYV**t`z(yoF zS;DTWZdcv@!Mfdam6ny3m6m5l%QJ7Mnuoq-y}`7I{eXl0us2(ALbeQ4+%NjcwF;t& z;2DV^R26)aD!7|?aBqzJSMRHuRW++>_G8p+6ba5sFZqBwG}*!rFPa=#^Z{2z>?|Ux zB34E0+o+pqr?&$)_9&sKIA|zN@Hog-(e~=TYvb}1&#qh)es<-&?87UEqKg6Go?8td z-M^ntf4D`JTMsC5kAe%nNx>=aQsWMp%JW~H=Wm1N7tHdv)r!7>p5uXz`Xs7RCGM?B zTy14eD+xtAiOSx}-rAu2Dh*2W=d+v2_XfS@^ruHu=O63*<0%$V1_1~+H_H}3J$)?r zwvI1X5KcPRQx)OT72#q8q2H~&Ygc9IHvKY{qY6hAj@n9$$}!e#IpG-bs&1S`L{&Gc zZk$Lr3O5>s@pKiSvxuk)&_xPRNdXvZuPj`p|9M1I>3@;*pST6HfOZt?8fv?6P7zhT zsCsb{y(raW)b8SpBC2Xp)#8v^e6txw&(-}Z=+S*LmC-*vqRQyX=o8IX9%23w!Kk9} z^CPOFP(|THqHttm>T~}iaj3d*77Lpz`0=+@`i|9)Cx*3s8A)fqpc*)*uL z^Fc-iQs;n9Te=2B3tk91V19!?xNZ_-+By?tQpRC$EGp(=5JJVQrBP(XUStKdEcaY+G7=5i;1eCrK}ri*C#JJ? zmW8Z90c0|gO?E0IZ+Uc>P^ZAqWotcmfS5S~87VT71cMBs;nBwAGANxqQYhZU5Xne4 zKnIw~!aJ>vC-0O1;86xmX21d&nU@(Q!IPuAuE{E(WC78ItQA**xvYlhY{RtSpuq>F zO$JWMKoO7z85y~TGp(|rA5;+?4;W3%-USONe73z2u*OB9Of)(w$+=W9K~TnK zMSs()>%#+Rj1eGc+#q->SfH8^QDwz!c8TEoLID0kEZ%3FldUx&nTRH($j~ZsO3)R2 zZzYKQ)L=8vCjC>GI0rR8}Bk^SuBY-w0 f6FZY;8i~qAatjQV_i3nTuA2V<#r!ytnPvb0{|Wxy literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__update/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__update/why3session.xml index 4d2f4f6fc..a70604792 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__update/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__update/why3session.xml @@ -3,231 +3,192 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - + - - - - - - - - - - + + - - - + + - - - + + - + - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - - + + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__update/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__inner_messages__update/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0effbcd4471133bf68456a18aeae3d9f4d2fcfad GIT binary patch literal 3108 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 - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..774165272e027a3f519440f747022a2ac32d1119 GIT binary patch literal 364 zcmV-y0h9h8iwFP!00000|Lu}NYr`NIhVS_myN^NCXp+OOWrH0@uJZN!K06^vGqt1r z_cL8PSm|La^iY@w5q*5$2Q)nc?M4_pT0ee3@GvHDJ;7_(Ff5>t{I#5?Gpqni+p}=N z!<2S5zQM!=Ji-U`p6tlm)QPU#BQNvim$~lw2e8jPN?cD6{AdG=D~5Y`=u{_B%pPfN z15Xebtpx&moP+DP)<%Bc@Q7^fz%jxqFK|7kY;A21F=aANy-${W#1QB9PAzh7C;dDQ z@d9Ww47=R?=Q`)PCySd9*Wsjde>79+68*2pc#Z1pojFeXVZ* literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__byte_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__byte_size/why3session.xml index 2cecfa5bc..eed5d11b0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__byte_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__byte_size/why3session.xml @@ -7,32 +7,21 @@ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..195cd7a9e5d3639f9483ffb6146970f1fab4077f GIT binary patch literal 416 zcmV;R0bl+fiwFP!00000|Lv7eYuqpp#qa(UxtGA`ujNAyds(^=aw@)x@o1C^yw1i_ z!sgpon~*fngph2vQ1C?z*2D9j-w#|ic!A}{&%DE#$$JdwpU*jtd+#&f-tk22{g!ja z>pIZQRCr&!k7>@OO7m_^#fOw>&PZk7%k}08FM5IJJ&^dlM0{n-^OF%@EsKfA@U%>< zPm}`ci^Ic&+eAK1_c$k<%Halo%y*1y95X+Shoj-`t~~hs6L;K{<1Bp?Ssx~Z<)P3m`hXO+SQTud>VpNGw^p)ya|DLp8`yipK-e8-d@&z&U@3V z$Mn5B6sdqXNEc!>vF%W}DuTuYBQ$qtT}uL5X;B(yTZ$Z2 zryN(2Y(PWkl2g0c1Fl5(# - - + + - - - - + + + + - + - - + + - + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_av_enumeration_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_av_enumeration_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..995af2c7e091d70c7442147fe883abb7f605e778 GIT binary patch literal 405 zcmV;G0c!pqiwFP!00000|Lv5)PQx$^hVOj}&Ya>j*_s0fE{I7S5!c9Z9H`W0B~8)x z_M~hafFUsnq#>=9qSXH4`nOx>75Z(&z9rkn7fdb2j3Yl=${V~-6XOkbBk#8Ja)1Z? z4z9Q#^45+|IBisF7JJScD_ionAbM(fPU)x zEx{s}q;@92#AGdcwC`&Q-NxFI%EXb_+MdS|AIm1R+<8k=8rR9%A+cvFzI7_6#-VHT zj+o(mL|9tKTuNj2k;hNbV6G>rFBpwaVA$DRH7g&Qsz%B~GKORkaLK zDs)Wb!vYO71Uj%ZhCw@N!Uf!_$}F&{jgrpEdI8Qi%R<+nNST0WT!F;TAgzSZLJ2HB z?UgbboB|L_vsA8;SRh$>Wds - - + + - - - - + + + + - + - - + + - + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_enumeration_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_enumeration_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..860c6dc6f31d87c7e3a52dd29cda391ce8414fa7 GIT binary patch literal 408 zcmV;J0cZXniwFP!00000|Ls(=f(GbVWF=^dN(|UKSC)gj zzptFT3`ws*4rqZ3a2f=ee0t;~W#$L+`$%KY*vA)2J;hA3{6fw<`k5A?dm3gr9M|mx z9_Vl2O2#Sgaek&rD!Qc?8hVdWcKK0p{R;W9UVeDzTP;WL|IIF!xR21Ui&al~i%BN( z%Q)^C8oK40ZOQCl2TH<-O z^b#|c-(@N0LE=+>K74)1;C%MC8l7VM_tgPzU%RR=xvN#ayH1G<)o`5>*C}xsU9BoH zVl^mIzGW-*rqjHUpbdA@h;6!W@V%}K8IaI*K{+tCV{lw|p;2H6RO9OcQlA60+UbpV zK{2~lwKkZ}me_8?w#3w-fOOR;ZGsa}ECe;M);>6I0i3d`4N^enbD-bYrS - - + + - - - - + + + + - + - - + + - + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_modular_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_modular_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..723c2ec288660f24d185223003ed5fc742a0575b GIT binary patch literal 403 zcmV;E0c`#siwFP!00000|Lv4LPsA_`hWGvoW~O}hl7WE*fy9VdBiDAJQkyGjitheB zDR&H@L*gV5AYFziwVybCoz(dTXd7YZFm&-5QU@`^#7_b92JX_#a0UIuyX7(+;3a$p zS3Hb)8>UAXxq=ILhQ6Z^d6Vx2s#oN8*?jZPw^;VxpUp0pbMIxh3=|#Ybx1q{&BL%o zS;GY?v?a5hT|#0E0SLm|oZ5a9Ldj?5h#bPe(*zG?(RSQZz&TCp6vCL87>jS6%C2eb zySyV7I3E!f*D;s+gni`cLo~S*70qEG=HCg?hlS{WCq%s$0_Tv+^UQmrI$8zs$dNea zQ2v>@n0t;7`EmF4A%o+izt!kawC}HuM3?{ag;x3U)FuA1kW-g9b%|fU(5gbRx*^%3 zZiMu{2D2jNTVP+;k~E*mYg5&pg%e(JtHFA0S%M&CY1K9>&k_qHz6M#Lz-i5Dc{s{B xY0xRMt})sv>s*0U - - + + - - - - + + + + - + - - + + - + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_range_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__complete_range_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e875d32b63f39607ad76f6bb1e056e7be7f17f47 GIT binary patch literal 406 zcmV;H0crjpiwFP!00000|Ls(cFh+JvIkt{@*EIHB z+A$V#IzpD#A?5nOUU_<_CYPd;K5Rt)J0s->BkA9HP;WipIi~zF(;ieuyKp>ma2yik z-(}8l&*45j?7rS*aJ>3!jSi`Oe|038mzSyj@~sx>^3)~%vXN7lICY6%zty4;(g`I< z2y0E<3U8Z+iHs7pF)a}sY-L(+sT6f3w3b+TV@y+OlS$%hBwbr&Em7NQ zR@yhhE8VyjePt>n=1furn~W2At=S3JSVJvKY<*c7RZC?vsr(x08PXOJ>?R5T0Dy(R A7XSbN literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__context/why3session.xml index 246e31805..099f6eaaa 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__context/why3session.xml @@ -7,34 +7,30 @@ - + - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..74b6c5073bb3501aae2e89484c7e41716fa9f9e0 GIT binary patch literal 710 zcmV;%0y+I3iwFP!00000|LvIDYTG~%hVS(hz3W9O?D+sq!8f6K0o^XMyR(j{WxJ9L z$=i1o=Rh2hHqNThRuah4YW(Zpk>+Dqh__p4o8a~x#wNgkwY+NJ0@_`KVdpyBLx;gR zh~OTMUE16@*W-@^ZUZ{kV&B6$pM>3Zz?;Fj4fI2f?Dv~yaIxt_*Vi(bKvvJB={ee| z>88c$3ceKgOf}WkC`+}<@)zZe!>96|ADlMZh&QF>@AcR@g8q;acGJ2m`1-oau2q3d^D|0tOn+{8Pt*zVo9!Ft`{I$yhp$q7nxY@Wr(_WOyCab%aq zdx4$kJ>8-~K|HkW?eR#DKdj168*W{H4STGHrTmxjU&{YKDt|c3wYzH>DrmN@gY6pO zb4>%idZXCG$oNSd6>D)d3xC9%{1Nl;N6gM2QJgeGSlz3{c8lBo#nB2Sju`S z>!qy!sj_~xwKzWuRo+*_>aT1tM&IQZQ6{rNYkji1TkJ*ZIl-rA0-v58e7ZdN^vvMX zGl5Uf3%;rnNy`utNNE^yP(Cn%GQ - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cb1b947e197cc6f5ae14044915748f00cd08d53d GIT binary patch literal 2371 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__equal/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__equal/why3session.xml index 527f62de1..134371149 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__equal/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__equal/why3session.xml @@ -3,92 +3,81 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2137c6ef2d2d88fb535550033bb40755ac677c54 GIT binary patch literal 1166 zcmV;91abQxiwFP!00000|Ls{>Z{s!)e%G()d$9oT185fTOVI#9p9;MaLvol1P-L$p z2T6Z@N468>aFAn@)Y-^@Es-1z=lJF$MUN+t#>*2ZZ9ay4)xmj_LepJ9-#|A)h7sVO zevR-av;%H$r=LB-d{XjUVKGg+SGdCS)p!+#Ggx6Y9>Wo=U_1+H+2v+zmR-$jwh>&= z&;_(j4yztBCLD%ke>3{yX0*f0@uvIm+$B5DUsgN}1e!X8(3kdd_Z!zuJ2qVyuU0sO5U)nMtj0cs)w1bE>;t*G#;}3wZ5_8Y z4ftb?T_UM-!ZV!G4IzJ|2!-o#kkG1a#!wn;^Dvn?g>u=)>u+=0;-kswB=+>lJ$-6V zpWcP&s201s??*tXYg&jck};5Qli!U&VQBu{G#Bv45sb^wd42Ljk> zO|Lb4yO)cHm`!}~P;ssIYCYLK+rn1WjQ1Ju`yl)hz>AjvUOsmV;cEME3sD=&RBkTd zTdfmMZa?(RBhV)xHC@KbTK`mO@wv9<+In?ui5JzDd`WGoCl(XmOrPtV=k@vd6(wie z z;!RFfYtB#J`ee1{>}JvTk1zV1J+0lrgN1@ zv7ob3V*$&x$-V$LOlt}xBXJV)71LbG5)(tse9i)L)-qxA+MraX*gDpiA4dhC}NlH}|6kejY(z=|0D;^mZOC~tZJ=-FkLaJr9 g8Kf2^#wi - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursor/why3session.xml index 6367484ce..7282e8858 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursor/why3session.xml @@ -7,32 +7,20 @@ - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fa436dd86d4a2eff9e57f9e59826d032da3aeed1 GIT binary patch literal 413 zcmV;O0b>3iiwFP!00000|Lv7OkK7;-#e08>bZPl(Lvh75t85>+MFY$vDE6)c>?!;0 zgYU9Y?rtkbQ5wrKvUrc-H;5-gyq;iA!7UkM3Q%zr$3&GLQ-ue}7@UI$?lxwcemGa~ z`vp${otv=~_|iTo;S^oCWfxJ(Izr3ALnnsm6%G%Wt}=XIOSeN9m6yS4(`0=JgB$Hq6qQOft|_!he7TKDk8X1ui) zhNhkKd&qtZdf1rEV_ptwqh;BK3Lyt?+p?Q22^0anN;@^VPp2y HRto?CDCNzX literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursorPredicate/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursorPredicate/why3session.xml index e1404ee97..a55a4cda4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursorPredicate/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursorPredicate/why3session.xml @@ -7,20 +7,12 @@ - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..60f99f1c154a1c4c5bfb8a1ebfd1f39a95a11268 GIT binary patch literal 273 zcmV+s0q*`EiwFP!00000|Lsz{Zo@DP-2D~(1U)Q2h74VTb}zCLXNqnGIJPUvLG$-j z6BGqH6zGsG3qg>Ff#Q zru3@N`}2%rU<&gIF<{P@)z#(I@Q>|Ej%z+sdc!JJz9;oZQuz`0XS{91m92Sn()O&K zwL>$gu`#_xV@B_-V)vk*Y~>hr%P^hurq! - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c975c867e4c665b706824a9a857c7ccf28243aa0 GIT binary patch literal 337 zcmV-X0j~ZZiwFP!00000|ILuQjvFxyMSFckK0z<)Q6zvHBl81p1r9~-3K)+kBN^EJ z`&EkcK^g}HE?6919B?f7oh*(=Ir+eosT8bO{^Tj!M=70uJ$WZC<<7n1+gzmaRtr7P z{x~NvaPZ{&v9(cZ>vZ;;zApF!H{RdIJ4!nzv|%5l7gQ`SG~5dI{+zb$vEK|{aqE12mGJn#?bNvZo_~JpMK0r2^2&sm zFrs$Z24o6C95Q%AkO08uZ{}xEt4OF2qf6pQ=3*&C@Q4I1U=9<~N~0Fa*{r~Za$FOy zlzr3@j0GL+gsc)4XPrsFRP8FD5mHD=GI^hQg$X%@F`!1_>Vrc jozpCuWrQr`Ku;l%tb%IiyojP literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_first/why3session.xml index 8d071e0af..86025dbf2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_first/why3session.xml @@ -3,78 +3,55 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e70c60297cbfc1ec8887a42eb2b425f6b71d882a GIT binary patch literal 754 zcmVvhfR?FSmxw4F#cjou8mOc%5n`F=S+ zexL=a)7=lnim!Lm$2`8H9V?fK2H*i~-*ZuuO1J`|xUsS3$+llY`=l8|NE*^KA^>n|*IGbLoVQz+5Nn#=JM*x>hnoH&}QB8w%6Eee@5Ja=%n>F z543&D^n7Ix(#@II2j^aymAyDHyYLWRIKurO!Sc`OU6TFN!B^(}k3I(e|303B>CnMs z7U}*Qk@hQ*kIv>fq8>4#%rfntBFOu&I__wAN*z7N)}dp|F4FxsHt{QwCq(Hvz#cKc z>@w}2Hq!ejJMOr6n!P=T+Mz=Y7wNuJdUeW}o>T1+Qw^7C|HPTz$J%iR#uIJsy8qdyGTMaZ3?}cY)M|@o1mjUcYK0wlkyoXanxcu;#$tk4sGyr`1g2RrJbMZXd=*Rm zu0%W(@jggP)jHEVP>pw86qRw#H7B;8NsEqTiuKJ)L@jK+_Fa?|Nh{bKL641;3{y0^ z`68i6KN8F$(8_zKK_eRvx;7mgo0y^mVJW5n%_>mRi+hX-tCni3D-9F25c)YCSv_|O kj3R*AT#)Vts^u0P&zEO(r=Wi^cLA*W1QY-_g|Z<40M%)9RR910 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_last/why3session.xml index 5701e1c3d..ebb78db72 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_last/why3session.xml @@ -3,45 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ac20328a85abf6c91b89d5fa28072ddfedf4068c GIT binary patch literal 644 zcmV-~0(<=*iwFP!00000|Ls;yZ=5g?z4I%2ZdA!1V{8svDVM61a;&&oV|$z+u`B^^ zl=Rovup7FGHkHygskRLV1moxDc{Apjbb&tIUSMp)7YuhDt{ZQg?gobjyEKLI>#!yK zgzZSX$LV$i%O|3v;DXkDy0haI_Eg{sZ?J8G?dUeuP|F!|n8m6V`!!bBW4f|_(}gBA zo37?Hn}^O9mVTf>p2l%AETh*8#l_)TdH6NNJ`gy=?s+F^s+lg&8cZ8IP>*4|Uf+3M z<}vA2p1g~59LQUX0qy;Li0!SlBVBK)^JMKhtH#Ux5F2WP_1hsA!5&s5&l>x-Njt;@ zPS2ptWlvdx-7}Am*!a{u566YT$qA9ig~*c=A|49C_n7j&P5YpDwu(SKb%DBM^S0jR za7*1~{wn9UM;Sby{k}%W*#3BRJojeqs(8_^7U^HGt|h0#l|Qa9Lz)&{OIb5|S{!ay zow510gwB6vg|DOGiSy+rCd^LEgmagUn=m^u6P|<|HDPvQCOipwGvOzzvo~S((k6^e zX9w&q2|wUjt!m-{qm*6|&X(Wd@5C8xV0yORb literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_size/why3session.xml index ed5acf3aa..f3785b0f0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_size/why3session.xml @@ -3,51 +3,40 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5cb708a7ddac3287ae1dcff518a2db854e3523e5 GIT binary patch literal 615 zcmV-t0+{_DiwFP!00000|Ls`IZrd;ryz?vi34A{eIrL)GK+#j-E3qV(i2zx4B{^{Z zzLZp>MvwwcYA0191D0iIxL(c-M>6|0q=yE!RrFPJ4{Zfa54le8y*(hTpzd%w9S%=m z8N~khB$(iK-#_^74)#d$`WxH~bt7BD&4xx=KA_+E7WdF%^d1uU)3MF<(fba69I%P# z{T90pZp%rouueW6+HTi+zi%;NEZ25z8P)CUs-F-8xPM03xNCYm_WoDp?oqXAj-~kx zT@7vDLtQ1`lo6*3e`4oCOu`GuDNP=5;%LLaUY3xd(^1G#Q9dZjrteo%lwE!XqoQmz zIP>a;yjJ@&Fl53#HVK>lWXT$v+y3s{pf4tTtnrAOi@Tk@f!(haV6SBNcb31u?_P`e zA6R@bh|fn4%#S@jiNARFV|rH(-W8*T=f|Fy#9x-)vh-%S^whBQsUCpghp5lw?6!q?V#~BD12g!2+Ux2ZBtQ5HcAnsZb#$ z!_gX{1sbbkQU%0`5gE1Qj#8zQ$`FN=iVAQ!WE)WzkRZ(2U>(vjTyv{~=D@T>CxLP; z#862R9$Yjraz$fuLOJ9jQgA$$pA8XX0V#qQfUB&u&OBuo6w++UJFp~Egj_(H@EpR} zYevot56a1yi~&YD6@|9~GK87Z6}K{29wRlj%nXwXOp9Df2UkFr`~(j{fWOcf007S- BAs_$% literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value/why3session.xml index 82de00aa1..8a80bb0c0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value/why3session.xml @@ -3,108 +3,104 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - + + - + - - + + - - - - - - + + - - + + - - + + - + - - - + + - - + + - + - - + + - - - - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d60fd20a7a9647184369933460334da46c689819 GIT binary patch literal 1808 zcmV+r2k-bFiwFP!00000|LvShZ{tQ1$M5_Ud&^-Fpx+N*y?_rBtN|mr1iTW}uMDxW zq>-q>IG;Y%O-i;i)Y#5QhKy++WKvzMuCD&qubY(Y;THVx0voQ zS_Jrgvy1QxEVgkx%r7&xH2at}ZsOf~xbLG%^|wX_`F!bjLnm$u~0!^QDE>WxnUlrFDYHaWb4H4Go~utGodt7R)&QJSu?=`$?) z(5*KyM2`trZ4RxU4latv+Z^(5zdnq!pQ0H(EHPsx&OETa%?~jF597xP*n6#$@P?Bx z%%oRL)i9sleQQnct2ItBwx9b$Q_ zL5augoCY=1bHCXRNBYh>D(&U4&p$A%x=ma|*xlXT!@s9f`U;U0F?4>nLCtpE0BCkDQE`mshvz7el}7hWmBg;x_Ppz+dYjUp#L4I^3V^ z;^^yS8_VgoBty#6IZPEn9HW#h&EwI}sJ?N~gcz;?et}as-yiC>I%Nxj|kf2qtN?2M0+^quq>`nQdhvJPl za|Nu96!0pgEspm0-Fgwpw-`gu4jFn1%Fv3Li!0iSnRCcu1cAp86p{YaaMis$&jN=G%ap zs_sCjio72hdG#^LiJvY0=W3kAmXg-o;Av}Gefxbtc?*=xKB%ZHxp0=y=U_rBP2Q9y zO{w@I5+uMos{hlM|142XRR8qc061P)BLV2eAfRq1E)D<>I{^KT2vBzbbq7!ZaGD)} zt~-Fb1E@QI9~1!liCS+~>$n;2r)etL8kyYE@e{y&kd@iNW&`(msO6wMJeW2QdT&Us z4_gab_7>L<_Zl4(k7DFxjf4?)vaOiPm`e;WIi6@?Yc6@muZh(A0F>rds+4N#DF(JX|un zGRT&Smhu9B$|qC#_@+=En#GZ3aWgif;dibMCtVt@p~U?B+Ca0}i&ux@mOsBd&}{Y6 z1)?}*uU#Qnb5Pu?i4x*EV*JZt|INnyzaE}S9~ZdsUrtoYRLWG!Tqb4S0s+@`t5G3P zA#lMEXb2%j8mg=#Ax6O+L?$GOcuu_q_AmNBCK|9wdyXwE5$iyJSKP}WfN&!{b!bJ< zh@tYibJ6o;WU`toPY9C)tfo9P_8Wr^mLP - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b2d779694f27d2959caee97c62cd1606008fc6de GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(IyWQGh;Ku?FN26#=f40{=PmYUS@t~CT2!P Z#%AW;#z6*O3>5qX8RE{(b&Uj?002$p74QH6 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__buffer_last/why3session.xml index ea62d9d1c..911b482b7 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d7cab30a54b36bcb6f1717227989ddfa9eac488d GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%Iyp|P2ViI>S{6BF;PJ|+ex#zw}Q3_QHO ZJ-3;dn*|$uF;MUmWDv^OxF-^50sv0E7JL8z literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__extract/why3session.xml index db00b6673..ff2cb92e3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8f9988303ceb9db94afe8a49ff6d657d26f2c9f4 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|LvAdPuwsNhVT9rz4cHb`D6Ss((WNWR7FCZs=Y>Idkm45 zU9=mZ^w)Q?2mxAXg#?149uish8_)YbNo*g}yriNJsa~(>Y$*M(x}?oOtC7~N(T~jq z(>Gdf`KCGD9?=@AG}5DL#b@W^b-z8Ob5_T<)n-(OOFE!0G=3g#YRP~piI%)N8Bcff zy`rf*BlD-66lc0O_esO5-_YuW>1EMh6mQ2c^G@7hLy%OaDhM{hPee z*?g*Yw38f7vmPF|e>{&Eg%1?yp@D^dP<~-PP}2G1QN`T{3i;6aE@N;XC*Q@AXXA0vd@>rNV&HCh*R0?sM>04X7%qxi{u zH=s(>+QjOCQzQeaGG+4B1}>xlji|J8hz_}0Z!)3gdnMmXl-f zIcRP|u2nQONE#P>wl##T9qOVh>fq5t*u5B|5*XKV3xYEl$E<-gQFAs1mxAX>WmP3K f$fl79Y7@&4xjD@m17~n;QaSY-tPMih;tl`+^3+jl literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__offset/why3session.xml index c6fc93d58..71e582b9b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4a04fb039f23810f5bccb071da23995752547213 GIT binary patch literal 237 zcmV19p(YU2Z!}Gibg*x{NhBAYTXch1xQFVJsNtt&Y?9 z$=IWt_!h3_7ual*?u6~O`hO=Y?$7hJo!)U~g)+1whBsb1XY?N#&(v&wy?K$Ud1$Hr zmgnVo`=}rP&~hnjqDBzX-bkp}h_|s$6cBB)&crA4>Xfmy_BpbU(~hf - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__get_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ffa74243ff83e4888d6f595effce1d38a51079be GIT binary patch literal 390 zcmV;10eSu(iwFP!00000|J9VwYU3~v#_xWLeFTmESkj?~TuK8yF1d=4X51Pa$7?Ai zdHX6&a@eqR*ASK#gOH_9pXU1wc3C4GN8I))^y3@OJ&pxaIpEKE&-jQ#=JWJ4G`yY4 zG2~aAxIrWgA)Lp#8xA34{v^D%_H*9NA-v(RuZz>nv=Pr$P;lmS zHTjEG+Kq(|C0yKc73XQ_%lVFcsye|MAF$ri)A{wI>_rim#3G(}Bp%B(*udjUdHpRW zJTHj&2U<5N?~V=b#qDx_BQIwkuL$UqTV;1!8U2*bzT06<#7h5!Hn literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize/why3session.xml index 9cbac1028..fc77edca5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize/why3session.xml @@ -3,183 +3,168 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5db672134223eeafd46f9b21d837ae1a3129858c GIT binary patch literal 1938 zcmV;D2W|KtiwFP!00000|Ls~`Z`;Naedn*}TY*~?*xBy|>I?YAxB-Gb6?`RTzY?Od z>_~Kw^w)Qml58oFV_BqZUxk1nQ`GG2%sDe>S6p@PuxZ+5bA9tUMY>$1+h4E$uAye{ zFn*ombsL&?{uvi7&b#~1p%%5QIsUb{OL&E|Wm;X9mp$WP$MJf=cf&4fU5l&oU)B8T zs!G?l-PdOM5pPq4ixip$ON7lL&%Uf*{arij+IiD`y-mxe@n1XociSzR=JuwYcWKdl z#@St>w~OuU`rv7zb{)k0rt|1;Ze~sT^o6YO|WI?JrkB&{ew~&wp{2<{!F`H4p4mz+b&#-#cK=}>h+f8U}SKFft{&66|$SA#u%?HKU zEO7oI)#m*gm8pn!TWUh+HMSiVf5ZRa@3jdKY_ON#$4e&rGJB8RO;gxueA|(AOkZmA zf5;*nNh2SyhnYZsSixol>53f-C6BBQOi6=w9sDZ6HaXlxnj}x+al$4&` zEmqt_{u?6y@Jy##IOkf}$$O&uys5q@z^(8i3b&}3NIzTB|JWkk-a|A|e%6%t?AFBU z#PoSHT{t#ioYfADp4dKXwlDDdCK7pJYV4nbYJz&&l%F@#-TSTcBwho&Yr8@?T|Sl6 zkB+oJQtTieW`20tLn(X{!~S6xGGO$#rBcKGJU#B^N^b6 zIxUy@A@zB6=}Xu2wNsqg2RCqxpH(rJsMv!ievBu7mvdTd0$UgDI6gN)Zd$K+{fNu; z$B%*g{ZZ+L=RI9kCgjUp#iP4Tc|bY!aWxMvz9gtDyXd%zP~B= z-4y$7@_jcS$`U_gJ3~K9&GHsQT7CE%{ywCOH%&L7)iym=s=i-Osan%4Ztkm1M_gc^ zQ!}SgyNL~me{*M*2i$`(Fq2QaDoo+7JLn7-ks)=ny^0Kid}kFo!6Gtr4H-!~9@2GJ z@5W&O>}mxv>vaM2<6BBF2QLhuC#{^c@@;4(94(f7G_f380JyjswZS+aDku-3L9Zx$ zv!{h0d>iJ^*wcbLp@tq+#FK^&(9j`>k5Q*XHT07kS^2_8|><_1h4AVn~=^?}3 zWUGD8Pk%t;75`>pNu-JQEQH{BwUE{6JLnWriN|Q+Z zbRsc|9_$p`qz023Olt5ms=<9pe2@B&ruwGf&O=@XJ^i!8I(Vk!AtbfDK`uwt(K?# zf^&j}Se;}cR?lwj1Jt6s><0cUcAf5*E2F~*uBw>GDW{|?cb<7I zxL_cJvr0h7KC)lne?nC$PB@4>TIHPJ2w9Mk ztZWD>CgV_qXcHoYh~z0mh77sOWTX!BbPxoJv23`GG8-d_cx?n)#;kKl$;1-4u5852 z1vu+51gSXZ!VnaSOUbx#iHyu)o?du5AykUlXaO{oszz!II)Kw5DV02uksWcm@jN-| zK=4-hY!#wnJVhU^B*IlFl}|>lavTlIF&GEVC>cXkN+%3pdD2uzWCX0Tism8%pptbi zBpwL|Z>3H|2kQGEdSARE zO^7-<$x(8rOj5#t(!o(xAc)*siHf)&uq}hYP0X0f+y>EFMwocbi9D^gl2cjCfk;Y9-NRF;|W@XRRkiiIIgjju{kDn_?8%}Ml8n3RN6 zS{U@bK$-)sTojfn#yjUgxnx}=l0}x(bELnas2{h4Dr$)_8f%gSAX**q<)uo!bnN(_+P)GvtQ~CKywKg1#n%s1%YOXyR8{nKZY7 YJL4U#3A%Ku>En{szk_slxYAkx0FL;t;s5{u literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize__2/why3session.xml index adbce4f89..3e2b9cf0d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize__2/why3session.xml @@ -3,200 +3,185 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6e664597f955d9d13c92e8d4ba9c929b9e3ed71f GIT binary patch literal 2536 zcmVE`cO{~f}R zUAXvb>aNCNG@kx+v$31DZsO*x`_Jq)xpOy}r^U8sd5RD~J62yh&F#?XS`NySqt^o24)sxib9GEKmMg{`R-yNjsj7+Fv(m zJ{tL7E&aJ^XQR>0^?2H*+32U6+$MTETMu35Jasf)Ix)R&z4O=ClTrHdz>3~ZZzq$x z_WtG0Txh9#*Op$w^>p6O+;~c@uZ^T9UGS#)+BaSBoP4!4qDPMC%cy>+7u}7!mkTH8 z)p*^XKiwovFWc`!9@tA|_58D@wXI2b`y{+!ZJiB)En+j|1J}L#;^O$H`(tPW1QTHJ z`!I`DUqrsS_L{6>`fF&vEm{R?({v{X31ALiBN^^fQ23!Wt~emC6bFGHTCF!91= zUiI)P^g!{UT+%SVcB2ZQL0h9NXf<$O&z7|OvOGE1O*~&axs*%b=;G;OzngTZUtC6i z=?1Rc0KUZ!e98~tOBI(!;ocQ`edi0n>+AS6g#6xheCDpM++C(F>}~q19gVtllbig! zH@-8urTgymefO|W{|il#1JLIH4Nz=xfR)qt4)A>(SXSI!9M~gn;Nx!Ca`rf0+(pCo zd$H#0qu!WxtBc*}#4Da&Y=OQrZJ=2lE34UYaBUib{I=?bUd(SM<8~Cs^DvutPZEjM z!8}frxHyO|-dIe3@3)3u@4n%q|1O1A5wh#{{9@c5xTY8!x+@tR z=hnvHNViEVUMpTt1Fws3-q%X6m0m0Tv@8A5g;aA7fPd3VTv>9xUBBHk$y{xh@vbU9 zuN-bd64 z$D9|0u=_N-@w9YbtLCt;5%;!v40`Uo+#xO+@&czKLR4%$|(n5Fspzc(8d;^c}>$gS_t`tPZ-LZai^*k|=#Hq{YcE zB#6Vua*W7!|KV);&^zgBdAvBec>Mj$bz>S$>8j0v9pL}nk;ORFDi{Zj&6h!bfX7OJ zx}!Kb1k@cx4+4(1b69?%QdVlzb;Aik<72HG;2G4QecVw1aJLcd{?_uZX}3y>Q>sK_C7uMttDM(mgjdU?`8%=%%B~X19L^GwAu) z7PfwFJ7@=MkAxh<-OXo0ju6!sdnn|Do(XyDM?#v$vuu=1=$vt$YlU7WvSN+QA_cl!+G1*$=9+=`D1l2Iy(c5yXms2q z7jno9fk9wSV^Rs|KmeXff4jA0vY{p<3d}+a70DrB7*S|zMM}j;G@56+mhosDoslwz zq(boMod{OQKt}S2EomPD3!p$oCm7}HaZ(TE2AS7 zWG2W37BY2}OiVtBkho$waI1qPBVY~MV71DclQ&Wcku+B_MCpL^BBd%;H1h-{GFW6x zWv9H=omWm;L4l4AiWT3ntR7j0sOk zPYI+pk|`mX#N72LnuwsJ!E9wn+6w_vC`+DF(_Hh^^(c32OXb8|aOj!gj?2htr9$N@ zNuyu_7Jh(gxG*s&sfi-WCWDZKWm-@i00ELNR=UZ|XV8WWk|7q5%w%?vaREkZ#bdED zjklhpnViW;n-k*<#aB4yoeDlX5XH(i36->*0%#M*=#Y8Lf#M%6&t7%q%1Nt$rIIN# z>!qXiZD=tYrSX79z5z#v@s0WmEhUPI93=x))jhW)z&917+Hmbyp;56eh ysxGpM$z+ur!4*Y`J!*oz*Q78;gOsF3PL3OzGi?Y!xptlRrujeJZD~!Fg#Z8zVfB^( literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialized/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialized/why3session.xml index 4eb0249c0..22adce14b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialized/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialized/why3session.xml @@ -7,46 +7,38 @@ - + - + - - - - - - + + - - + + - - - - - - + + - + - + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1c3d8d8a3f53a529ddf82779962eda12cc1f4bfb GIT binary patch literal 899 zcmV-}1AP1+iwFP!00000|LvGfZ`(K!hVS|ny)O!I_{~EPKD5{Z!S=GyRTz=OR)D`E zDMj+{OUfUS6Q{{~Z6Jc{gCJU?;Y;%6PWatKGGY^ZTmm==P45 zo~mj=U5DS(jbAN$y6+#qnPb8se#Jap*$`x3r9=7&={h)p}n9GcFzo6Ia_ z4i8IQG`?zgWu7r~Z^NZ&G$ovOy`f zBKgT8NA|h2Ru9=_6H_ez*y74jN#2Mc^ZTBT6QWB5S~v30$D0Q{wLRq5a9dA(^w8U9VW|5G8tfivMaYp z*tE}1Wnc$b2KEw{0p1AaoMM=Y=>R}X#c^3`cHA*%i9HvdxRFn4_fH1K@(N(A&I#k9 zpZy`iJ0ikVR^w`zFqH*4FBOWQi5ws&6^-M%)+T?U6d~6EEPQ~!T>;S=7C9Ibl#~jj zap=GXPDY9dE(NiomP!LkRx|C1l++^D0vSThY8hilLA+442*K7!COBn-@~Ky6NV=GM zWkIDNQCNtc^I*7-Dgb#NL{bnmx6&&gObU`kP}VcYt<$K$Wwi!0M9qT*M@*(5Re~SQAr5VhYkl(k(eT8&ES;k{hRMNt%pDLS=I%Q%D0*NF7t4V4Q*1 ZHIu^oIs{19EZn{==ofRE(PDZa0025_w6FjG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__message_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__message_last/why3session.xml index 2599bdf11..6edbe4a52 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__message_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__message_last/why3session.xml @@ -2,32 +2,21 @@ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d0d3711ebf3e4971e56e06b9c493f9bf05487e4 GIT binary patch literal 293 zcmV+=0owi_iwFP!00000|J9MdZUZ3<#`k-QJ_2xXz>pzJ)ksmNDl0O^G$(O?a&T4h z_9cxHbjGEIo|n+J>)XC3uIF=_aqGpA;>3SYFfh_644?EzbvQjFzN`F|Q&; z5JsRSPRe(Ni^yB`#y@1kv;iRyk%1(#A#!bG)Jg~MYd}*W)=17x(4K;@U5kORWgT@~ rbVQ^r`U;6AFj6fuZ6|`U$g~woSrfRFk|A%gLT&R4p%a+AI0FCx)dY%r literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__path_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__path_condition/why3session.xml deleted file mode 100644 index c6b31ab16..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__path_condition/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__present/why3session.xml index 8d9a7ffc8..a799d2cb9 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__present/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__present/why3session.xml @@ -7,25 +7,17 @@ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d0b7b42a9cc35011a357a826d064091945ec799 GIT binary patch literal 374 zcmV-+0g3(}iwFP!00000|Lv5|PQx$^#_xR!9wBa;q&;xpf+O5u1nHs zdwa40lR!K0Z%9L2EGPQpd`^B&n&AT{4D75$Li-wn?>E*)UQIkWwsyfWW~H@mIV9es zoJ=7uL(Jkh_Fb~RKgEZ~exEi4O-+7hQ<0 zaBz3B(qeV+Kg*XDCYPpwy7b{B9{6$07F2Edo- zYZ9vR4aB8HCZH!Cxz+Fpl%5O09etwxc~qF literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset/why3session.xml index fe5c5bae7..d78a0f086 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset/why3session.xml @@ -3,96 +3,73 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ae4d3ccafb07f8ad44399dfa81bfdf3d68c9b6e0 GIT binary patch literal 1164 zcmV;71atcziwFP!00000|Ls~!Z{s!)zUx=?)4%YAs3?o_E_jD3}0EHwv&~V z#iqZ$BRNU!M0H(Dn|KT6Aj|Y{IIr*Hh)REh;c<(b#@EgEE4B@8d#vj=-v7M$qk@Xz z@9jgx6|TFuyB#h!_-iF9SPh@NVyjgVH~0Nx-F?RUSoAcE{oSAh+vw{W1F3wvwrTyX zuDkfrL!Byrmm|x9#J%zOLOvO0lg|({?>sU{;H$TjQur?`eZ`)IFP}_7w4R z6g?RvM?IghdouKG@E6L^iF0^nbY z0{E+{0Pt*e^LBa2C7Da|O-ag6dwln{0M2pjd1Q2uou4wA+tb!p4}W-j+s0e^UWb@! zE;#v3&avq_-@_T42sBs_Y5V|bQx;4>4Kmg~4r@#I14EZqf%@_AG*!--Br-{4lK8JA zF}d58$AMIVnSli2n=>Z+hqk+GJDR;;#Rjh`&>oh0qJuHbnG!F>sduDA{+biTJ98p` zMT+7TDV{|ZM@Vswz9IKTzh7Gw*bzBXPiG%W7t^@N4EN)aL1wrMXSjt=eYsrp*q4i? zFvR)X-tyU`9ju4;Y~6&4Gq1*`?D}v}P7R8wK|VDIFN63Mn>D(1q|~90yB~kStNE@h z5LOR^iJQBCV?{j;4<`C@_uJ@Ey`@QqZq2a%0P3`PT`l6smoWiN-;lw7#vuu#t$Dwk zG`aZ4=NO94^T9<9RBkMCWAXoQEQ$p?h@}*XOhAhh5KJ=AS$lY9pv!dXOa@wn0S>y- zxq34GGyXIF->n0gM*#Ep{=DhGFX%JoGv+4_6KB=O?EOD){Q2Y|bHD{~z}`9PUR3hY zUHYQvz1}VgWgQbvL<69Vvt_czgru29)JAjo34Q}zMEaJr)X9j*W1y`} zvY@z?;4slll47R`IVreQ&OkKIaHnmlFqT4U$9!o+AR&I5kkl%q2P#O_{t5gbbiFs7aGiFpAq-2qVMy42d emJ-XAqezt{7$?1z&dbqyRs01>Sp*JoIRF6O%`qJS literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset__2/why3session.xml new file mode 100644 index 000000000..65ecabda7 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset__2/why3session.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..857d154157a8c3a163aa08b6d21a190e756dc6d1 GIT binary patch literal 1789 zcmV2Y<2Z;@7UO-Bn7lt+OJ8 zA!aYZ2srV6kV$6VYr?^GKY)UF5SnXvKbM|jP|)-5F{98B&W{;OvkLL+T>d7{&|h*5 z`!(0_lU$QO+Px9YaUvCJ|~6y zBhb$n9Fy`7e`5X-Ps~3P1jGacG(|WZGSC$Iwst&*;ZzE$;S3&+TAt-?{{S$Jwk*BL`=UoI31*7`cp1u_sN(aC1ZAnjE6A{ z&@uffAG7;}%%>vclk)!&2zd;S=W!$3Z%%^mP!zhZ?Rz&}3(YEqdz%-9BML_pj(Ce4 zk#``;h?1*NOre-UF)x>5G67&%oqW$%^1tMN$^Vy||FCuXqC#jNFoN%^aGbJ1?*WcG0k@qB2yk(Ju{*jv5x?z}52#Yjc^Uk0^A~^_rS+(=Q~_b#?NI6%jRRTx94OrtZv)Y?RN*xpr2E{!mI91Yy|#0 zG>WUj`)Ou!+54dB8bthG%zoH?t)VQII7D^i+bz9K_8S#%&@iQnC{@H;s3NKbPA2* ziQ9T&_wOkROB9wUEb&TN;$Sm(kG1SqK9}?_`<1UH|DRRi@(M7_U2%Pc| ztr9LNp&Ye7;4oIuKj_~~R0=3}E&za%0<26S(x9T2k}Ju%K`HVuA>+9=wv~rNJOwoQetchjws|HW6M0 z4NTF*Lq@#vx`&B}Na2EX67xLLkfnzAIFzm9xw%MU4zHfXd)0 zuN+E3TP!5w%8+E>}E8V@-|)Dl4O`HVGnk zz$Mxibx4tnr7EE^-=kL*r%^_SA?MK|1o1F*3aTPm-05CQKTt|*CLD9xPzE59XHgiP zC>qXd>Y2_`rsBq0gv+(m#wez^MJorJSmHPa=UK{DE@A?*MdAQ;P%*o> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..bc1b91eb0439344641f439ebb1e2b206bfbf7157 GIT binary patch literal 8714 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 - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - + - + - - + + - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - + - - - - - - - - + + - - - - - - - - - - - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4e8374f918dcf9ecbf12528980dee5aed58f7cef GIT binary patch literal 5885 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 Rq1U>2f(5B-O*^2Y{SO!`b=m*` literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_first/why3session.xml index e14dbf945..a3f4f701a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_last/why3session.xml index dd02e6a32..84ec76186 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_av_enumeration_vector__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector/why3session.xml index 2823b3c89..bd5930a4f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector/why3session.xml @@ -3,344 +3,312 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - - - - - - - + + - - - - - - - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..260a80261acfcdb559bc68892daa1033f1eb768d GIT binary patch literal 5816 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 yi}Vc!Zq9>tf~-y*=?J01PnZ-)+Mtbi-^u+Dw - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector__buffer_last/why3session.xml index ce7565b5f..9acca62c3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_enumeration_vector__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value/why3session.xml index 454a79426..d9d7cf245 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value/why3session.xml @@ -3,245 +3,221 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - + + - - + + - + - - + + - - - - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..056f3a909f7b4e27b40a416f487678460cd233c4 GIT binary patch literal 4522 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_first/why3session.xml index 23bd2b670..cced77d5f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_last/why3session.xml index 3512bc03e..13fe90bca 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__insert/why3session.xml index 0e8adc12c..d76997a4d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_length/why3session.xml index 8526411de..518471eae 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_length/why3session.xml @@ -3,276 +3,245 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..aad3252ec6db25a2b5ab830659be840ca0bec702 GIT binary patch literal 4376 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

    q z{tEaY6;pL&u14Zf=Juy%oo9{e>a=ohP~8ph%VHlFA$cR|iUe0-&dmYy8UX$z#I)94 z4t$y8BZ}}L9ssCo`Qv=fK)2Qf;$9^bQk2IZ=Ve0(iVG#!QyqAH6PSdbRQ7x-%pU8b z_q5LelA-jN`g^XTR8re72!0q>57MkkY81n?)AdyC0QR~9Gme6>vt=h_^iqX5@3^(x zn1Gs}`>ekdI0mgL=_W%B#e(BgLmY}E8H{tdxZ7RZC1dT*R=g+Z$#5ZfEvh)6IbZ^z zX93A$QM^Vj3b|Kk`mJhjvS<#}+v6@)QryTEvH_wj(r8SiclrY3zH4sNdkGKDws=uw z9VEtlps5cUxs~o?%uX9l=on4H&l>OJZV@-YlqPK9%F$@}!`N70C4_{O7qDC-80yqO z6mLlX)Sd>XvYC<<>s72+a(NDgNnDe(K~fhkp;#O`c;37$#(xQ(DWPJbJ;&+6JQ-i2 z*^KVLNbcbs2-eiTjMp<&iOOb!NljAM6D_Wg=eIszt&Z|ZjN1^;T9IC3$`j7uAiuET zl_hY+GJnbTED-djD1JRAlBpucBT8RIL|2qnK1XmqqRh{@MOL&z1UTkS13ZEgQp$;w zd;iHcHtpFb(uAXJs~=<00kGJB!KpDZ2`qRVen3&+OABKGi)cXubKvR_KosB@sHKAC zN@}J@9R^%dw*#`~97SL!>S=R6cH{uspF;vG5h^+z2L}Gf=CeTj|rQ#JEi2H}iG>LpU8RHB&fMt}D%dL~7;`|qr zlavavYYmc-NF2f>!iahd#Fbtx7*~+yBo^NA!4B3d`5Kp|rdG&9jmizcZm{G+oSB=5 zV*$C|=pb(7s_Y|pkM+K{I*%Al@}>p%FauYx&kWLT*4#TJ{kxD|oeaB-GeI;JCy%xw zTIkNOHUV3V`MK|az(5)sze*?jA{!2 zrxzkh*90)EjfxOT#EaC^w^HPv7d2L3c>bxhVUskEGQGdYFb-xQ?&MnW;r>xF+(S1D I4;$ - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - + - + - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - + + - + - - - - - - - - + + - - + + - + - - + + - - + + - + - - + + - - - - - - - - - - - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..657bbdd0473f02dc8122d137a8bf813bd5b36b76 GIT binary patch literal 5963 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_first/why3session.xml index a5cf6f5f4..61926ef45 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_last/why3session.xml index e2fb678b8..d3fb39fc0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector_empty/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector_empty/why3session.xml index 28cd1b568..c82050259 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector_empty/why3session.xml @@ -3,268 +3,233 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_modular_vector_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f5278f1d115c9bd5fa5a59b615799dad1dd41e30 GIT binary patch literal 4035 zcmV;!4?OT6iwFP!00000|LvXGZsW)mhVS_lxeG9Z0cu}>IDjwGNCS=On?SchtusR0 zwp)@1GkN;_Mai-j%9bVCO-t2)-I7?U<(%_>bx0P=^Up5+b?d%O!gzA~hnr5^?c9yW z({%s$Z~q<95pn;SJ|y?a-OSSBW%>2lU5)sNek%X75&86~N#E}0e~o9qyZhA4KmY2k zoWHxf8K>`Vn!F;P#w6DIRkuXP9Za$y3-=58pj^8jXbqK(uBe^v9jyoR>H)&rkYQ?L`dIKw;L-t?S--(TP zeB&M4ctS}Lj`P8HoNad8{p99|)A{m4 z_Uc~8bf0cxx}A>^tq=J4Cf)u9khJf%`hUDlx@tS!8Z?;skR5j59QDsDhhmc(=Wi04 zcOh-#V$t8(>vb8*!;+;mw(d%6zqOC3re%T&L zsbF)w*A;sedzXa01_?(%PWUw6Zw}?>lTBZA+qcb+w(R@F16@VzP z_X~Woep0_ni|%uLwdWjv@!j@n!H*}6uA~`c2v*Vz&WJ~xPb>|zrQdQ9@10e?12MG; zF|`k3`elfzZHSe-U++6UQz=#{HXJwaUbCzh>+8k(3%FR{yETS>k8%Octw=NOpydl| zQ)I^kx0@#nC7Fqv#V8NFcNszefeO2O0YH84?k-- zdJV6;%jF=d-}KFDDeu-p}&YFPpVO+UDs*RMHyy^4Dk zG3`OcT^F0=o{LRrZ8^4)sCxNedZ9-NrsIhb_3V;-^|T~^{VJ{6`(#5EU=?5$;9<`P zQMUJH$MNf>7eid$kDw#kHh+43i)Gj&O4h1-O`5o>@3CWct)kbY+FJ|5N9NPwhU>B_ zKG4*aw5ck2&CQ_A4z0)ZkHEONtka$xlw%k}-XHec(gbd7c!;h_skdNW!L+*R-%Dr{NUbV~i`10lUGNvxRbf4PN zeJRn}N~TJu%M9B}r@oBX%s)@&CGz!%o^oX!Usq4Mdir(U>gmdr?*KDf-w1MbX8E{{ z#)$?)o#OQ95O2^eetNg~8+42HprtqHRv#BkA9uTXG4}QpxR5AVEq<&Zs352yxL^>h zgk6$`NpN%I=XO26)>|n=`=L4h+J9liNoHKzzz+TR$;HVZNaRW)7BrY-Dw`^sDx2PnO02pbC)Q1jwC;`-u)(pC}t+Gl8=F1On4!YmseXXyrLStn_KaJSb@ z{&uWouZJyrjcKvCO^H6-JO)Ksy?ketDbaZ6{ zoIacR^RAkhT`tgSe=jp~+2Yrr8a0aNr?$mmnKeQ7-=Q92eM<8~- z=e>LQQ?4ZP*96M}4&tnjD~ZO<9>UJ^ZyE=>uUM>et84D4;OY}xm0QE*)}fhGAK>cg zDr6OV6?+x?(8b=BrELAlaL#w0Xf7&V7`gvMqoU_SYpNQEr*qV_*h*fI zA#Zlh)$_ZZi|)Ph_icBs+X{c&>~Trkp6{7HXwUOUXEGq<+V%~*?pz(-a_8#vikFI) zikAW`M;(7x3LXWSXEAt6jh!4k3SQkDd=0r?=HM^` z@~kkp$O%p~ch{AN9t;g}eI0P;*!MmAhw;Zp&^Pfq#K+}6K3|W5*Ry;*rN&Oa9tFj2 zzP=`Hd6}=hMC6bOB8E&5@hm}Bf1rM#y{~Yta9(~sWCHLZhbezHO!>eGP~lqPx@OuT zQ-B3JTzle7@_Wa_8#`x-1CQBC+Dh6<+`fQvAd0B1Y;N`Oj$LvF-W0-WpUD*-A2$}PudZb`Napeh2+ zcJvhi6#*Md2kNze3V{lNi-bULj|TNs6R+5**s0ig7wq%`faPlDo+_&Hukx?*f7h&o zo`!)Q5`a4MSLs*j{|MfnWlLKY^lTn9`tPGc(PDG=ifH;EBt*ut2UGw4sJA(w*3+fI!UC^%2=y-(k7PxBMQNxDB5pZluZ&^I_k45kw#z? zr(|YcI~L${5=tr6WY2S?g8Sg4NsfyoIEzLK)AQla%p-W@5Qh*5t^_7#VF!c&Hp*v?*vWvSSE45*g9K32jTi7;C&yF7s>< z8E|QaD=cA2+w6q#Fl;Hs8(2FjM3vz=TdyOmLXb-+E0mBf*iuR~ke6kGCCjK*O6!>6 zeaC&WFbYIoO36lBZv;npd6-D?oD{VzdIT&HiLtgt)hG)|3K0{GYtT1O1!Bx6nha#- z+ETiSPzpn28R(g&fKVhhk*FzjArMoglxZMlN0bakdLa|60%t{VSwGBki8=xn5Id~w9R2r)wuiD;HXgsspYXkW`@9dV+Rq78>f5{9n<7)S!a zM^YO&D9f!V5zSe{HKQy<(4LbB2bqAFhCO0P(Hq^?#Ty0?MP*wHW+;Rrn4?DU$Sj?e zB_=p*Ut$1`V>xSTVOvHr#0|+X$E|7WLfjJz04Oi01a34XAf*dl6k|A(T6>uWQsokHh`@|Kh2Ss( zPQe<3k6A91=ZJgZAX+Y~9+=!Unv#7ioz1`48!wl3CKh7%T@j9^CRAp=sNX9!^nWflzy*q#yz2CCq+rTEDb;Vm>|sY8;!oev~p74{_F1;A9IzqW`9 zNJu6GFu$!!H7;fb66FXt2I$f;k4b{Sqxcpkno>$PRADlLI>0&w_yIX7Ig7xD&!EiW zZDAVAfigrBMi?-i*b>@CVN&$TQA|yxlx;GmloW~5RB3=RnaDFU4F91>5XBOb99Rm( zq6SprHdxGjV2fsoDibh&LF7eg5*`Y`GYqb@6_}t&63HZqz%qd_1W_r)kRKpyBLfH( zpsQgIgiCb7Lwy=1FQs@RG;Bo}!ZKq*fs+EYWsXETK_ygFN?|ev`3O*_8Qe~UMXxP% zWGzJyA>K+Ur~`OI@?mKLe|@%STnWs&oFof(6?I5>NW;tcDYDQ;Go&#tz|KM_NNG`5 zQAdJ#MB)fdf@zBtWBzVuD`^`pgA2}+ z1lT4oGM8LPB0_RVE;1%x6}2Hn+ln{F$mkecm_(UBEQL=aC9o{V p4=vtS0=;*fSs5_xqs1H{LkF|ugmZ30OWUGs{tvf - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - - - - - - - + + - - - - - - - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7b7e8add674628189a62221797f8bc6a764a1db1 GIT binary patch literal 5897 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_first/why3session.xml index ed8526651..488e4f032 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_last/why3session.xml index e36449db2..93de45c0b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__set_range_vector__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__structural_valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__structural_valid_message/why3session.xml deleted file mode 100644 index 2ba13bce0..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__structural_valid_message/why3session.xml +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__successor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__successor/why3session.xml deleted file mode 100644 index e3071c42c..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__successor/why3session.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__sufficient_buffer_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__sufficient_buffer_length/why3session.xml index 91c9f50ce..4cd641a05 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__sufficient_buffer_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__sufficient_buffer_length/why3session.xml @@ -3,52 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..bab7aebe17d7f2ece3b9dfd257e1e6ecc53b704b GIT binary patch literal 698 zcmV;r0!95FiwFP!00000|Ls>zZ`&{oz57?}ykda9Y*~jLdMQ?*$01jNqNv7z$@<842XC!}#) z5BuGl{ccBhald>F0>AhC7%frh<{W5uc#@_DQa(c~Yp2IATd)Pvuw zR`$xEWH-?BfEar^dc* z;uev?@daj6m&8QGK3Es{g zU=XzlhAUS21QLG+@}ksrMW|{iUFnep20R1`C{g=LB#H>2DrCt8^U9F&iD$r)V{#~DDP0JlGpH;am>_~v%%Ki76Ou^PBr8K6G*xv1RRsvB go#8c8j+6`FoG*o5}l0JaiUfdBvi literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_av_enumeration_vector/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_av_enumeration_vector/why3session.xml index 78859129f..5dae18616 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_av_enumeration_vector/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_av_enumeration_vector/why3session.xml @@ -3,549 +3,342 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - - - - - - - + + - + - - + + - - - + + - - - + + - + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_av_enumeration_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_av_enumeration_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7fbbb2474c9becab5cab072dd3a1555addc6ead1 GIT binary patch literal 6095 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_enumeration_vector/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_enumeration_vector/why3session.xml index c3f961e0c..5e56329c4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_enumeration_vector/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_enumeration_vector/why3session.xml @@ -3,562 +3,359 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - - - + - - - - + - - - - + - - - - - - - - - - + - - - - - - - - - - - + + - - - - - - - + - - - - - + + - - + + - - + + - + - - + + - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_enumeration_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_enumeration_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..39eedf70fa5f625f9e070a16b17bf6994715c9a7 GIT binary patch literal 6226 zcmW;OWmFRm7Y1;;yPFZx4N{V$OS)lnm$Y=l5Tr}GMmLjA5kxvfV!-H7Qjmtd{@?pM z=Q;QL{qS7IBrK%=58|}Q)Qd$T;~V@+{{)7zNELaD?1#UV!0C=0ca|FmLN8wY(sROP z?s+{`4VM*u^;`YBaz;@U!~gujARlF4$lXi`RNDmI)C z@eBL@sap*`FpH25dm0JTo_?CdgTqFZ?nKO+_cB8?Wvgsnmi>MmTqPWftiz>e7}rk- zc)9k&71B{O5Rfp zpLQE}(g~;ih^VRcrvWnm%VSt)1ZLejJ6Ud*!>zRRFj@~Rp&FCw$Zx~UdujI;w%W(7 zi!(dh+R$|HtwY{c<>LOx;o!MwT7_R6Mz;PuJ#DjaHJW>3Uu*YJd}iBIpl!3PefJ=` z@r--zhFHr$Jjoo_pZ?h_9fq3O+5I#_{fSOGo?q|fdXbytFzBCpRrcoAJ?25eQ?A5N z#t2)<@JdBTxMc7{u||2T`Y=+;rik6Dga@-;8`DXjpAR zrDiG)LkT~87G=+;j6JOqFqf>kC}i?-I*nPziA6h+%XeYB+O7BO@TW|V z7d0`2d!h}cY7j^dMs#sc_^`g~eM7~-0E3U_&|Ek;MT!*&z4!|BUGAG%Mf_B#-yiJW zN1zRaA-!hoKpbY5w>*;65@8M_HJUH($AnM+?u2NPSw5E3p zxVsDMYfERWx6FQbmryMb5&W)m@#j&;Nu#8Ne^;}oi*gaU$4y!T$fUm|cv~AgBn#vj z^yFwPDxLT*6dez(Rf zLIL0P-&Id|Vi0o2|KtueXki5uWAo{coN~#zITyIG(N31{7Oj91r5Jmmq17?>D@u-U znA=;EGy@eGo*(e;gOK05^^(JSH-23+z=CZDHF9)lKbK(EHaCc8|C%!MuWnG1UB2bX z1JxgAWw#vW=P=jKCOz*bP28E_H~z(3DDWAV=KNNrSTKJU4Ho*zw??Wr#&uSfCj_2? z4Xp&4eLYKd5;Iv7bNKFTT>5Ci$cf;XrCC;)Xttczng!JCj=3H!zE~0q2~B^5cW?nW z6Y?khMxszp_7t_gZbDMBHWocry^{(THr{UR?k;wo7c4TlkzY5}LUA@G@i$)v?(PCt zX4g(U`D=p{^q>|SCBlKZofR=!bMw-b73BWLhp6QKxv63u%7xq!X>N?{nuTH`7rtz1 z_h9x;(@*P;lf;(8y70=IvPB$zC5f<39!9$T^PRFE#BXD>s$~x#Vt-=?pu)RydeM`g z%#L0EmJ}GNlmu*4^fQkilCSS`R#OJN{zZl=e#;GhJyaYLVgmJ++q>h74w__B(Yy8vqlf-f4l>WPG^Au?nM326sCjYF=4w-by zW@NU?Z(rr&wEagnx`F@umd}2H`R`wkl)6{g+{%P{+E0^awNmzp{Pin;(b25Y()MuDrh&a?1@Ta;I$dw0e{ROaxxL_Zd?3rdp1Y-< zI{>xD`Fq7d0poWw&pB{tlC{9~l?N)NEW!3&n=p9Wx88V{Zv)8-?rj~mN55_A7Ix(D ztvvUc=Q<^|uUYD2XWqPs@$bw2Ff(uCf0oND_-To*t(*8CTz3Lm@g2MktRD%@-J$_e z9-_m1uYQ-!nqtpjNw>&;0v!^bqR)MXA~uM@mglO0gb@?&72=~NDLQG^3R9vqw|8V6 zB}`xEJ`}u2eDL@DJDP&i#58Q!{Tk#+Um$_s_BS{$=-aQ8rPccO)Q#20wyZ|Vn-4{l zHyxmL|34Rr%1X1nH~k-qxfQg_hHrw5t-qYz6K3Q5$5<`yC5D9?jq4v7BD4T?I-~Xd z;9mR7j;;qtOCA<73fUmpX^^8lx&-F+8fwP`vHAY$u@A*g@nNF(YVo(k63!ob*TKl@ zv&0&V4VJG!Wri^}-OIinNos?x6uXVyYvS zgEekedFPwi0)N|IfC);av2=Mm5V7w6d2=)$g&8V`5Ex7gaRIr2GDtw0<*Ss&8*=kW zcBMQigl_tutSQCp=an$RB)ag#<(CA_pA3wq9WG^KMU%ZOU)SvV2*^AVJB|E;a<5X? z&Ql~7DVG7uc-w_$6yG|Jk$;(x?l%a(EW>3kc;@zBc&23xpU?e@}_?Zc6_<{w!YKY3$e8c`t|IwZ^SL;p7Q?9W@IyzGjlU^C~z(7Vdb#d zl6x@V@Dm9CXU~=SvA4B3#ik<6RBGjV3%9Q8heG_ts-+WsvWG&shj^Q%nST3NqGd$h z+w)>iuWI#NQVi z*9>%|qS%Xw8_?6BZ$z;43mn}qK>gZj2~m%*k~y6pfDkNApV>at(`~kBVs7H%y7KAx zMomN`E29iH`9|`zN8d(A<&*r#Dz&vv!;bR0Z7poGM+viZ+~ZP;*zj)ur@{ z_gwSD^r*~Wu%|`ut9Os(gSnS@(vbGWjm6IEtqJb@>WC_V!H5;nGd*F6@ACvdS2`VL4VcV!`r1;DvX`Po>S}HDOXqP+n~9{{an9Q&d%eg%>#(m&rhC_ohy8U+2*Is-nX=(N|`_6K~=~o`9kr0tc*; zjkl-Nezw_fz0}xmgo-+n+!qtW#ie+utTC;Temg`;Cm}av)c$jfKMp-KP+SY)vV8>h z{^`3%;%|{TR=XJqSLa^j`Uk_ttN_q;?)jo}FFi9s&P(8U8uH5At)P+CQX&UfER6op z4wBRdX=7h5+ZU&TECv=wL$8I}=|8O=IaIw7TAZKM40qK$doQp)QKmD}M2FKI9(nKz z*MO9XPphFg&NU&J6gl_Eb+_Vm)z2d}FQKs;R;mJK4|~d;@-4wN&>E?s2x;ght=Nkk2I~o7M!r?rvd5Ytc3;71E{KEpTPO8f3(a>$JNOf-TH)(CL0P>MXNB8j8MK&6e5NxlkZSr}mQLV#Oo1&S+Mg;o7! z2to9Q*#?vSCg;S4sBG=K3QMkQmjr>j4vyV4hv>_Q$P^v_!hnezr^53`W7hxQ4 z@Q($fLWd8=chDOrlcvwAYgKX?U4tXhk|9U=YY8PU5Up-6m-gPC{w16DmUtPyM}HqK z%CkZK7J)o{@t}`s2bH=DYHt)O83G^*#T`CA6Si$q-s?eyZ@!-yI%Wj6BPQ2+D{dpY zSEfOudEaE{Rc1fb$%eG{)qk1*RS@>Hjlv6*x(A}RNI`rfe%b)Gwy$nWhp#bXRq$Du(2*_(gubD za{nc0I5Vx6O8m8OO`<$RRSR!yEIpGnM%ani3W1*&_c{t8W4mqg37=EC+jCh%Ga$b% z`PAVAB6kvVV$IF?J5Ab_D1y%(v+lumoNq>+MOM9)U^Qj5;j&&(AV+I)?H0sDdA>b-Z9{L^tf-fKD^A&q6ZdUvF!%@|8vJy7xs zZNt#k;GaHYTROiZ!yVwpH{tY?Df~a| zxq_R#c3Sx8LbKvxhI42LjSV<;|M6DJq5^!ZxgS}|C?l}kyq((@616Cn{84CwXJ3;^ zlZ_YR$b37n*NIROp7&3X_donKW9NHl{HbC+^!qIZI>lz&pn>Jjn(_av#0`5p*ZzO) z3b&^_^n$VXdojlt*&F;{!z1k*FrHDm?*Fx(c|8Gy-YY5p-&pNiS60ie>gG6#sh)YIReb=uKil3*@;H6w+4XDXhE-ma>s%C%orll4NlBQS*h z=!@Ld)8;5sh5X|C0>4V0hX%V2A)GJSQ!{R-4G!{8l+TRyv@8<2Y@>8oYM<=KNDU2e zzv*q&AVJ2x<3i^)Uu9YVq%hYF){azFCG=bsjX1v2Oyud#Op>`Qn5kCyUrW(I=<8Cj zc$j!er8(}LU?)SX(a&eODMu=GKc1L0re-%^n?lQ`Cc^1p zOtoXOqdhdo!Rm8+gKAnDoJfCy=}^}{iv4j z7V{PWGK=bcqoM#+V}ih zCXE@l%#I&qCNm_=)xWc7n3lviS?I8rQv1d4M%k;o8yThR^d!}>d9#1M7Lb{JO}6L2 zrpfh7L?lgU=CvsoMwo5$AY90DXW<`5dA@u2P z@cKNR2Y0S(gF5vyCw-SN(z$YCb|q;k)j44TC`NOYLX>x^XvAtrc<*{jq2v&Dan2NsZ&5Ks zQ4y~-ljH3(XOF_DsW~Cendt7(g2N<}-76iHGwjzzYC4kqfqQsHR3tH!SR`tSY7BEE zhk60>R4lMJe=vUFkXe=>#krTOe|cM}HlY_MPI$XG7Jk zZwuoVCo5!224V!w`L4s#B%6n1#f?ZQ#TF?z+ECDRn)1EBe^NxljQh zswDoQ&0_e#J(>3a-39603SN7T2^M{#4i@JJXPo6pQ7FWDgo;-beQXG?F(uwyNxn%H zYubPu1uGV{i0p*9ZY%EQl`yK*>%LLi8H;iVnU_Jl(#Y}_1CPmDVvz=A9yyV;qXFAn zponQuWQyzWA(19tJh)08YN0HqW0EY+s!l91`Vy5T4-bVb6Wa&?V4TKl9EXAokPw~; z#(&hpDZ(X9@F&s}(ZvGz*)_)Nh*HauL($;YZTY0&3BTmV>!T1TMoLMIf|UdjWfZ{& zjJFqRb)xyE&Z^>{;=obPWz^+_q58F0)5n@-=V_JRUluH)Nw0qw;^OFhl&UYRxE{^{ zWw(T2tVwnO8e)6#peV%@x{BE1F+4tMis(9%G@PbPe$n@@{BSvbQ>8@4yUWR;dK-0F$&MP_L-jmdA*h#nBN&iAL_fc$jT)ttfP?O;6zl1d=# zm69z}KU--sZvg*NI;1a)xK!aP@;e$KD>0g#S)D2}6o^zyOAstR1IYDephlq~!gt5R zQ?A(>J$v;fASZ<_1@Hl$?j^uV1ik_~d(2IbvQ;W!q}h1SADA3fiIe98;Hu7_G&Z>nPrV*g!I0a}?>060*#~dCh8mpBxxoq5`7KI z<7L7_#y!dfLOQbC=Uh>mMv!?IC{k(~pi#aDL^g~KI&W*^gOWnk1iOlJq`v3rWijoz zeJoWrKlUdT7bq(g@F1qt;F+WNLnKE$oI)wh4?_pgB!m`v#2qD0r-AMgsL(5Ag$1jeyogJq>4TfMHX$rs5Aj*jk>+| zh|U=|O2=Y;8NOi!5X37v+Kdnf`E!n@@a)@S;HRf>vhK6e&WWL(<|shOgg*tA@UlQOKAi<#WIcDXUS;>I75DoN?!Kjlw5PMX($^qQbMKvjM zWiJE64c~`?ST8Y^Cd`Z2q)(g9#Zd&qMpiCLmD-kq*u{twLK}UFGG8j1(RYMBQi^uE z2hwM)FQ#~0!05(aOD1EuubU%ds1&f~3<_Z#6SSmm1g6uA}Tttv~X7gz)pfZwEqMiw5wFgr_v9wr6s z&oH`Q`H@J^k^!e&HShlK96K8$sEyy5Qa@D z)=KPyKJdl{pSMq}XSh*FPsSd-MJPEdS{v&V)oLqMwku1rAU*~m6313lOFRz>2n_g; zJj`N-Gny2S*Cry80x)iQCwQvS6U&NGhW3+%Iio>nZWuhrVhF{K1gh_(^Pt6;n3Jdx zc06Qwm@9It#;lK$2e4quktv$k8@-R^hVAcBnC1(rf)$W+E~zHGO$e1GTQahU0Z9zJ zUIJ~g=k}G)Uu>pG=O|TUtb4FN4_USva_2`9Q(>5cF{uohYdID;@#3w!-m&QhFHOXo lH<2oZT?nftoeQ$c+wNI&nto=%sn17X640n` - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - - - + - - - - + - - - - + - - - - - - - - - - + - - - - - - - - - - - + + - - - - - - - + - - - - - + + - - + + - - + + - + - - + + - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_modular_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_modular_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..836b45a9f4f862003fe07a7637801d158d5e50e5 GIT binary patch literal 6392 zcmXBWRag`Z(+1$BVF6icLAnJ*y1QFqMI;5Jkw&_f?v#e5Ls9{Wr9)tm?(P&^y7Tw_ z{<)9lIht!uW@uxu0spIKBuvF=OF3=e_<_WYG9MTJR|g;!|7JW&g-+Z3a&UKK)5B^^SobZN5NtHJY>nnwoiI?c?11~STosld>*Ko_w2m(PT-lh_u9jS@F~kd_iRw2jCP9q`Ln3|`R&vf3L4tnJx#|e zD9w&*X8|HNPb%R(`Z*VT=jrq`ASCf%L<7)xx zoU+c{sq(<`!;8@Sw`Bxe*Vj|W349M{)5}L#j&e(B4^M`SD-U~f3x)cD&3k=2hctU> zT)0o@apQ9A1=a`K=&AWDfi3s?Ig-*{Fd(X-vFx8S&FhtsXT(ZO{q5gVGueg0`IU;o zV@I`sb>LHN&CcgN&bSJ&o#7ul&lp|H80NUe`P;drZ90f|I-L=B835b_0ZyRk=F&#C+Ai?WW^&d14UQ^ut64P z(zWqD(Clf~8L8XhIY*OltUgm9*in6GNsY*2Ao))rdtYsSNX z;*|t^p1-JUmF^81Xdh_zRX1I(sB&|&*ZR^ZPAoq|Jy&!e+_>9LcY;j?*5Zp?e>xqc7syx<3(OnWB5Q5}*6NVh#(GzZ7fpZ6I^P z&XY`hSazQ^ZS}Vact)N$HnpNHt@wDh*2=Z6%r6~#WIN$ea$Re)+T=D)OJGX|&^j$4 z5-w*|g&(HWGCIZK_qOI=46k&lYJ`{5Jw6=urM)`-*kl7=@oar*vQig(byuVNZ*gW_ z)qK!g925@*bTA-4JsY-<0gylg6mpmU^T$6!XXM&YQfj?2;?b%Ktlw7RHI!;``ba78 zYcx#%H&%w(5q`}>?7Av$Q2$(`Y(9Z}K1)pCC5Y#t)0oGmt+useQeT$(nCV9MYu|kK zu!%rsLi?b7{or|RQ(6bn$^M)x;=XUKx?10UZ? z!ge@Yd8dm%MJWKQvumudU0}NOt|jx=eo0$dAn+vZbIuEA#DDspW{=EBfh7A_tcfV8Xe!Ss70G|TvH*G&e2 z;1>#5V#mHEw;OeP;Tzxnl~{mK%v$0d^5fC@kr7kcQNTfNo=J!QvBsml&bZjyMbt!kx}wYj0aB}!w5*GjU`v-DLiT(WgH(w z%r@I>!>=muEN|CYpFx_n@y-lPQk=YFlhedL zHenW;kl>+AgG0N=G2@~l&F?Eka0bK->e!k6G_FFNXdl3^W;I_QZCL$W$OcRa2y+^* zLb)25*df-$a&S@#qO1+J+nLYgt%ur(m|Y!~@;7Eo`Pq(|d_`0>E5}k=o8?ny&gbFw z1OHh?Ge?eEY4l@;jhO%u|53!L>tG5QYH)Il8>?41>nQr9Cv{PI*MFd|aXT}kX{Oq-w#ofzW{`)qG zAj;Z9G;cvtIqcE*!qXjn$69= zzL*%3>KKCL+KYIliy(Ng+fma)sXls0L7o$3^Nlz5Kzg+dUY=q5OHW&@Hvhed%Ouax zi2BQd^!6hSDW3)30#Cnf|1I0LzSvT@LBesWZMX4%LgG8@rN`Uh9s8A0OMQYVeG9=O z&-038==wR!od?0jja3nn*380;7hO*lK3}DNl1a}^J`*U>d9*XGP(KXT$8D0Bi^$3Z zX>>mYpzjA59{M0 zNaO0s>yPalO{bf>h~8He7!tIL*Fc{dJc&%qC2QXxobO|StUCW`R%O4SrO~I;`o~!g ze0KTRTP5)$XjNd~g}SouT^A+)Llr)i zT6K9$L#b&g_i$_bcFNrHse0`>0)9wJ<$sgZY;Nl50F_|2X?r}S(9aMvG`iMPWLXG; zcXdz^lJ7I__KUsZD|q&9Qc+(CNLmu+wHd}`0RGR_4r%+VKSF!bsT@Ug#dO=4AP79y z)0m%YNnet!XZtoGdb`Ymh5dNo$XCze8TZyh%A)S{22rPpE6~x>CLvoT(*Id=BHW8o zA>C8tx$W^PgU{au-?bMsT5jp$mrau&A6J^=KK{J>8e12?rL8n5tAY6&N(F`9$J=M; zSA5Q%*;4!cgHGwq_Y42d&$)+BThr7gvTw<0dC9H4vwFo289qbEHAZpLF6cd(O>pxm z+lco5p#ixwcO^bm*=^t(@LJ-9{ZNnbPgq|_4VH;kUkMFw=varxZ1=n%(_%Q|Qi;HO z${a5w!PKALp~uII`z^e5NmB7P9Ga^ZzYV#KUd^45`)%-h3a>+@(||jdoPB? z*Q+LNff-pAn9@tKH&XYkPirkw?KIC$Xrf}wclDdkea~EZS2nAVhyyDEp2t)IC%sZM z+As`eGFG^>SvP<&$V5m)I!(V@saskFM^#men;Q|@)ijWysm~h}z_HgUxW@H0sPB5s zS9sl(CNTn~b6bfM2>6d9A>hRSZG*sX$QxV?;6ILGs4G}t_(yTIar?V8;(%drkwieB zz(e%$NkV%-suQQj?M#K+NLm*%<|%i8?}Eupsz2TLn*Wh6>~?Fa(QMCP&{m_dvP0J! zF6)z3|F^<`*(e%x+uWXE%ekH^RT%iOcqZ;zx8zVFhmChCPO&u!Mb(Ix<`Pl|+5 zf*MNg&b~myBX-V@CT$&FkJVoOuTYRu*Q|N`6Vvk&jYZy;Zv*V@pdWOuBr5yKCcQ4J z44SwM9e@|I(e5^1hz0~3TrmgqHs*a@W2txNJ(3*aCo0kO&qYc9_j;xGE%;sCjNd$0 zdB4}$imrc~FszyN+f7m6*gf7afXfN=eUU?P&FZOQ#P7nvD%&A9p#y%A8u@2`NqtoS zyGfkfkyk6y>=jxc3kjDGwiCmAiJ!4Rh4;+c0Qo>|O4@230Yyy>QMUZ0VvU17P9RND z>SV`0&!XZnE^P?^ojgC4I-7zd5;>>#XGxM(yiI(C%UZg0>8C=Slpo3GaFX+*sF{!p zk?hfgzmuAOMBEiCeT+@l`J0I8!8TA zQt2_|kH@x0R*Qz*^evs2nuv+2N}NHn34$b*+VAS@V_)Q)_Ym$7EP%P?5Jf4vko==aZyN z3}-PIT%Gps4Yidbb0qnns^$q5E++4xi%)PnX8UZmm)D-;rk^#ci|-;EwoFHjV_?Xc zk?O1SBZj9Ow6>-l>Nj1l}L$nD%Zt*>Z%DK0W3Qx`Q@XP^PZf`7^uAaJd zseaV>;S9%kB{DcUXT=(5KwqDY)q<}F={#oWk+YU|c zf&Qn`T)JLEiv>MKEgh#jI|t;44}IqryrSfXq*A2{9JIqMWTFX!FrRvvYrx=6`$!Xa zm^bmwF{2~ZkS{$ihhVjH)Nin2SiMwIeLA$3;Ae<^)iOGgCmUlFfCS7mW=AWT-Vgi?1N=uw1)zCrs2F*o5^})p1&n|+(;)30jwWLpS>4bCEs0sl~ zGC>CC6NLGJVr%R^t*U*^{i07dw`uAz&}hzdUqf} z;6jo@D$NvLDle=;4jSTfrJr_Yh^wF-?RS=J6_n$Z|4nD?JNdtUU+RWQUaZda#C+F2P>r+#lA zS0$><_;&bQ_$-H09lM*$lduNk)72Xap;J9v{G24d$Eq0r+Ct7kM|6i|qS-uI_0%Fq z@b~)DVj-x~PSKy5fv4O`60##Z((sj6Vao^)80MwWJl3Sf@`Iv@r5H@KmXva^FF?r3 z#GZy;l!7tR0B%TSFR)d?ED)afY96EnhT*LmmVS*1 zWueap5T;n*h1u`GKGEx6Xl#DWvJ2C7v$l<+)pIw=c_1b9$$^*%IhL+T)RL@#!{$JoJRUA#K+OY2g z;}W>w!eL#r%xj2X^@r41&JTZ!aV4=wB@$FvU#e(D?a#_zCY8iqtNy~qQ31ETpdwMp zQvRZc>rii|{Z1w&`7@3jueMF8(ey9TfzK5D9IUS+7o&R}nj3m-u_1~`olq^~fVW`0 zuhvtaih()SzPOl}4jB;jcZKT%94Z&HRua4h-B1UHAHY<@YKF2Lmka1SoT*ys6|<7s)9l}vn6Qb>lybKrZJ*+Oes**J5d|{CYX=^66I+VgsnU2dMxGDlmwvFN)o;QswX! zY&4P_VOnlOC_F>e@_F_#Qo*}y_?joO8^T!D^^KY3Ri-_%;oWLQ+TznH@2ocbRVX$n zRJz23-E)QCl+;tuMiNogRpNVX79;BRiVLakh?XtHE*pZJL}`m6CeG3QtyP>2m<{=g zNfni|Uk23#c{Ob0ljW1whYKf$o~g{VX>f{ZQg2X>_VV!>*~2WyL>|^usIf~xY?mw; zj18dJ4YmCh%W_vluB-?u;+#H=PGGOtN-JAeQI%CPJvsH8+#7o)?LQ#Y_wMovy10xY z4@Dc4A5s~j60wQ3<5`8>VC^#*iKZH&XH^B_FNfb%g`kaR;%8|gC!~c{WgFw2vRl+K z=Dkpg$ZD>Vz5b|+aJA*l#_=%a+&FscXEPP$W?Oa z8zwcF2F4vg8O)A;R`L0yHNg~Ud@`@cN{CuY;U%iUBr<{}Jjms>6CSJ|q$OsC=D`7a){>ILRW=P2I^8PD`3JcPn6s<-mf+wCXtByFpob#?g zBW$>)>Z!tK!nm7f;Q)q6&XRP1$Rp$l3qt`J1%_(Ozo;oy=2g3WgQfZT*eOt^5IU|j z-2^A9{A=1oiBTwYM)~>H@;>2e=y>xzC`D!P%Vb@7g@Jq%{Jf1I**k3fegz;J(Hl3W zN~2g1@wIbbh96PTlHMUzJGHDCLXe)%E#C@{9ArNJMlQ#iZQw6O<2SlxBUK#`YZhll zM1@_~00vr!5;O)#KWw?6rhnVTk$??J%$DQ*q2Q_kk_y)9JXQ;I)r|j z@2EUs+4^A@0U6MLftss;&f7)4j+esF3CLE6YvT&*cTK6zVQNq#Dh~gmo`M*LUXc*0 zf>dNVOEwZHq!n7Ux5BlOFQ$ts7WL7iwzK?Xr+`PX7Z_1wM4W!OEfmX~yRrO5g6}k} z!Mk)CAQ3YGX*6C$%4w*EeDPQ&F@-*bs|G8i7n`9tdELW^;mz)kgMC>RC^$6@Q~#SA zpaL5_SQaHtZ)OVFoaGq$$f%~a5N$VP%GO2nmnAs|j{Dk-!QD;C-J)EF@wl$r)`9>* z#0mi&bf-l|g1o=-*%}v^u*xJp?8*R8nWv-LesvL;61|n5ErpnZ?o!;80i%>RB1--E zvvSY|n{5nyW>%(IO`{O3=+IB7(>JlZpglfCVj9j zoTM5=pSW&q-fi5b5zV3y8+0xEwrX_MOb-LbYxqtMw9HV5lFX1z{2H~>YLeeGR0_3X z9eoixjW35^Gp--`!TM@{uk*Y2>n0$#IG^<=er&Jt;x{e2`lhYewY9jANPz=h$g7Cy; zel^sI vMnRuddT~A{b!%A%5p2WbKS}TT(J5yp*4-rDkH^xgTt3707M_f9Pyqi2z%)KI literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_range_vector/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_range_vector/why3session.xml index 4ff3a5536..d4815432c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_range_vector/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_range_vector/why3session.xml @@ -3,569 +3,366 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - - - + - - - - + - - - - + - - - - - - - - - - + - - - - - - - - - - - + + - - - - - - - + - - - - - + + - - + + - - + + - + - - + + - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_range_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__switch_to_range_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c7b13b1e835dcd524ad6728c2662cb770267d704 GIT binary patch literal 6298 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 Ili=b059Xs85C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__take_buffer/why3session.xml index a8e7726e7..c4886fe02 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__take_buffer/why3session.xml @@ -3,130 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..63348e7616748434f6a5d9d315aa9ed71ea303e8 GIT binary patch literal 1402 zcmV-=1%>(_iwFP!00000|Lt5&bK5o$z4KS})+-j@IOO1qrMiE`CEm?bJ70dp z%^a59?aj>2;I==TnYg`e=x*KJ zx7+u)rl#X&e2?2U?nks}ZnIr&w(P!l=XBqv z$4vC;(ye-joR7l6*|1|dWrvuK#~b3raN-0G&cQnlESvzHBm2ann_P*PSbhJtUy&M`XKMV z%Gwvn+Up{1m?iEn?x|nEMIkO5v6@)4X;|1a763UdDN%k9#hd3F?SwVYf#b-3oM1%U$ zN#l{G^;Li3G}hD3bvO^OC;NWB_(!YX*!gqw-Mxc1-Ob5H;|T`b?=-#{CpY^)XKETi zbi%|4l7dX=y@Nnbka0Q3Nah##O{ylyB31CY*qpTm@a9EUgA{Om>B-J2kRZJ=o7(faYAxRq& zX0L5d*0GUpzzQhT)KwaO-ucPaV)cBaXEi6SKLERxlUe+bc`G=kA>3T$Mb zXap2dfiNiqvIQxV5@-rZ5l{^-aE;LDF;bE_J71#C3>b){F^U|f-sPT=w16xTi_}>- z3?)V_6lrIYR}R=HG}>}oOgW)qBvdBmP)c#^0iAN8XuG@Jn`muQ5?;t4qjO81Tc(~yY}L`FiV zb3vYkwn_#GE}{nL0}Zwzom_Ilxy%75DFA15E`oE|ViJD1qieD@l5^XU2B%FdB`J&& zweisy&f4C}H$JD#ydjaD;GA&QYL1{W;EI*j_E`g=A+pJG>O{%5#`MD`>x&=E2WcskCb~WVD97~1oG?^CuZT$VJ54HG%B*xdsWKjU(<$6 I70X%x07;*_c>n+a literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_av_enumeration_vector/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_av_enumeration_vector/why3session.xml index 412bca2b2..e3f82338e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_av_enumeration_vector/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_av_enumeration_vector/why3session.xml @@ -3,260 +3,205 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - - - + + - - - + + - + - - + + - + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_av_enumeration_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_av_enumeration_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4c815507448748cfeec08e7ac18476efdf9939ec GIT binary patch literal 3564 zcmXBJcOVoD1Ay@oy~w7FOJ~OsF5~Q-IOojl5IUJ>?@mSCQ-xSgR3do{718pkdq9ci@npy$N&AZ5geuQhzor zz;b2{t@6=!udI7Njm@knz29SXS8_{G)J%v|?^5_lY-qPEecp!uvFcs)IC@}NsHnLL zY;3>P&n8E0-murwt|ObP*u|^Fz&siknnX8R{pe5Vq|=lf5UPK;4PINCb82hthTm#N z5td=yWp$twoN%uCj7{8RUT-aeaM=< z-rWs}W#A;iV{oKnVwh6FGGWpKahQCapnG{_DZ5v^bu@?yZ~1z5)>*M~XIFt6sKD)* z6mi}cId$DPXcRD92Lqs^5%DyJT?3asJPK|V>3Dga#HVeUn zH63N!U0OYYLm_(aaQpdBC%Po6pKkve8!>ZVcVPu+Wk`uA?N@lR$nm9yj{D3LUx}FC zTy6M{u?cU-MB^-kq|JmB0_><|=As6+=rPr4qEFNf2qB*C?n~WDGUE2q{$crr z)we3w2XBZkb_=UHyLNU&-R92RBu=kzinX@Gdr(R)n>&y>y3=2;_{>+_u$z0`1aQ;0 zeQ8e7tqMA<45%hpxn#RV+SB0sh|*xw;(&r~F5kbpb(B#s5!Dp2oy6iiDKFlIn~ddCTPF6=wpGRX^s4zl=BkRr*UgPRWJ* z0DF{hLIePlk?##FuaGwNox-=Ql@xu%;Pl}OfD1d7pV-mrzcM#wmE?}GTl%~Dfn4o< z6|bshz;tbqMK)VIO6f^r)}G6?GTi|K_+{I3G<@&J@h&#GnKL zO|2Wt`5;nL)>#yG4&{oPI3qBJFJP@G+NdW+WSgaIvCPxc%tpEDAecQ z62M`Syk_!F^kK%kH#vmTpX(Pa4Ys!>=wpI^PD%7%2KZ9DPa0qPRzshL`rTZGuqyiA z8Tk-Oi}+-NZMOA)jE3`27=(O>mRa0yAP$!q7W(1l1Wlbj>A&zMh zlD><{?0ZF>_Sd@YwEW}?;A;l}w`UVg+;jP6B%C^@pfTnn-;r(OSra$K_F(RWCbKiH z@nWk~5q8w4{VJs6ZdI2E>Yr*>+3n!~U@nO+&m5TdSwE$o3k5XFCTO{u-q=;O;~6ej zNF5T+16>IN<)LQESDepgkE==NAncE?9IT3=Z=>C@vS+9ejMt*?J_DLq5-wS~Zl2`Pf64rHz5Dp{`rOD91zKAd+X}{)Q|+DHrs^+yg$JxX zHok@$j$7y1_mFZ~f-9%Wq$G|hN%(dhVLo~-Jrh+E)l-=gioi@R^+x$*d>k2mxu$;U zbQd%>P)^rdzNxdHfm@;(VYToy_4NN0_}TjQ-e~~W7FK~_!`EFRVLljr4r@krk0z8^ zPHe-mNx;Z`k9SVbGzrcYTOXQGcbrSB%ibsqnP6dhk!=3$A5Sd(n5RNjvu$e;4Nf0f zME%7!GrTi93CDZu$c;Z`rUj#{$X|<#za&Ft6`^ywU=x9wd&r+np@b47U^LoP3DohI zHH-BS(<*5%OD5{NPkY-5Isn%#WyNpEKP}H|h`p4`rjYjS-9Xdbn2|E}rJZTvrBV*j zH>EMY(&0<<`*a;1OwpSyE!>(M)NRdF2Yqb-Ah$n>e9Wu?3UL17z18(cXgnt2AL6*uvNfFR&92ncuAz|E?o)zN)9g?%YD9^ecWBfPv%vdqGd6?#&@%M5VPC84IJ&|+ffp(k6{8OHE7NjEORz*G1W1>-9n00q}& zuld~V70Fc+mV))8Xm8bc#g%zHb|Vl`HyZzcc@LuV9dFkDxBgDXoj?TcM?Xm7uSCbe znTqO+2s9@SDQC8z$_p`7kA7PlrKghc=fUp!=OCLrd-}H@_)+#d0bRatALG9T3$>4x zN5{S3AhO?2)L{=vPJJ$vaL8kMyVx)LsCz10XE|#_mdZpcI|MG`k=H<-_^slFKx`3< zla{SW@OJzhD!V7mPc-7L$qNvyNwA+I%G=`RsP5?`HN4ZKB}Ru=foiY>Q`C$#cd4=( zUtnT|8Il$7fg*5l{RFjQ#@ON*y}^gPoTmBz0Mks_5vkBf!_GmfJMR(f9FF$sr5c8u zUXu@voZK|IeY4=QeA)m0sED7S@lWH{w=*1#4Jv1*CTZR(p}8dsee?RQY-OV#$b&w6 zR)*yvtuBqD8BHpPokB{Gd?nz9I%pYMpTPg{d_xl4+e$v;jmto|KVeCoFJ|VaEqo43 z{?yxO@*#^Cop_5gJ$AB+Cw6+!61T_!K*KF8#R7c}XvgBqS2 zYk#4H>j;^M6h%^MgYU)j3>29F<^^P1a+>@%F!u~%wzVBl?~-+}!s*E)(8t+23ldX; zBV>ngcASBhFuU430GBEttPO~SNrMe|MSe$Nn5Kv?mj-odKbRbGL3tj|n5{}UibQhR zW2lxJ4ocGa>u+ZcSi>MJ*Nf}xxDkAXnQtZF3A$>JOGHf3=}sCkDO*g8_g43c8T9j^ z6z3k#yx(Oi)}_bddIl2lFwPW%)Iu~yC7WiU!R`s1Lm-cK_>7NoGeZE{8Cx02^BvWA zy7n<8J7At?aU5MnrTucd9-GQ&^vwYJA!<}3L{DpZ8te?Ds4pBO+xj32;}EI$ z>FZ@wY$(dKh0q-AY>nnz!VxAZygjeS$iwP1(;O_#&w30CVq>=cDSIap)`@5ZQc<1QpV+=~sb~w|*%e zGP>3(@BlrV#iEjK7~7Y$kY?w(L6LR$M!)$Wjj;qHMifoH^PKXN)wM*8vT<*<`XfF@ z7)t-?PyR1Oln&{(ueH;@qpnp_2HaCHd!2stn6_2d?$}d;D%pAA5{wQcw}M d_^8Uv^oIpy;vQLk6Er^xAEsV_{$99t?SBd%?WzC( literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_enumeration_vector/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_enumeration_vector/why3session.xml index ae1792855..44bcdd5cd 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_enumeration_vector/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_enumeration_vector/why3session.xml @@ -3,260 +3,205 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - + + - + - - + + - + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_enumeration_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_enumeration_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..53ce84c6b45e2576c898dfa2f5dc3966883cd60f GIT binary patch literal 3566 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 g8fmL4)~-^Aj)2Nwtb-2eap literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_modular_vector/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_modular_vector/why3session.xml index 31e7cb175..74b320212 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_modular_vector/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_modular_vector/why3session.xml @@ -3,260 +3,205 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - + - + - - - + + - - - + + - + - - + + - + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_modular_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_modular_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ddc7d0e33351a4132018c553757be5983de378e5 GIT binary patch literal 3569 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 - + - - - - + + + + - - + + - + - + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - + - + - + - - - - - - - + + - - - - - - - + + - + - - + + - + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_range_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__update_range_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6b1b0ab17320126a1fc9f2cd243d79f72cc8ed3f GIT binary patch literal 3574 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid/why3session.xml index 593d06445..f2fb93dad 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..831d2223aced9e5637eb4c6d88a5881933258135 GIT binary patch literal 596 zcmV-a0;~NWiwFP!00000|LvGdYuqpp$M60Wz4xN`1KPtL61q@&D!z)bG-?gb?$*+V zU_{pX>XA3_KqK?q?tj(NBUq2P}#t|EqThNZwan&cjb6ykO) z>oJ4@N)2H%VruzkTCXr-yz%jbr?_5Kydd+PvqIvs8Tz^lQ6Sa}$U|Df$CgD#Kd9?4 z;^r?x{F-d3Q1LcO>PsBUadK|i=@QcA3eNf%`qep%J*?`q0$;~1!YK>|chhNjM9Z&S zJtl7OY*Q~o`3@Uw;00yK{dm)~qjhZGR!v+z@XlM_iqn4u8UNoYt5Zq%wIR)>VEt63 zYbDM4`$ivH1@BuK`C|X>UlICn(+4dfzpbGbQ+{JHimoVd&FM;JagXK5%E4-w4cffh+SflEx{If77Ppiy>h#Tr^i2JMsb9RRhbaF0OVmLDXiaNhw&i>8rDor!tftY? z2xe^7iVJW`;GU|+m*5Dog=Dn>2~!^F&!#o4t_IIE`KjmYh>Q zGif#DmlTOqqYXolU}Ex&8#K@f!#%lBl7`fgNH;vXB%J6HBeh5=fkTlENE5B)X)1wf im;#--$C!EMWS*o^Xrd<@$Q-9|w)qKL6XIF_761Uf-ztaz literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_context/why3session.xml index da391abed..30673e19e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_context/why3session.xml @@ -7,228 +7,220 @@ - + - - - + + - - - - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6838d667ada0d4201dffc450babed5627cd4d110 GIT binary patch literal 4434 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 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_next/why3session.xml index 99a1558a9..a8ea1a11d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_next/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_next/why3session.xml @@ -7,22 +7,14 @@ - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..64c6f7e0912517bd121833c3d129ecd79b9dc7de GIT binary patch literal 317 zcmV-D0mA+tiwFP!00000|J9LAZo?oDh4(&1j{w;CXOTrWRU&0sWjh*RXpxBH0*;c~ z7u$)dR@qdlqK3t2KyTiIkF-UdPFu9zY|xy0+&c}fKVop$r|B49!$|moKGM=o<%X6| zMmNO;?T2)R_>Kb=xWXfPXJ80qNK=f5Fi&2iHn`e}rE~Mj6X^hf1`MPD&>&oEu>J%P z>0_i`6Tm*(;ahI3BX2;DA-lu3s4O46ON(L>r(f9WL!aoB;Nl#AxbYp|F)g3-jbjR< zPGdk1^K<_^NXrHAgTblp1E;#cnZD!E5S8~qRDL0<{xPDWz($HzHm$HIj4^e|tmtfx zD~TJ{sVBY`1=gJ+Eg7>FZz?H`sko}RuG>;DQcV`IqU#!E^G?Yu<=Sd%YKhz`(P4{i PJv)5@^Ky7k5(NMNcwm-& literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_value/why3session.xml index be7ed40e1..b79b0a357 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_value/why3session.xml @@ -7,20 +7,12 @@ - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..28a1a2bc666b855fa73a22c056c6cc2c0b5cf8cd GIT binary patch literal 253 zcmVoLFb9qV#49J_RN;KQ>e0iG zyfL0I7Czwa1TSlSK)K<{qWl^;N?+Dv@CK@JmgCC8ul2kL>8;hPgJHDuQEu3*~ z(5RiBNY1lkhm(;scFs?leb-1*jAV?{jb{Adq?1E$tuo5=mduEL-_(g8U1{m|00RI3 DxhZ*3 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify/why3session.xml index c652f5c03..5edef72e5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify/why3session.xml @@ -7,604 +7,410 @@ - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - - - - + + - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - + - + - - - - - + + - - + + - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - + - - + + - - - + + - - + + - - + + - - - - - - - - - - + - - - - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c4cc8a799f20a1aeeb90376e4cd48154f80f0d25 GIT binary patch literal 7687 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 Pueinl!~A7L1i1eL@dl@_ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify_message/why3session.xml index a5e9d04bd..32b8d8a7b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify_message/why3session.xml @@ -7,81 +7,57 @@ - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__message__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..28b92c450bd00ff934e4f2558c35f2cceef592e1 GIT binary patch literal 1049 zcmV+!1m^o6iwFP!00000|LvMfbJ|D{$M5oUK=VHY$2zT zZ=V)11d>43Oyf9?d{9BT=RZCD_-PnvxPiZ6Sa*HCgFeTug9P2~+Lz_WuG{4MhrEip z>u&RA1OMTNxLytU|#!O2_M^3jP_v}`_a^6lO5soT7R zyW9*n|DtnYy#V++DYNST4J}^#cFXZ>PRT>36VswE5oEDf_=5`@_v*z%Rb# z=vN$Yb{K|!JK<*NVX?~TapalleCxi>@%1vR%D{G|zE*(GC=%xhazCp}{9!?QDj_1L zj)PRMv~}woDo&wfSBUeM!7+kJ9D%Gp-$W$aVS{tb`sLif;hbHG9Gq9PhXfsaKWgwp z$d0`~^%SCn2Z>t;(K<(mlMTEt$N6+ud;$dIn7s-L;COK@3dnkn&|pAPpoEeGl8z{( zAfWK;Fka_7{Ui(aMLC~tbx-7h9+OxRDjct_6)Ig%6dE3A3Z_uBcWI;h8p&UI|dJ?F;zX8lt`*URyiVZwIPK zajGE*b^{cCUD^^qD$4mEuzfy-f`eB787w9gOemO8@H$ZN;x;$(+3<2vPabzsg+y)p zQ1s2T^?vPexwt?{*g#tn6B#BlOl0`Y$v_bHKX#w+OXEHL44HUv1s)LnUVlCsOotK^ z4PHMDes37Om^LAOJ%FrBXx|Q?Ym$>M2kcIsf8HUpVK$Jy{rk-$Z-Ojd?V0zBc;wwQ zCb^u2V_q2-gcL?N9+F@nScoB~H~b&2npA`@MkwWF$U+!f5NT3}pi^=&d$eLr@&G{> z0cWSNVVPzpyQ(KxT7^(g`v=Tl-jDJHVZ(OSi#b7&+RX+bgXQgM>0kfpGJ zL*^-&n1ZkxjZ`Bu*D`Cta)_l!{HzotKmO^!ia{gYaPCShDGDnXF2{M#xN}kXC=7RI zT%Ku|Mo&Q}<1CY)9pJpyFecFs&BxW*|7QdtaGOf;7@MMP)W$f7rf@D5Fa>Dj8YaBQ zMSHF|&j7egT@o)rYQstt3XOadN{pHZC$t<#TNb%xTt - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..913f664fde75226f2dcb49d58466e2ceaa8929b1 GIT binary patch literal 425 zcmV;a0apGWiwFP!00000|Lv7eYaAgM#_#hfdM}0X&+2%{VK1S99E(?Z)z?&*nVqT| zcE5dfk}WjZLz^WHg}sR2`cN15;|kRgE@^Uj0a;f{@CN}(3lBxh6l{2i7{?Bms;PL5ptXrr@TuqlGmlCDi@vR$veNWC7L|9rkB@V5_)uX zZI}L8d)+(o>$?BvGo0SiB?%#>S5LNH@J$QYzNSjkvq)8z*H5y#wRUeMocs;q^osZu z@hjpVg!uM?fBUv<%RAEF1rj^iu literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__byte_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__byte_size/why3session.xml index cceec6083..b7067b328 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__byte_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__byte_size/why3session.xml @@ -7,32 +7,21 @@ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f891ac1cf966ec7de41b4300c9474792ca823ce0 GIT binary patch literal 424 zcmV;Z0ayMXiwFP!00000|Lv7eYuqpp#qa(Uy_bMS|12MJ*vry|&{OeMj5VV~;B~f^ z5;otya>J&9CZwg=(t@AsTD zUUNP*-iO<%@UeIw)0|8FCm+UCJf$4wjG-KRx!rxn%O3Ee7Xf~#!5_(;zKr-xH6|YE zQ5Cl5zL%&9^f2K*1)rvSoD)uEIl(XU9pe_q%#ZC-8r~nugU>g3;HJEjx3`v{mnHNH zKO&|3x_=oUxB#1jtvAK;T|0D>k8EG1J^Q47h|MOIpz4Agbf zSw^E>RLYuKgsVfcacwK9 - - + + - - - - + + + + - + - - + + - + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__complete_messages/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__complete_messages/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..725b8ca7545d91d04c12a69d1c1bd4e4e80ce23b GIT binary patch literal 420 zcmV;V0bBkbiwFP!00000|Lv7MZ`&{shIjpn%$@k54|2%hrD%YRh1bK0JSGGrS|zE# z?ynCOIYUyXNL(aC;f0{?9=^Qe;f3-I+C#w68}Q))qsNdj(JwH0k3Zu~_#KBt>vmaA z@EqTQD;lSKfOL-&Rd|gLICu+z_Ib;UctUQM!#6K-OXQgS-0E_x|3hnR^QR-W{G=UjaV-MIqhn44c3j699iqG_>a2Mh)mWU?=@+qNVT$|w(FWk zQSBsOAof1UG9n>SBA2!1M##o8sas-NQtzxSkf=m&xN699X+_@`fK-8chE^-?`mR9o Oeb6JHI{rp42><|Mbkn{7 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__context/why3session.xml index 79bb9019c..d02902d84 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__context/why3session.xml @@ -7,34 +7,30 @@ - + - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f60065caa59418db4ee62a4abac8ef46aeb59385 GIT binary patch literal 687 zcmV;g0#N-QiwFP!00000|LvGvYuhjshVS(&cDIW$(Dw(dgWQz$5BOFbNk^$!oMg5G z?Z2PWHXUuv7)@l@<^-HrIXbUiE9c=LNcUUl+UWN^rZ&Qejk;;!3c6i_ap!y7LyysW zNZ?P`K5y>4AMnQkw-LSXa2Q~X!|99nakm}uZuEWw!&s&a`%OFg)DE#98WnA%s}~yV zERo#y(<*EQU+TGFh8btIV@4O9tBO|OQ$-i2wYS@Zchz*B67#b%heOWTPYbNz>l+(Y z_Tqv@rWMA#YR6I@=Lp0@KkWM9Id^VxlO9%&-QFKxuwM7LF84lR_QFz9ei`rma0`1R z;{t&N0t*EGI|!86;_GAgoj|+wJ#5zqpBon04ZL#^r;+1+`G+>6kvDbOB4=TXtjrcU zA6sNSw#b>-B5Sin&cv3B8ktro<=4thBP?`rSNw>X)WbblyY%Ll%kZEUIB+8b&p| zJj1ApjVT&c5PHfiXT?#K-MFBU2ZduVv6S{w+DmEwbEW;;PUHNYAmzOpSATcIaWqiz z)MfJdu*SSP>b-nfm|19OYSYlnM?+JQhGs4rn%XopFK9>zrihVAC1_+SX~UI6s$v$L zOQ$mbz`j|Ml}k2So`MoV2c}R6M3*oEvYcZHqC{{5l3E^UQr5bR7DWioF^OOt3nhpX zWuwb18>_7}A=(frYORu`8c?!hCP8?XP9p~gN^2ceNmZ7XGtbN=%2f%Hq+~AhRgwX$ zp*bciw9{0SKeVF|bqP|0mPCRxDmbOqsVGwp0!?C)2a~cWL7D_ZC6pzx1jSKeWs1{0 VxD - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d6c4ce126c5a2ab716a0ac632b6363f01e3f1404 GIT binary patch literal 2349 zcmV+|3DWi-iwFP!00000|LvSjZ{s);hVT3pdtVH|;x~cq1#$^CK+tnp_$m~?rVY50 zw5>EI`|GzTf5dT=bY@~Fj>C)KNF|Y~df!L1Os2oY*#CJk#dLRt->0#=nP1=Jd4Gpx zI$!iSL)r`<0k2Dk^Euv4IQG}wJl|lrEhW#pZW+6?b2znb{??g&x!Ck+di4|MQ@rYH zU-7^5+l=QpTjb@(x;bb0`%Qn>ExzGRX7~la;i6k!Zgb8Bewm2nr>_(duCHfZ{(+QVE{_MI%{&AbHV(z-{d9lDh@?!m=>*DoQpa1N;bqf@IGn@8wGkKO46QCVe zx3gJyb3LWN`OxN%P3xCiotwa^O8p*TNnfo_zcS zZkuUoqhT9vr?Z|OB>mkD*{G`-UUWA-HL`L@P1G$J>t>$Q{tY=eY@0a~Io&w-juV?(PJyn(G_SP)}E-#=I$n*qk1k(`)9K|mk{t@U$%DrK8zAp zS%1}iP1JDt=83&{0+uxqD^&S*D@EQGGFHMbt>1x)ti6c!oTp0f#EMY7)AvTZ{}g~q=#S9v!}jvyyV>X z^6|1qYbm7ZBF>ivcEh`Di~qzl{fWQT7uC^4ID6bn3L5L4ycso^~~X)$f}0;d1k8vR-fbjtDUleqJg4;;^aV4|M|dgYmeWXe!a_V;LxDZpwOUjdQhMdz+k-1sp1g&A-%^LQg%ew6QE$eEY|A?M{dKv3ceM{NAvb9lwvdT%L zhL^rue@1xiJKVRY0*qkc5YxBcfeSDKhC@u>ZeTbh7>q}b_2k1jtuq=fXxs9PQdu>$={5B)W$!OC;!$rf?*H%TVJ zH`_PcpRnym#{|>q2n=2}P&ga=YVnvNXYceAzGO&CTUWj&&FzPJ*I!af0STeI3u~Ys0H_QSeP6z1f`8b+LI}Y zvxpEwl9q$DIXa)5cT&(PbWubD6eO5IZG)E?xYN?`6mzk~hk_w1ZP8JXWGM#CEzh8x z_8em3P6?$PnLtE`ympFlFQ^l$7?4qT2}viHG&n6{_DM?$(oCqV(OMHzaWWxYOt>7i z@t*F-1wlcE6{L?|dODD`&?yURqzouyDAaV#fo0modIm`4Ece_{;&o8qzz7e^L^;Nd zp!h7P>(dMoA{9Jr6;fEK|@JeMTYCmgH_~OgK8h1DDbWt8unISt?7N6SgNuVq>v~`jgG1|h*>BWIG2{L9WqJI zD7r{?B*y?QdShIzqtGl07ZW9vQlpbFDJ3oyQrRNPphV58Ff7wuCFy09wVc`dWVi#z zqjVCAi#3W=UyvFU#&97Lr%IF8zy~U3D4GaSqZ}g@1Od9FLU~65Krtky6euI23aCbT zmNK!$ctARmu{LeVY{|MrRRdppFG=^dpr#gF4vuPvDN$jy;u$^ixC8`HizH=Ft%PJk zq;rI`B62CRBn1swm4cxP77K})q(?rDs-Vi*4EE&83{jGC5+&zZBo!nNB?Q`#Ost@L zF>$cJR7^QKm9B-7_!7JzCk8N-2S~&oUR5YHD>_A>(njM5TZlRevYD;Awlv%tS~N_O zH?k^`GOo2uz!7ueWVvER*3Q%@%M@t@MRhe&%iIQ&A~__G=>%1DXwfmkK}1i8ftvDY zGlGaFDBY}#dZMHFILLDcdgV2PRN>tK)@K{I)KwV8vc&-yUnscM5 TFWl7JD`5WzQDM-;pNaqgYOjB1 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__equal/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__equal/why3session.xml index cd2c2e330..d4f8182be 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__equal/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__equal/why3session.xml @@ -3,92 +3,81 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..56900593eac11178b756a32212e2350c0029d4f9 GIT binary patch literal 1161 zcmV;41a|u$iwFP!00000|Ls{zZ`?KzzUx=?UIgIqO`tBYm!biTo(f%sAvuf%$lA?H z8`%Bz9qq1N$KJ$tH)|)cE_!h|&u>0a)Oe0*ygJ9y<@cDcd%SE@)ApZm-C{pt#u4%F z^@i{d>;~FhPKN`+Fe!Peu$;^u6t3uUHC{Kv1+J(X-{TpsaJ*>Jvd`_!w*P+kT{V!{KhI*~0a% zj=P!$`naJ!vD78w89%U!{Y5jiz{sg;Zt}v?tF9fJ(o&a)$=@lb9AlDvQOkX3zn>u| zy6rG_#4|9_wi?@6&Cvd{yYcIe;NBYkdjH`) zj}ka=!P@}NF8<=c;&RzF+}GbcbL?N!^qa1`Dbx*t>{ED-15ayHOZ~Xl&~(&)7%wJ2 ze+ER4GjL|$98dDPRtHFa#?_3gXXEMsMkaLKsR-ZBIGb^H{EM$P`0id&9zrd_;-O-m zc}VN|er|_5RWnR~BACLna4MgJQ}xvMtgqd}_iSysWV!u>?`o4E`NN2{UqCEFtL-yg z)#j*J;BF~EO|06R0l%m6b3 zyg3Ho>v;(<6Ts^?&rATXO#q9}7X*vXzYrFu+cQ|ap}on)Yy85QiDxFBr~M_Ug0vVk z7A;gnr4+0Uj?ZNKnPw zken_)TcN$Ssj!fInvlWBO_!p{#zQio3!B4eb8--hot#pYP_|&s!BdQhNO>yY$)u#B zOUh3^=}M^xk#h1XGNKx>i$sZg?zeVV2h zHpdA><*dy - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursor/why3session.xml index d14cb4e42..c293d836b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursor/why3session.xml @@ -7,32 +7,20 @@ - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1a93795f31110bc910ddb9817ea00a2e042ae94b GIT binary patch literal 418 zcmV;T0bTwdiwFP!00000|Lv7MkK7;-hI{{tbZHqr3@)y?W|i$Dw`hPNL9uroU{Be9 zAAFaMa(COgxk#2JWbqEeGl+M6f*I zeqQM0$=aDp!EaP=MzG!9SZ6ee1dH(TN390y8)|qo$ zH80*QTBUHA=PPc;vCqYh{H4TtUiaHx>4c@eE7Y@1xNFXPw6GmFrhJbVHt{|uy$8&< z1FuQRH|?C?V~b7L|D?XbACB>e4>MmiOdfkWLZ@*sm? zXpBdtfs@C;LT3KwyOMEl761 M0sJtLWl{_P0Ax(nl>h($ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursorPredicate/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursorPredicate/why3session.xml index 457eedda3..098c46a38 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursorPredicate/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursorPredicate/why3session.xml @@ -7,20 +7,12 @@ - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12c5cd1aa61393be392d52496f5a0418b5a5d0ab GIT binary patch literal 277 zcmV+w0qXuAiwFP!00000|Lu}JZp0uEg?pbOM*t5PyVxSlYSTyCj>a$~Nd61pRrdBF zwpNkSB}LM#kkDx6q4(w!M2-+~zoQ@C5fi_yJXuB@IVF1GbSn^j;K89?W11u4g@&~> zm&lGnBhwQdXpViLBMph^Ij&5Hv$Wz{M_9R)pZYvw07@C4c literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursors/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursors/why3session.xml index a024095be..98fea6b1b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursors/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursors/why3session.xml @@ -7,27 +7,27 @@ - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..17f802e7ea63e4fb22b6193db7cd429a6fddffc6 GIT binary patch literal 342 zcmV-c0jd5UiwFP!00000|J9I7Y9lcahW9$f96@TeUW)|0G3g6k6_!^+B4OLN4x0r0M@`dT1UOeB8snj|IY0Lc2@Fq8=&tE zt`+lsFjXA+i&=nJ;J)@;x7sVL8Cts!?RwiT2F|cHK0n>O|0kNNpC0F*7k!dbfBG*} z!rA)C2PS9OkP#mZiA4)VOA-8I-n?kPsrcFXFga~w)Dwq5<7Gfvk+X9$0!Tz| zwj{uX&~h=Odm=laNu@E(rjSTOa3-=O=N~N*$)GJTAggBYr%4CrkQsc@k>iL22kcCV o=`n8pJE!QP6O$-LpArUJkUh&Rn5Jk - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3fae38e93ffc711d73b2d72146e822390886483e GIT binary patch literal 431 zcmV;g0Z{%QiwFP!00000|K(OaYveEx?fomRPopo(a&g5rOBO<^;C2{Eqr~9#I+8YQ z{{6|AEpAC59P#CD(})4RnKw^<8aeOKzmB-?9rWW1#vaFvVet46kAzzs5-s7pyn*HD z^65=*Mf)kgLVCi9DnyR}u&gl*CxArHM;aXg>?tLDq;w7dLQjJScZ}%}0R~JNV2b2B zaaZ;;Msnw3A1&z)W2RH7vs6tbD@{Y67p^qR==ctQVm?5m=}#zr?|SZ+T-iIs3ogE* zhWXodd|QNc%w3Bfw%y$qB_&)Wz2MM$7)$CI@}50E$;#M|5OI7Yyy@iU9_wuG3*DXQ zJwMG9Z5l3mwUkV9tCiAEX~T8(p0vQic`HW - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e6747e209d29c49d782ca113090fad081f46b854 GIT binary patch literal 724 zcmV;_0xSI=iwFP!00000|Ls=EZrd;rz3VG_Zcu=`q(ch$QnWyhg|5Vq93}*0*^%fX z>DPC>)^XJqiDM%PauFo*X@+l>$H`aV^W7E1HhhC{-@!C_o4Oy+C+PBW8NT-mgfGwz zxPDzeMzDNoXcS!Fbe`|+a07EJ;1Yg7n}Y4|E;p)?E6DySE*r7&aS3zCH`dR(kaC)J z4R6?LYqGO4?=hgqVVL#1-P@gst9@UzeGak@2(DmTyGv?1CC?J%neA~7VKJTF!$-(u zId2v@^ysaH0CxNAV|!=qfVT_mJX$*?zHp7h_Ql$munjig9J_#Bwse98Ew|WRQvg?A zWN4VTDX+1^)4ljbPtmrcRypDFQ%qBiGsVkptPclvMWa0T6$MawK@nbuN*qsOuYS%) zg-Gy+HL#(^-vTu@`LkadJ=!ePimM|J=_fA#eF-waAEN_eOb3em7Nl!;rhU(!FM%Mb z1=k{_9z5<8?sq1)OOt;|;dwax<$ie=;it7X--s}K{US`&Ju1TN^^5S5+NcPN|BLW} z(wwm0kJs5v!>7*n&|M>Zf{R8s!t>3b^{~M&j&JR4Qd=1EVJDv^nY>ZwsKwKr{(M8t zi8*X)=@$W zc%`%=kSw^4tgZzU(McvjGSs!Jl#0HrVre3QRN<;nGbn|2QF{UzQ9AEX23gilmp~w0 zFmQ(JU}`B5Y9~dF - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87ec229e93f28dcd6b8cbda541a123ca061f0497 GIT binary patch literal 484 zcmVA#;GH&{`$K+)Fy+Afj|JyCq*BdxRny6IupqHp_ah%NL9LPzi`9vIfpjXW=>;Q_1! zOveYo1@DG*_fXV#g{R;(u? z*U+`(`+VZO@mRcGDYo#EaAj`~JV$M-ek>HC$@f#TPgz$}*5&-YeAeZHoK9Jn>q*aV zC*#EleI^+b58M;?=`7@q`^$87SJp4j#mU&cXf0PP@;$3%@gDis)$&!F{@3MXbR%mQh^<9~HcwiA zli%wC4b{$KU0Yd~>`)j`hMcX)DJZeYAn`Pi(wa;Y6kB15oGS%Z#$YKCR3%7dkSZ#x zgR4tdX+_Q;OHHa#jwDwkjiL-H3n6Nm9VTOqWef~PgV2pqLDWK_$sk<>sV#$sioi6| al_ls( literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value/why3session.xml index bdebdd8f7..bd739fb17 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value/why3session.xml @@ -3,108 +3,104 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - + + - + - - + + - - - - - - + + - - + + - - + + - + - - - + + - - + + - + - - + + - - - - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6d030bae5fae793659d29411118796cbdcfdc03d GIT binary patch literal 1842 zcmV-22hI2&iwFP!00000|LvPgZ{s);fbaShd)vcc02bc_CJXq`jSUdYUIw}fd`=7N z*lt^CboSS8k&>O4(n)vhbTY$3WZ5hgi}mV`r+%j4c9As+54_veX-l#t_GWy z!TzzmiuR*j?&5fw4>Pimb<7Gk@p3auj*y{l*B&Bi7J%9Lj`k7qrgZFfDF!>~hBdf&&@Fj>_tivLQjqtdJMeK zikJ6TniVg%b`Zz7ztEbCligxy^$pL8#dAQ@-v-)Lr3a!_L{>!Bn=GUCjs5M+PCF0M z>T`VC>Q-I6j0>+ygxRfDMZz0L0zAb8s8INsP{0Z*;RNy?nQ(k0%u?n^On_5E;qhV{ zsQ_;V3$;^t%TT!K6x4g9LhTf4r%<7A^iDz5PN8-RwNt22I6z?^v(0wBiQD0Nidb>k zi0l@|?-27zPSVb9xAr3CDKzw!gj)j{!0nxkQ1(zm|*x%&rZ)g%zy&+n-ZAXkXy-g zmp>D69>_n7KX>?YpFR%;D|;$?DtnH3=V2BLo;_OZwb`fzUkm@JqlBJ3l7Kf+5TJ7nF zr}Th)sHg>TOAAO3A8y_w4@3+6!(1f*e=oe0jsZVrn?sfTIKe{PL=4($*gwCRe~@|a5oX-SevpcH8!BoT;lG$hJ-vebtJ!BS&n zBHDzksu9{yL4#K&`eY(;iHSsG;x7A7#2CAtLoSSU9Xe13vQOR}E%saG|Noyl6np+_xwJ0Q;Ae^>}C1iDTSYX5mFN^h};VE(!d`em< z$$=BjNRUBb9VP`VXDG-9SL73@m;!)IU?LL?7+z^`B{G^Ur5ZWl5?+#$4W9pkQ9mM29s7B=Cq7i z7bT6NSZacafW8P$Ig1CtDlq}QjbY1D&;+b+PZY;Owq7X(F}Q@uEI^8&SoRmCDCKyJ g8fPI+q-eYVtS*(5vV`D@vJ`9n55j*H-~v - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3dbd66ac12eed1db3e58de9ae2889356673c7025 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(Ix}K?LNkveaw7Ky!?DkeSJ+f8yI_<8k_qY Z8yOm#ZV55?VxZtB$WRgP9~KET0RVPU7P$Zb literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__buffer_last/why3session.xml index c44ab384c..8c4d8026e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d8ad8d4cd171be363db14aff17316bb3d1fce93d GIT binary patch literal 72 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(Y^wpSPchznQ0rhl!`JsiCQ#nTdxN - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8f9988303ceb9db94afe8a49ff6d657d26f2c9f4 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|LvAdPuwsNhVT9rz4cHb`D6Ss((WNWR7FCZs=Y>Idkm45 zU9=mZ^w)Q?2mxAXg#?149uish8_)YbNo*g}yriNJsa~(>Y$*M(x}?oOtC7~N(T~jq z(>Gdf`KCGD9?=@AG}5DL#b@W^b-z8Ob5_T<)n-(OOFE!0G=3g#YRP~piI%)N8Bcff zy`rf*BlD-66lc0O_esO5-_YuW>1EMh6mQ2c^G@7hLy%OaDhM{hPee z*?g*Yw38f7vmPF|e>{&Eg%1?yp@D^dP<~-PP}2G1QN`T{3i;6aE@N;XC*Q@AXXA0vd@>rNV&HCh*R0?sM>04X7%qxi{u zH=s(>+QjOCQzQeaGG+4B1}>xlji|J8hz_}0Z!)3gdnMmXl-f zIcRP|u2nQONE#P>wl##T9qOVh>fq5t*u5B|5*XKV3xYEl$E<-gQFAs1mxAX>WmP3K f$fl79Y7@&4xjD@m17~n;QaSY-tPMih;tl`+^3+jl literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__offset/why3session.xml index 604f05f3b..4d90f88d9 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a74aa78c8436cac4e98d1f7a1f9661f75b4af92a GIT binary patch literal 235 zcmVUtqOOx)Ijf>i?ZAcskchzr5kh0z>I%lvi$@71MjdBXyf!Z*Ed`cP-W5 z@;sfcANAw!S}tMC&PZvIbp|sT1<$-A591_xogdV*5zz;g$#eEmQ)DEK90Nj1TKi7g l2FV+t - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__get_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ca9835c0c60bffdaff32e0e3b8e0b253ccc7adda GIT binary patch literal 390 zcmV;10eSu(iwFP!00000|J9UDPXi$khVT0;{0R)-d+^YU(Zr+al?*Vnn{2o1LYwyA zOKp3wF-99};)THQ&cOTdQJygF2V8Z*b;A~?4u^uF?C@pU5I$g^>DWCq4XwtqcX^2; zHHZTQ8-uo zZq2YB3hjzJmCZFPk9}8;i{*ol08e<2b-6AchwnyyWcn(jkwzLK4draLr(sc+AB@BE zHKsoSdExtZMB%rPp7Q7XlzWe5?Is$p2l6HGOF%H^4>y7jx1-N5=)-@;Kl^vjs-En1 zoBq>J@2g8PE3@*Wi_&S - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0d290483e17122596b7ac203927371453ae42548 GIT binary patch literal 1930 zcmV;52X*)#iwFP!00000|Lt7cZW}ogeebWBw*_`E0E@RGf$;)!0QWsy6kLXC+ed9 zH4}Mp(d5hP?t8oZOxL-gMUHJtHN$pMX5ZG2;buDPrt`M@ew~+X8@_k^=ek?8?e*1k z-sMI6m1Z}YUoN(*>yzh+rt2i;S6!fRbv0}Ammfy)%lXZ0wu$!_ol)#~dg|&d@oK*8 z7Bro6^sP$vAPNsb`cy>WF_3oevFPJyXM(Hgrv1}Z68vnsozK5$mgk?k&l4HNv4FpL z!^n3dPOqoXKWRqGjv)_;w>2+iJUa!G9V^FfdAQ zV)MZ{whNkn$`ky!Mr9PyZcB{_y~eh~(eLz6`eT9-qKoeQ=X`m{zREsQchy#Q+A!^S zbjsf*_%~z`o=Bs7#vWz_{bfPF1IT}*GF_|?8hLmH@sCWr2__y){cHka&57?hfqk6t zn0ra-+1+BrkL150@(-_c)WRuiVW;kq>eHtBtOB>fiz(cqVkG@!N&j<;baxBUNcl-q z-m^PlR!62!o9W6i0(xgXpdHyhX|~Vk@+vWTacu1OK{Z1?Zpu%a>F(p!d6Jv}e3*8X zaDMtwQNKFU0?oODx|{j#VGpJ7Lk{~dJLAcx-IQk2|Lq*F-Cj|Lun745?Zb-gBa3DJ za+BvVx9w$KF6mQVZl3f7cKKV^_9CiL-CaC*R=}0KYo6jRqqlG=4b8(=#$QN@L`C9h!O2^LqfzS|Lv#ZDn*vc){d1q7J zG?*y2+W7X(JKfM%n$9T9a=W~ym{%YEPJay2ftx-VqB}NiQH9zslPs`2OPlx2M#N{- zSJ}?_s@+nDsA%)fsxr96X{g%1?Ak3Cux^7BTrCFC*7kBS3<*2S#W7clp*`TP0Dtje zV3fhF)(l)bIoSI*ihu`OIoQz#M;m+%8-yqOpd8Exk7fW;T^y&cq#Vpy?vjPxTI6Os z3cvWWD<82P1^*KE`aH#t_BtGhgR1hm_WHbvw(Yff@ax}6YzD_$2ji`S@z%kH-utbk(LCOTc?@d> zJ7OA*U^If!2;P|y+%o+$n1l4w4}v-kiy7t)pc|-X_d3iVtleiZgGyrbn5TKnKnAdN zD|L7NBM9jr^>41J0--<;5hH<(b-u$QMT1%z6?_oNQAyECkGcRl4=JXaxo)yfi7cd| zN``1ewiqm>7)2>cK;l8>ut*0%kfT-!y^%(HE2ND{OPe@!k%nS$Jjgalk^*mpNfDEB zs4WVU!RM%KkfBzGhedkf=~VW*h+=|w1%lBrkxJT%=ujn)l{+`!bi+krZ3RWX{%4O_ zI3pBiPFh*k6c4K=S;t1w+XqUoS`*&zegv1;v9vG*L?*6_iNiH0BtB3p}wC zz6f%q9|a8sS!^*puLV|=7sX5}Hs)nZ~iDfnc>m z&H^(DuaYp3 zwQL00_j$R-F@;>DrcP*BpUqyj>4cRAC~=o_oFE1E4zv-GUAN(GY?CW08Tkg2vH z8i$CAlJ}fSM8!e1;h>TKY3FjqOERjc5Q^0?`=FIGJ}~jA literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialize__2/why3session.xml index 4e4c2000e..ce9b606de 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialize__2/why3session.xml @@ -3,200 +3,185 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5d43579be65f4b275c06a61c7cd15492864d99be GIT binary patch literal 2516 zcmV;_2`ly=iwFP!00000|LvShZ`(Q+$M^aacQ=dT0z7;ZXfEKz7&kyMvl)0R@Rg$`YG2rGh-u~nIzcZMT zOB=o~>~-VoX7SZ78@p)j+^$;tpXFV&Q#)V9el!0VXbd(r%fp+~&BbBHW_(5uJ(2BL zy*}ZG(=KLm#-{mG%;Z)0Vb(bu)j?$^sS|F-_=?wWbqEb8|AZCus0 z``+TmZM&@N+nZ+5#%2B0&hH}ry4((3XFOi0SsSsqX`OX9H}g7vdDIGjUEIy*_x=6L zURdAamMk?VmH_!D|nbAKlEY zh9dIGwl~-+#BVe6sqYoAPu(4yG~MRC9r~Bc>z^;v7raPd^xoZw}ZS#PhL}OFjig7f%=a!=!`PW$Wm#&0rfd zfbOw_J!c2dwTg46@L&pV-`fK4>vjAqgna5czOdIfp*OY9ZxMD8_8S&ywk`-`} zRC+l+Bbakt%eEz_?=GhpfqH2dS8=93-Sd8Ln&J68!_Ore9>$xuoah&f32*;S)Q=H! zcPZgX`!t^?KikbNiwMu=?nGNOQ#A9_W0d~1UK#x=6~TTP!G0aVkdR=rxO+Q7dN1po zLHaDEdr~ey^Wm%r%oJX5dl20oN>}mAU0iq^Ca>daWv_4yU2k;pZ{xSNuDiUWy>vPl z=%v_WM|b$a4tSLzy~@xM7_tOi=6ft5`S61!^i`Iui}5}(bcoKkQ`i!%qu8qnK0hb4>gU zGC=QVfEr?ee2xL?F$1LER@mn9P#9DgR2cM288k!z%J)_wWiv`=6lRnRm8033i1ZVi zHeTP>`JcVITE;86&+2J83rWQA3)o`*VGp z9-ctZ76R#y-oqdS;aLi@#~9>KVvz1&aM*?c5W=%0WRFqE-x&%|XEk_QBpeNd74}VE zH{k4Y_42v(O`%hvQ=!v|(y7D2h&R3p4GIkk4c;^jMscffpm3mY;7xOYj1b>~fr5d8 zfj5hR_VU?pFG~TJ0xku7q6PfgdykcU^6#kN1VMBsOfQ>utm(pJwDreiVhCQt zp@N~ejG^@$pp<(l_fqcfzuX6B9aZ~a8lnITJy$5(smX)h#J#_puz5#f_mzph@XgP3 zyYuG7P_O!RuMH3OIR+FDo~0KmmbKV#q+9{@j&tzlAd^<2B2t4=6 zwqyAE>dRgBaLyE-H(|!W_b-o5c6Y*Nr~PW1xpni1g0nvM2R~pkN3?3xsC9qCZ2ibO z*2a2&HoJd;=E8Pf)(bpq*VQpRy5G}#CO2^!%eOCGo|?8nAO06}t~&G2e#EToz>AX9 zU=VWG1Mf3xNCeY4=&mzm$I||5GmiymKS~><;~<@=N8H%0Fi1!=BQIr)z(3 z=`a!kwg>+LfC7L5fD;4&9U?%r`z1-a8CY%xmWn>ln}N?@U^4zx;i1cMzVq!}9P9h( zfg2kz6C?M&Yx=tX{a?;Z2EM9`;^F-0YCm@A}9Hj$Z0(!QdN#g zE`??gt?=Aa0mPEvRnVY~^5GBoo0-Z>W31LOMjC>55v9sxeh4E3Cy7beid2Cz3X-Li zl#V(PtG$$oGEcR~mI@ouN)XPZXC^6u|5LOC3~(=nqAZz2^7Rhu$wdPqfey(g4=hMQ z74a-d4aw>tu@SGBN?@gorpfD|j00?+BKpgC42CPp88*@t zV}w`*UTa~PP+kZjCDWJ{BcoCd8<|Qf34%u>9D3}WvP7!L17{YSv5-{&q@p4)FSKz& z8EG}fENIV}4iSPQCR+|rQBMdX)B#!w#5n3XSK4Z+omENX3j#f~uQRx!5do8zOyCwv zLpmj-AWSP}oaajL+=^923e&@eW2P9X;9ZzSZjkKjH&35 zILzl(s$v=fiqmB851y63Pp}n(%B^|A(&z;MMsdM7*!>;Pf|icvRg1&Uko#35hI2$ ebXBAG6tm0&=EmcO4V?;^uKo`yqrMM?g#ZAAInJB_ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialized/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialized/why3session.xml index ef4692292..7ea3b0428 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialized/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialized/why3session.xml @@ -7,34 +7,26 @@ - + - + - - - - - - + + - - + + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c7921c41d0db6f82670959d935483cdd34cad305 GIT binary patch literal 667 zcmV;M0%ZLkiwFP!00000|LvAdPvbBUhVS_mdtV{>yY+!X4xmM$)rX&VA`0jcduWqXNYc|7ksx@!hL2aL{uOF4_-2KWm#wj&- zT?eEX> zD7DE<4ayh5LfH1euIBS6_`Z+RzG`JwZMr12vmv)G?$v^I?(S7uT+xkfvcK)op#3xV z2Is;20yP}qd)hVS6^-TF39s1B`JTbL8GWMc>to#TcX7iHjGO%^@D6YA8{q7J6E6|I zDQers1BkpRW5hIed~DKQV!p8Bfmv6W_=wB##8hG+C4Pm<(;_85Y0B^~KuSI$<>4p0 z;yY0(K7mTUL1hoNVe*T36Ve)O&Zf68PIFmJ(wA^i@%*o>+%AtqhE&Gbu*jXLZlV?Jry7lHM`Wu}juj3gVv&`UB{yCm!Y#0073` BN6-KO literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__message_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__message_last/why3session.xml index e3ac32fa6..9df47128e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__message_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__message_last/why3session.xml @@ -2,32 +2,21 @@ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8bebec1d3fd790f2d50874bcabf10d687d0ec195 GIT binary patch literal 295 zcmV+?0oeW@iwFP!00000|J9MbY6CG4g!_AnJc6Xt-xV(0gcwY!;C5L_tN1|o6=e8ia= z+~5&2xHU#v9xFTC9QaLrR>DnF0y^PB9smQveJ(Mb0WzId8a)9Flrw%)z6$_9jfKty z?g^EiQ(qwVltMnRYK&`2Fi(92m%q%@BYpp`+<`rRX?gMb+gEzewmg4fqm+==1a38R zT?mZp&SKDLjT0sc{>DFKV-crzlczWTgom8mds+`~ty(%|BBE0060dguws+ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__path_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__path_condition/why3session.xml deleted file mode 100644 index 009711dac..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__path_condition/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__present/why3session.xml index 4d3dfb2d4..37053640e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__present/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__present/why3session.xml @@ -7,25 +7,17 @@ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a2083803e561e8702458a484518b5c71a57661a1 GIT binary patch literal 376 zcmV-;0f+t{iwFP!00000|Ls*xYr`-Mz2{f#C)iG!#D^YwDH{}a8Mzu+mbZYLrnXbs ze?PZt3md)cBOBdz5yCwA>B)LHF5rw!8XrIr*zLWWbK6t22R z+nAEUhm{YhD)g?6%C_W80E}C(&fJ07b+BwvwcQ4M3tikF!-F3P=HLRor2B9I%MbTl z0%x@B<4%Pq=qZEu^?qpa*tk*-LXy#YGL0C29Mgs$#ZDovl&Ah9bgvbJ2$9Z=rVZ#r z!;s&P&%xGbMT;~?KVTd@IJE)SnucBPdVOl8Z0k=uHU2_<*%R-L@P>vrqRHn!;R^m8 zwiu7(-xq(t7qhGWcYe3SX7PGGmT{OAoJ0vyOC}6dx{%yprKP~i>imY^7MYa>0ZU0W zVrlq9rUH~)NCiL0&+~2z14Hoj@W3Bxb - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7e630113bc3a3ca0f9109a4574932423b088b068 GIT binary patch literal 1155 zcmV-}1bq7+iwFP!00000|Ls~$Z{s!)z3W%>)(Idn|MnhU73S)ONCx zve@+3my(mzPFy#r>8z7g5ZDeqd7iKLIHEjUVZ2}CstrxM{)SzP>j9glquXCsf7Vbl z{G+=gT;Q^&&CBuO3V*Lf4U6%a*KDzH~km9rE18_INXdN*imR2j2ZIbu}jPE zP1DoYJ6Z>7nicguUQ_@0qG`g-dZ6z^)A+lTsB2Q&^+R^WEXv|8ae~!buy7RaqoZmI zkspQl;G&!WzhM91`pW_ps^SyMZAY;UI8Y7j^Al2j(cdoHp^0rDx_-oVPiv{AWt`S5 z#=F((e)9;MC;m@LY8Uu+&TAV)v5Xz)nIgb@nno0F8hO&Dfmd}69N9MFVA}xS(>DPB z(Kx`Lbq+vai>sF(4|ChjZTr94R({^n&6iDbRD_Q!Q>3gwSu@CxH{NFa!RzaeuJhkb zq||^CIoABk_OoM)o$yL}LP37=9e(cfU=KlIX6Sh{wDdGG&XF~!kHErxB$&l!7ModY z4vEd)9oilyO%0|*vuD{k1|{5e{Y}?rnC*@=cu|86Q2dG$rb^CQ`JTdjL#^b`#ZtVn zSn_9TDW0k2aZ<6ZmesJ`CpEZ<7yB;v&P*rvcl|7Ov)FxvFyB(_PIdmwL%jU zY7fh!)4^`un__I%`JZ+JEfLQSC-ZJ~Q8u)%Q<2)C%_00nW1%MRKk80d{p;~W4)5`( z;X_0^&jj;K@NUCA-AquOV*f9WC}tV@Au%?>`uK5gcX6RYB?oYzd zw>U#QtN@qiIXYaHrA0w3QR;TtzT=p3h^5`!O=LmH$q(1m|2jZL<-7osmQ(kuXBexMJC9@L5ci4a!EQL(E2^;u4ea z&hUuA7-1103Sd$jsk}%b8_CKgpo|_ZPg2>W!8sL^RY@qWh49%(Rm?#$-e{A2NP>e* zU{sVGB~SU2bvDu!X^$WUk@5kpr4YPLIlo$&keub&$W)dYLX+bWL0c=OPmBkjljcA( zaw;3y%35wXX(h-r<6{1FmZQ{|&=|+q7@d2aQ3_UZ8B+?(MzRq_;xagqT#Qj@IaZie zMkL{!2V))ipo2`zgZGMz6Ov$r0;nX7Ah|>G2BS2E$U+1siDEE;tFbVU%a@xcqnMO( z4w8v3>V#Zcfl}vMxzS2gjx^-l8DpbIr)AP{^iPJIO!P2e$x7IqX--lznKOxr8B{q^ VBaF!Pu{2t#>Tig93A6h-003}iM7;n2 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset__2/why3session.xml new file mode 100644 index 000000000..ac5ed4e56 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset__2/why3session.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a76054f38b58628fa121159057707b4e3673bab1 GIT binary patch literal 1743 zcmV;=1~B;_iwFP!00000|LvU3Z`(Q&!0-Ai_O^$I0vvwx&_gc4KA?D~g|EVp9QFz8 zIIgS&&HnW}k`vcS?KIiQZIUtw{2`8p!}<7$)QA7VkI5(TC+3?KUUaGLR@c~fxEgSY zn*smbUlE?;azopXxhkH2wqEAzdbHTizi!pfE_Xn8TPvSIygNM~#%17)GQ~PPM4aDIv z_EH?TC``@Y41yO~bnBXM$PkG=gyV+zsrj2B@cnj6FY%UNf`aJ4!V>=dF9nUBZDDpg-+U!XGy4WjD0B+oXOo!A0#hmX4NryHR4k zy12O6zQXoRezTePN^)-uTv{@zBh~&K`n)WsPk^6U44Rcc>b3AkzZU+?nKUy1Xx5b3 zC(wL~4|2ji&Ix;n6Xr*pun#$5(tZ)_x`)cC%Bjk!pUSC26p-*(70#GsGx|b`1%yL% z@bj#{2fA3d;~#$h+|y_N-exK-80(mt46Z%kNU>e!-G@$?R*LtxdHk>yO>hK=dq9To zV*v+|3_oPDdi*0L$=0F3X2tR&#;*WyO91FwbJpD_g)$CpR$-yblgT zKecX#9=jFg2j?>?St?m7S>7R8n(?Hgm}6>HSyEY2S@K?3GID`4>E&y`iiL`WiiLNB zh3$3mTF|wiYeBz?!hyiO$ke+nlk>!0*6b-u4&uZZ0o|a;cTdfjCXR#khr}g@@Ex#t@Gcg&JWB5YN7wKLVxPqaJ-*=HxZC# zA@u|Z^QMBiz4=oA%9x(l2~-8^Tbw{OC%LJdNutCl?ynpX752$ELySh9ezse@c4khu z)#JD%TXuONd4)ZN`|SQk*lomX?3Ngp#Noz7+r~c_`!iZKtJlUy1U}-$WyXniciZjV z;{zXY8fClUz3vZnjuG8sBg6m0%wzj9#i<)Q9>afWjMeS44)6DH*&KPGWg6)2e8zhj zZJiv{$w8eQJbDrF1oMK~RjSIQSI?x1r1ycOd695`PCA>$3WN%T3WPTWgx%!e?kV?L zzqNjA{l1bl#woAt%mk3Tsl@GXPgHzVd{lh=CivJpNxSQ_p0a#PIH;#AeLmOg%YYfSEw{G7wX>)~^T^z;|RU*+}i z7aP?ytS^X|9HF!_iV_QDiJr1`yv@6Rz`vw!f~RD(vtDS4Dfvhi$QY}Pi4sI&De*L+ z>_Wj14U@^r6hT4(8;dPAIH{}{`)i_2-so(SR7J;NqyQOh2_ccpB#4DnV@yd_3nxe? z5K5B)Cj$kQG76K%?sS7ik$`M;0CM296A>awmyOU$BeIZrno!Kr1`Uq1RzO+j7*dJ` ztxZHxj@{YDQ`An%NFo@Bl1tb)U2HB+Lx@4KkZW8*g^tH6j0-Bt=t!9Ce1XV9%CeAe zv_eYS1t&6Q>0A;rQDhyqu#rBnP-rp;4<(Z$4^o6EQpsAS$sxhx*d2%`N?8tw()?8j z8&$|&p$1SPI5NrlGD<;X3rT5R76!>86=O|wn3R=4YgRu>$)>1eEjviqtVDod!6cJ& zi78^vW^^d1QOdZIMB-diMi!q0yTls-$^d{LrF7$qlKh{%7Fk*1tne&|F-YK1iAk4f zEDzCoC)tfY#t@{^U_;2kORE%4*4svK3Y7v<0%5(woT>zCqq4AzE#8DW;h0z4oLq1)+_KlU<>4!9;J9<>Ye-Ab3bc z@mZA*cY^G4$lw1-T?%N?ER|)4GNrV_sP@oi(l}LG% llAQ9KbVTe}kHMKNh*M2VpA=Z!)~Zy^{{a6+bgiOU004DSaZ~^R literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset_dependent_fields/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset_dependent_fields/why3session.xml index 1f7890533..9f1a61b37 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset_dependent_fields/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset_dependent_fields/why3session.xml @@ -3,263 +3,220 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..78b3223d3093a931737c1486d3f27bf03ea5345a GIT binary patch literal 3746 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 - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - + + - - + + - + - - + + - - - - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c11dd71be438ef60e95818fc3de038ec33b6035f GIT binary patch literal 4493 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 - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__buffer_last/why3session.xml index 3ae68303f..06071f776 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__insert/why3session.xml index 6612ba5a3..b308dc3e2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_length/why3session.xml index e5c0812cd..05b445afe 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_length/why3session.xml @@ -3,255 +3,224 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0ef00bfd06d47b526b76fb511257732a9289ecd5 GIT binary patch literal 4112 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages/why3session.xml index 47bf6a378..6a68af11e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages/why3session.xml @@ -3,342 +3,310 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - - - - - - - + + - - - - - - - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b5e2d4b8922cc8cc9a5f2ccbbfe70264814ae641 GIT binary patch literal 6007 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 - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages__buffer_last/why3session.xml index 6661b9f22..740c82e13 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages_empty/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages_empty/why3session.xml index 7b7b0fd6b..a4017d0d2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages_empty/why3session.xml @@ -3,252 +3,217 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__set_messages_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1952fb30dd3c9fcc25e25b7f927d14a04cad1203 GIT binary patch literal 4013 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 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__successor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__successor/why3session.xml deleted file mode 100644 index 88081ef92..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__successor/why3session.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__sufficient_buffer_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__sufficient_buffer_length/why3session.xml index 19ee87d20..85340a0d0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__sufficient_buffer_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__sufficient_buffer_length/why3session.xml @@ -3,52 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0f21225b8e30d394e7ff0e8799e2e3013e554735 GIT binary patch literal 753 zcmVi8Gm(i!fR}L zTD}gC5nC7>jT&b(nZ;+*-{Xw3c!QTX!+3ApwDonYr)>olTNqxYtw(HXZ)P2Na@6?l zL+xGa_u?x#>Ss+Im$v=xr?`2ShQo|{g=80Zah*mormC5h_x_DvUV#IrQvsRdsm{w% z@%@u{G47{JB_#o`XJC~Ye1+85)qB)bd=xSX7K@Pk`Zo>#9vIi~8DR5mfvu`y1lSTU z@W;BR`;@l9K5pvj>)v&Jm9Od)>aJffi-WNu%MXg2qOTjY4JEJWXmD_5r86s?S!qjF zdV33j3dZgs2LS&9;BU}BoKcn615S1Q2Ba7J!*ku3SG==A<8c}Sl{&>d9WVN-I29(2 zoWqeOHud*%@IMAQ{a45>1ug~mvAFIu>IYC)$UeT33^Br4M0cg8`V?#GT+wsM3}JtrtN%nT%K_Nl0C$5t53d_Dp$| z6ADqfTxjb;GUD4A30-g|o#VLx&oprch!!|_0Ll4aB(mV0@IJ*`=Ay`Rt+iuPa|&GM zHdjO7dB# - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__switch_to_messages/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__switch_to_messages/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5ed61302f798bd608108f64136ba4112c4aee493 GIT binary patch literal 5773 zcmXBWWkVAR1BT(zFhWN-5D-R#w1h}^cZ#I6jFiq1(j_T9N=ka*NRe(Bf^Fx=< z=bZPse!=tYW{4*Q{I`dLe04Ww(U!rh3r>6AFe2>ZJHRwn$EN`o_(v!&g6cYtaL&bd z$uniFyimHDx@t%)8kacek;hPJh5w`bSg9ZI$DVG!3>4~Ng%LIY}xle17n`6;#gO`}qpW04`e z4|5c!H}BKBf(sucJ0E(3wa5RClB_NDD_#q|so6|x*OvZleLv^5`}?eYM`(Fh{=<;J+)48#uXh@9S1zFHZ7;8=-oy4k<9ms=>F zpS4k3JJQp@s%q~HyuBIJ=dqkSoUVFT)S_%o`gOYjDqK0rU&&5kGKT?QRgX4#(U)H} zJ(Q9P6L>b;dsB=!G|AYzhP)YRy*@rzT01OsP0E}ATTaV=fji4;to_i`5Iy5uyo1%% z{TTmd{rkYOV*4I*0bR}Ll>W<$Mw9Uh9MohKFaPCuaro|A^tmJd`wDm(P`s=2`F&82 zQIpKvENueDpsTa5wmYb>l^lwk3+*CnmmM6izKlEArvmq^;?Lqy3{9ivI{%h$+yz$N zJNrtndHq4n+&?vXRr{?o$suw1_Xig`ed~gim0o)B4!ZTq_&v~E642?ba4BkHaYspK zqmE)m>9}UqL@aezUFjsp0Cv0+OkNFVX7Zsh01g-SWdY+HES zOE&3#=QJls0ltW%^~>(1I>8U5l ze&Dk&qP1ri$ced)SJGX^L0QO&!Gyhi&RS{O&>5t~#%&-CtiJj0#R8y|zx(cX7y|la zE*_fCr~($*d)lRbGAX~Zy7K#!xr)L4elS{n!2JfSmtWm1ym}#p`1WvlO7Y&9PeO1G z(?=J$6D#I(%l`YfrP8_jwnKpkLb6u*K18*KRl4BWvH}M(knk*8+*i_N+@qJg`gw?- z@qS@hS;X0k^aQbxokWd0&4=AgDzCXZ=TxI&gMW~KK9Dh&5f9`hFJc3l`q!b}2_oOR zg93sR{IeslJ!2W4S+kx9s|FE`OVY=Q8atlr;PVeq4AXS#RF&ObY(rZw^!CrYDAU5%{%?Zp1RVUY2TdB~wo0T3+Jaz*{YfO0CPq^? zJ>{#jb#{j0+-ok}UurBDzV2R5hc6_DtrgA$2s7DOLP)-zBH@?3UP1!~0i&91O4Zf= z=NP8w*D^tQ{1@J{Dk7!RA)Lz8PpLL&2cH^=bQRf^y(xTt#dURwUL}-opTk>2lDf7f zXcvB~3%%EiHT;LL2q2&%u8w3v1b@6tH&5!SX%t>T2JIP+TqxH)JG-|gbT0697x-d! zVyV@;n+{YQUx9gDypHy)n;0#$&(aP3s`@RfeSbM+mcXJ-$>L}HYSZ3Oj;T^4-%?r^ zlr|)JbYJvFT+M})rBC}jZ!YqT?`E&!*=iQML9yXK=(P}@FGIb5?0%lroLtmglQ`L? z*Ng!VY%8z$-DrwRS1F^~eXdGgN$sTv_t5R0Lq9vaABsPNCr^L{+b`)R_x%YlCu0`G zlYj7=!)}nSav!hgVJC+x9mXtFp;Vy^M4_FWu!VxTD|AwIe*|58uSHt~zmZrqSlL|4 z(}?GILAh{aIyc_E=|0FmLmB~=VUQ6zg30W6CM7NH^hfO5gU9Cu%E4HfnCSY}M~@=7 zcnR2q#)xH0QjffcjKBL{uG9J_HQes{o7!H?`mR^EvvRhRr74BLtq+8)!lABTT|xCJ z7dz8QYK^`}bs4rtFk3uuu5u6H>7=$(#r*%xOZ>FEz#SS%{6Cjvzt6n~yR_PYLFpG8 za?vQ67a)Es{UFn+*Bp;NlRN`6MOl!Y3{_=zF%Wf}GoDU2pfLA0rvrPpc3}$5Kkvn* zyxpF>vn1-7FWtA#u5U~%l?+)=zoy8)z13+ueU%q}7;0WqY~W>?E>iHA z<_s9~f9Sm8&|c0r1#b%m%`XstPNy?#%Rxhze+#$6)6( ztBd2=LAE55t$EUw$G<;$7pQ&SdN|f@^&D6hs12zv|FI#Fe|Wfq2ne`1f3&|-o}$py zJKCXjvYIEDucdYJD^HFBbK^`9Teo6ebrhAnf^P5EQ1x!Lgh5G4TXW{ z*C`T2%!7En(=Q9fzIz3nxd%($g^2f-`DT#UDa6(kSPJM0oZNnLe6-3F(I))8z5N;k$IH{`??B^&5(8)Dn#+dPJTsojtDRX?_a2>SyhLD}ixY#Sc0)}U z-7l{b$FaePNhZdIL1N#fYx%79CskjK-Rf5FS386K&MY3VT({u4EvXmpBNvVRGDvf5 zx)@r0d-vtYCq>3;uWU*@!k!HyghdV%n++4`WQ2_>FLMlR`1DG3=bw2Q=&!J(Rj8p?|zzv)21?3GJjyd%W z`iY_W4+HdMTKudW+p(W<`?;PBF6@b;eS~IsbB8s3{on-$we?M5+VPr=b31H%E^i`m z#5sPMrF67>$cx_|2%+?&F({^ExEXbn{VE=@9{JQun!Y#fVt}`2l&GdA(f;gW12aga z+_1sW?{qXBY)ab}SB_mi5;(^+Skdb*uqbF4x=C#(`&*7#`HIZ!dvf`ZX>ru@mn&Oa zsmD>bO&z?$OX|9Ta;~`U9nZG7Hd|zqy4XkZnPjDMJhjhKM6X?$`i^lo314P^WjFpI z69UaYvFM!>fW5@}w$0Y9M59%Uwa-ZL#cA<1ITT=JLsu;ZsMoDJoI2iPC*aHfH#OkT zzO4JgKpEE`aJcFD}21zN-;ESKNnQzCZ*I!JLc>hQ#;$+ zI%jStm4JK`po~jpb>wbd`mlU)6dvS{b?^uJ9}LKI$o;==T2h{lUdX2`$`aEa%{jS3EE`JG$PEy0~- z3GEi4hZ#Fly1o);8uD1`xPsd*$|0Spor?UU%3Ewm-;0l*HWU2%_1Dc<$&pHspPT#5 z!ct9EX;W-!ZZC|PQn*tc8YzE~8ZUC>i_LMfQ0Rs~Ef%t4dJ1Wjg`hadxqmEsYI}^z zq^l{Z%hQ7vUp&=O5pj$p&i42nYm~!Tta2)%82@>IMIAExl6H#msbLGtE*+tv0kJYu zgB10Fj*4hPKO=IJs~j5h(de-nCA%7sx5Bw>!FDIZOK(G*Nq$U>UzQ{m|88A3Giqr- zz(L|97OwQfW@ti@H=APEqtd1_HkC~W&!y;!ExVf&{E_01lh*eJMt|-yM~Wsku{fEs zFkPa(%5&Wp%rC}Cu(``jN@8cXOMoMaYC;<*S^P0p^kaQ9U52g1UyJn`#{xoSHlXW$o@ zhBbmlr_u{%m$U9E$L!D8b--+^ZLOrr*kPhvq>P5>Fy)2YQj;{zbJ+4lijELeXKQNx z-qdl5(q&b*4lgrL5K)sof~bQKh*YlfPMzpZqtk8(GO%2XuR5H`a-WKk52JxynSo3I{R#qkn{5&F-?364H&oJ)Z> zdwE*@dqlC@AYa)`J^TYX5PLp6ip?)7e5JSHJ1phJJ#QIwgXoNWpg?Hy_10LBT6X0o zU9WfByd*p6K0WmXH?o3SXgJQs0iE|zF4`zLPlUz?mxtzEV~hrh@jZzyZM2|~pOIQa zlp>9+@`neI-xD;ER=$25knE2^gWLoy143W`kG!arg*1W`57`AAlXvLvLc%%_1X=3_ zk=p=|N^bZwmA;pm!5<~FNH55J0J09)X98N`nPxO43i!f?C}v|)LK@r)vfoUe;feti z*vnev2TrAm7G|Q@K70oJ7S5I++hL-GeO`pJfS1y^dZaF49aTJ$BY_apdmk zYnEwFwC^Ey=6(fWNX^vkX=X}kqna4~)r{>^7dsYbOKMp%!|q1SJ)~~Zm6V+&4&-N- z$?H31p){1?bF?9C($m8_6I8SaFQN?6?`iUL#$HFTED+HM=TyE4AzG!p@Hl6c$(yQt z1d1(8Nmo&)S1?i|I!E+8L&SC5o|l%+$NQrI)jg%ng3m`2#}LW=}E zI2aKJdWjx*N}$`Owy7TxTo87BGaA{_Aq$w8l{lc=0C&SX%HxeYH?AF08;M94Obl!2 z4Im`OMn>y0j(wD?g2Reu1~`{=C;0dR_20&9-ITRD4HvcwLI>R4Iv< z3{oCCNk++!IMlTLNO~ba_mMvR&V`KldebdWL#n$Usa65^B0?n{RN=zzw zFhUCNIq3dzHR-u+w=o>=Ssps5Ed5u4veyQn-HBgXlJtGSM8!xgOvC*kMk`P? z+Fqs%RkdUOO@5rQy!>WJ4O`hp!o$LOP(g-G*pNYBrU^y+)O)6I*%TLk52q=Y* zIq>HLAu747Dfn06>Lx_Kld8QdjD(7y1q#J?lyRCIi}igj283AyuZSa_SiHvJHX%S( z86av*N=nB~A*PT*nA5^1st!%LjpgGcia2Ih2Sx~|<4-2bxELla&&Lo5(+gchOSlQqSds;^YPdu&ewAT%Cc-j%}5{#uCQ`~|Ix>4x>zcQ7tjIDaWbQ|PT zDU#!W?8iNzchntESQI_Mz--D>?Z=6<+MVH-$gff5)RK{e(lSpMMu-Cvl7Kk(_Gqz3 zf{cr{q-T@;m+ca@wnl{N8W@h^s6XmN8DZUgc)%|zI>HVj(i%LG6figZ3MK7k3zVr$XO(6@G<>J zz`G_w^((}Xg^WR;^Vu4a$7XO21KEf8n4{3FqQwIdZ^bB;oOQIA>>Y7~MpCizaXp5Z zbmV>&E2x=A30Xb$a^Ub~b%YpySnF;>Wa+8Q-nJCgJC?2&1ok z*&@LimX-TNU&{m1R<)XT<^p)wzIDm8XAIn|PO1FBK=G*_D* - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a3b8de0ae3215a47ef33ffaa0089b4094ab29322 GIT binary patch literal 1418 zcmV;51$Fu#iwFP!00000|Lt5&Z{s!)z3W%>)+>kKJnSKtpbIS8OW~_9B!^w2PVBYi z#pd64B-^RC`Dn71v5LcsWyHg$nc=*r5lN)`h#zJe|6FhB5B{cxZyzz=-QvwWwe#Dr zxSr!}hi$v2)vq^y&(uuMBwpiUL;KHu$W!Csejv^QGZWX>4c)A| zyLR&#SJZU;XZ(ztHf~Fy^}miB;9eU6{BQ`bh~QD5KFmNd*k-kucWs%|B5xQK*Ob~8 zGyk&xT$jZ+Hlr_Fx=qx!H?-N{U$i-VY1_2C?dV%~|5LlbO~=k1JUzzTp$(sLJ70A3 z+qSz~F?ho(D9l(#U@@Dy!^1rln z2d__OxZ9_41ZII6#LbQnpd2a+%m@m$L((T}*mYIzs@y+Qxtp%Cw6e6ablNOEV}I4$ zw-~E6<$1!6=iYxhT8B7i*$<>TuHI3K4pbGjX^9$CReR&AwqIljZ&3}dKUR^eB3DK3 zXNX*LS}^Uv*dwAEu2rs#^C+j(=jjKf8oeKsa_ojs?)H?V7)PGMV{2~m@jb2Q7u_IS z@S_Lb@3UvO-C9|E`7FM462D&#kJmrGiALc-GBdKmROyI#qPu1UoNLbei9vJn_wwbbpk(&ewFpn$~M;-S)VwZI3|^;&QoY z>C3~_g#T9bg$u-6d^fBLF*${}EP*&jvyS_#zF;w_T2i&-V!DlSRbW@axVuyhm|9p> z1F8m`T>}oCz}Sek%E`pSs&aB+a&netU}V5515*pD%0QKYXEw#ggR0b@T3D6(7e@WV z3<hFkTB#pZ${zs|vsc3&3Ib@Y!P^yA}Uo$?s`HJ2S_27rxtAsa&Z%Au6A~ICxee zxSD3GaW(GIz!9;ITsv(e__1}G@es#$^ZP`O2zjP__7~=bK2sWo>wtfB(C54V9Q({s zpR4~pEqK*k9i2axO`~lTwy2a$E(*Me5D0yYPL(1M$}jMnRE@VuXe+V-DuLK6O9>+D zM9CD6Tx3e!ZQtS~Z7d<5DlXs$&m~zsv%Zg?r*Kk@rAaN2v26DxLq+m!I z1RKz2Hu6m(hLS-F3lhO*=dz;yb|78` zMW%NYor989afZ_*NGT - + - - - - + + + + - - + + - + - + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - + - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__update_messages/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__update_messages/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..66764712337c66990f9d8aa5e7c14d5d5097cd17 GIT binary patch literal 3152 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 - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9de233488138554bd76f9c6cc4b7dfd37954a972 GIT binary patch literal 601 zcmV-f0;c^RiwFP!00000|LvGfZ`3dlhVS_m+_`vc#~%_L_Rxw-h!e`ynvBN~Dcvry zw`%`APM7UMDWalXR7w=dv6R;{p7Aq|WyFXfgk3wO@hXJOU$(p^4&j`0#!sC0oe8TwxmH8NTfV ziTc8F5hmXJiLW20p9>bgbr*+BQ$BJOoj5(ic)iB+fx@u9#A(2FnZMx2Y0G$uW9D6V zZtl^-jj8*@4WDnyb;zG_!wo(rF=?3g3w!)keX`}8X}seGI_Tu-Uq=%bHt(`o<|M(l zfwea~8|J)yQ`X+_{h&9U#@C%9SUn*jH(cM1{y0g6+pOx7)l-6T59LP>L7mj~kt7a* z$bX9PLnQL#=!`F9FJ!+ovTJs7nYL866OQ2$$06<=AGY*mb6-l}MVCN54`;3h7xEYK z|0D9t*@p%41@e~-`A~kb!LNRI_PMQ%RhggVhp^Pjv#6ETGrt0apYH&VgH2~T`^an@ zF1nkBqL(TOw1`>&uH4c{z(jV}t{W zOonZnk~J1JSVfx1ctb3!NH*+x!%0d_;1eQC#e}3pAFU8F_En@FCX$Y{6<|dxq7#}_ z>n*eFb#ziGtExyhsx^*5>Lin7ipt4oYK$ONZ`rqP6}3%k*v&3{)Dqj)lhPo8BO^-R nI;bMkfW|0OWLM|lweysG5*&5g*C8s-mTdDC(A!~xe;5D&X$dON literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_context/why3session.xml index 00c6d8a8a..67a6ac480 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_context/why3session.xml @@ -7,132 +7,124 @@ - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..24f481cf1e4cee7abb1a4f721352d92f562ce196 GIT binary patch literal 2490 zcmV;r2}SlFiwFP!00000|LvShZ`()`fbaYjds|=@0lNC#Ks*aL%^f+6r<8u1d&YvUxa~Xqm&nd;_CwpTTk85Y$r}ek#>TmlLi}g4xKgzKDVQ;+l z1P5e7>UL(;<72{h)*h;V*hO%&_NzA=>)({9+fiv7+0jzoM@gz`H8Ez!!9R@b|NbyNSTfGoSrygxUaRui&4}9(2_q6lB>W;s=we_S>9->mMl6h2_$9DV ztRGN$v%s1_34^^D_;}-C(n+8j3`V+jT%8l`uCzfif~6O*$OZ%AI0ob?42Tw3dPCI+ zmY)PHg{@uGcGN0*R}`m@EW%HFe&QGe10a*dWx&sAZ(iG3xYI0}NXL0GR+} z1;FLh8KE;m=eOrbT+ZMRux1I-UyrJf{Nt zcU9}R@Tu+A+4?`}36yyBaa=dRt*1C>C~=Z7@5W!Va;2AJ(>1+3;KF(qD@3dl>;BKG$8E&GHD;3@oN{bB zX(n`B9O{07dklIlmCc0G!#bv32Xw;tSXGes=v{c0{diw^`labyCwQxpmT%Lyq+CyM(;qpv>XNlb~`_#l)_FF|Tz^x*vgMl8KN8yJ6 zuo?g}>J)(GMF5t=B+r0Tlk5Ok>=T2(0GPi3nC}3XHvr~c0JD4m?(1xEFB|fnE3yf{ zKLbFys%#jdlyNf8RdpmLZ>-?9IMUzz5hT=o~WaMG1c`Ty+<&102s) z?06}UXVv4@K()UuNO}d^*?6tC1uMP+sqfO?_L%^u0Sn}A=y5Se5SxoCuLHo|8P7Z} z{#yUN0|fPu>B8Dbn%9xWT!%Dek+j`PpH+`r19g`)^lGG`4Qa}(zXobxaMU2(kTw0C z6qxHBt=5oUWasK@Lai^!C+5bs%8n%XrDg7xKHe zPlmpH(pqKO-|YI|v+_Tn82GS&?yfh7I4z)9o%a%d7ZEf6W%6o+xV1_< z&bhQPQl^9e6k_KIIZl(6k_MDPOT3l}{{-ihcS=czLi{|TV3d!X6An^vZld6*6_}HX zD~1DxLZTpE2N{(GOMN6vGvz2xyb{#JN)(bs)SOZUJOPykTMZ_Oz-(l~Ij;>xAypVE zm`^~G4FL#9%kY^w?qbqXCV@h_@IVMpBpM13HQLMq6;z-nh$SMG9ybL(Y7ZeQovaU$ zp+0T3;#5jusV@Blq%d0Z6um9=;&`Y8Dk(x;B!+md%5ecG82DtP1N4gE4Ew>jmPFC$ z4OLP3Qi>KqG7_{Qk)wUsujm6fG%z`!fy%OjSS-gBAP`24aa2iyuIDCDD!hzb7)wei zUhssu;G`u=Xy+|M=Q52kxnhSXyDipPpvRMIa2je71C+x5eFm^=Lrz>w^JCiID`aSQ>7Fpvx%NTqCt9t zou>vAJXtkr - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_next/why3session.xml index 2f80598f4..cde1ba336 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_next/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_next/why3session.xml @@ -7,22 +7,14 @@ - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6da5b5c81575944ef8ccff5799ccf162fe728e70 GIT binary patch literal 346 zcmV-g0j2&QiwFP!00000|Ls%DYQr!Py!$Kq33}L8e8?e}(m;+S*JUlOT7ly@k{pu1 zuWZMKwmB6NTF7O!h}ju-q=_5U@w7qPm^GSni#w;mwMX<0+c;d~tM3V)u?aM_L%D+G z1JPA*M!PPaA-rQp87}dNjWf`BGNdVly&orMsWmRQV(Of82_E<0sY6d101d)iy=_ha zfet;jngDi*3*RWr4S;pj7|^{>8t_Fh&2^276Jh|z-|*{w8|f6`A`!mP@-5#oEmmoV z5Ph#>@3Db#``an%$-DpW8(+;|<%VYQi&?`v{eR2YxCoEq!4986+Wd^%fWJrdA8~)g z{So&+5%*QRN8mG4R#sV2OKVlmb6u38 - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..77b13387ec2187ddfa84fb36e1f6e5880cbc8705 GIT binary patch literal 256 zcmV+b0ssCViwFP!00000|Lsw`Zo@DP-1Qax1U;>4=+Gr-_981mNmOD$QB+9|n!m3D z!(Y&;K$qi@yu%S7VnhJgu%-MB(CKTT5(wZ*z2lksP5{zOIYOjLB~lr1$GoiLOyxW- zdsiDpTsgoI-%dP;wcxlxql%5fp7zVkl%M`y^E@EVJ+!`Mp7`O2@lo(P2bjwp+l*yw zJN#@5;Q@1}jXr_VwT=h$3sz#|Z=5{d@&9p*X(feFuVT{PkqCyov65_ZJ{a#rdJ!Lr zkwxp3rpX4Qh+Au>poH;C+2AY>tBA8Gh2tD0YK=~NA&s13NRt+bJaWE@B>MsD@~5pW G0{{T_etVn% literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__verify/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__verify/why3session.xml index 812ac3a73..e0de7dd1f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__verify/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__verify/why3session.xml @@ -7,361 +7,284 @@ - + - + - + - + - + - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - + - + - - - - - + + - - + + - - + + - - - + + - + - - - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - - + + - - + + - - + + - - + + - + - - - - - - - - - - - + + - - - - - - - + - - - - - + + - - + + - - + + - - + + - - + + - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4f664391853e0d4e85ce7dedad089ee6123b253d GIT binary patch literal 5579 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 ZOeC0!F+eZ_e@% - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__messages_message__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9a04483b6bdc077d85e6a5d021b39cc27c45b8fc GIT binary patch literal 831 zcmV-F1Hk+riwFP!00000|LvJgbK5o$hVT3px%G@D2tnDM5vFxDIXoF{KgjA8=DJ zrCS_F_#4N=O-g0EnegM3QhsO+htyWXIQ6pkOJ3bI>}B1NtUOEiVALKdsz=GJ$)_MFmhRUwQ8^1rDM z#{B{hTuxL7=bFfB^k_t1+hd$u{h!l%`E%^iPvPLG+yqd?!9u+dlfPW~ZfCo~w-WV9Ke=?JD8G$we)Q;_b!X6bDU z%22D!rB*=aE5v4^2zu9@`FBCBO6`Pe!BVr85KVBgv|=N8U%a3o+j&= - + - - - - + + + + - + - + - + - + - + - - - - + - - - + + - - - + + - + - + - - - - - - - + + - - + + - - + + - - - + + - + - - - - - - - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__append_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__append_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a8dd60f13e883120fe58be4a095f5881735666dc GIT binary patch literal 3422 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 Ar~m)} literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__append_element__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__append_element__insert/why3session.xml index 2fd6afd83..2830a44d1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__append_element__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__append_element__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__append_element__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__append_element__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2f7fc0b747e847a899f49d71a49589186b3990ef GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYa1~Tz3;E+y%h8@`U2;$J(wCwPGzslXhupF9NVlF z2lv-kYtzzFHzaK+P3_Adv~M(T-W#;LWr4h3;oU&}u-f4`;Huy{XZ$qYC!FJQn~uvV zEQW93&A8sAvFtGqwZidWGvYCN8}G%hqNg?JFDaq#3k-< z+4m>8&zp3&Df@nVi<{J3;}v-l3%oi}tyA-#9!xbmIX@q@%0-*Uw3#6fJA8+4vDBS+7rqGv%b-!6Zq_N))pVQ*7d-3^I_*@p(7rS1MT`w-! z#p?gu>UJo9aF>6*8`|G|dAEOk(ApRKcy3Gk_-~x~1rM0FXEdixklIU+3MH}hila7^ ztrHNev=H!({2)ccHlvcxWX9@5jL2FF0g^Eb)MzS7)T4y3PH7D`WhUn|+aM7@B^Kaa8Yv({%>vb|II2W`D5P%~k6JiDF#zyO;b(TEKm{Br##B78HWhx1(AZUa(ItP;t zNu@YDNM0f6sD#$eyRn22UO3G0NMQ*(0l

    - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1db31fb402bdbe347629fbf3af74bd331774a6b7 GIT binary patch literal 198 zcmV;%06G63iwFP!00000|E-O^PQySDgnK^)FMxEH1REE$QRtD|(dcdsC!Nn`Zyh;r zPofAUItrT6Nb~bC6)4NQ@Nw{id*uslhRQ;f05B5Ys$<@ODxa&AAiy-oHB)hxV6y^Y zE+(4+nbod?y5wYtsRpeKwhjLHFZVx{Uz{;Xj(3i`a^j_MN&%^ysfopI3Ey-T9+|7$ z?M)h)7Q3K+aFM2A-0%D7+Q8O7Jxk}?@epOlL*MPj&h-!e - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..24d7f22040a7e51985ad8a2e400316a378709f94 GIT binary patch literal 428 zcmV;d0aN}TiwFP!00000|Lv7eYuqpp#qa(Uy@!HE|7;&}*vryD=&ATBMx#+H@Ornh zcG-OU%7mnWCJm+8l7cTnMx%M7_kQ4VgV$L0F7p91lXDo*J*+v7XXj@Ae&mVRx!pb- zN6hZTRQB09+E0bg#krXBTc!n=CuIz%G}D_@0i1@!7eU5e8URi3gJ6|aC2EAH~-_$`03Cqm6xKj zk$_QlfrO4mE3Fi@3cS{_^DKQAKfou`^pO;KgI1yj0;w=iXN`|qu(4LxBGCj^0esKB z7Og_l2CX__JLN60XS;NgjZ{iRX;FF~u! - + - - + + - + - - + + - + - - - - - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e5bbe99f2fc8056bcd1589514de7ddfcf07ab946 GIT binary patch literal 500 zcmVgiwFP!00000|LvI1j@uv*#_xWL-m6OHKS)g_-rae&L#a2Ef9QtNG~75O zk{K3)q)G*eQV>Io;gX_~?FaHzHWEVw6G^0uNf($1-~gEs;9LvJ<)F3^Eja3Q$bk@p zHd1k>W6K5O(hIsN(MC|8mr%ouYn244mD5Bc7oHQTG|NG(p{Oy6>?FHj;Dif2O2ViS q%xKkO4&vF9%%ks_(D^kJo`H{?P|BoW5~9jMqIm(<0pG`W6#xKxj`hL- literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__contextPredicate/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__contextPredicate/why3session.xml index b7c982246..d1e393eef 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__contextPredicate/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__contextPredicate/why3session.xml @@ -7,50 +7,42 @@ - + - + - - - - - - + + - + - + - - + + - + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__contextPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__contextPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ba3e1c7843705c5cc843c4f282c6461f11e52c3d GIT binary patch literal 782 zcmV+p1M&PHiwFP!00000|Ls@HZrd;ryz47^FADG}k_Q*?p+N%_Jr%wZD{_enkR?T; zjri|NJC8bOoEWuaIEgN_Ei5_v;Ecxc8vLe)W$A2Luc0fUj!-h%!>?|Ia0ONWux=k@ zxNPIb_P?RU>?h2ecH|mn5F6WJ3mrOZ!GnERyHMR)+vCj&Ylqe@8^5Zcvukv*>8y24 z9q~3=8_KSaX-D5yWwgHRUDxmOSm>*f0n{Dbiv4fUt^e`iy_aYn(LD>LwOYG)-mkW|U&mvwBrk z56#;t(N4?6UoGP=Xqk9b%lI%#bEM8sGJia$E3G#`EsqN?GQE zqFf0;Cz+63coBpK&M-%>m@huj?Ns M0YQxMCW|5f0G|?o1poj5 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__copy/why3session.xml index 1136709ce..a83171181 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__copy/why3session.xml @@ -3,156 +3,148 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..abbd5c99e1f92507a024fbfa7a9a88b2602fe447 GIT binary patch literal 2345 zcmV+^3D))>iwFP!00000|Lt7MZW}ui-SaE%{vrU2ZvvA6yfMZ=kh>Z5Rw%x11UR;@ zEC=y?{S;dd%W_LmV#$&fZUnhiO%|)pIjm-ro?eYHJ>KBgaU9)EZtwDB`iNybxu4=S z(ntRl@V1O_GQr1=1vA?x`{L-D%a<%kneDe(_W4xJSoPNju zP98E|;`M!=eXSptEPuV5K926c;9X`oz8OvM=I`9ePk5bg{+@p6L&gRDZl`Q5lTN$4-y&PyA5Z9N(n;ebM+N$I%EAjuxMja{YZYy3hYSm9)>dYVOJ(L);F#|iZi zA@Zlx9c&yQ4mf~|m$~fpU?x9dc%0_Z{rG>mQ#&GEY=OGi6V}BbWW`Qs-{syxyu&uY zU+o1GUrz~M)5p7f zKN{6=-jD94)XClLm@rKc$Lj||{M{s{SMXvU(C3_6NS2%hxqch3dj9Vfutz>r9_>&$ zHIV#7jn=YpLfO~{W$P5uSle)N6lot%x5jp&c))*sT)FgDKc~-Q{;E+?Iaix+;Qv|h z!z}z_4&PVeU%bt%)qvK3_D+Ph(}#gdqd=p;8$BT$cA>L&-kHlE0~!VaJqzXQ@T~jR z8&40-Q`kaO_(`V1AlBh9TooI+x{Di|o(y)m_c(kVTGi}%>S|g#i+^Gof5Q)*i4fiJ zYNy?>+PPRh?#ycPo3=D?XPtO|zKer`_rajvi!k?+n{NlSU zKwgZEZy4K2Nl-nu_4Fd51KokzxX}Xi=A9Pma!^LZ;%P+8D-v;oUK4mQSg%TpBv{J=NsqGmGfJQf>S+z`1za^5M1pgH!e(f=-wJT{~?q`eoZJ=*#5#(~CxQ{jL)5(msd&r_LW zou_KlK5=SqJ~Mh!PZG;jQX2&*tDH2dUuRwUGs0_^P2ZaQFu?vpY?gj=`ojSK53yOg z@qbVJKY9AE@O<{}Eq1(FfjS=d!uw?|Iugvx1Rjr-Lt;U`Hl6b z!TQsm^Px@kr_K2`)xS5=pZHY21!m6#;Oa>p=6k9Z$HQ#wH&v}aFTAiii)Dltn}f`O zPd&Y%!n_!pKJ=-lCNjs~l(2qgjMpuZn>Kw8Myn5rAKde4*A%2_P1BmDHK(RE&;HNM z>i?RUUv#r;?&v}>SA&K6NbmM-z+5CxCf8!{3sU<}!MXT0z!^HR8g;Dby~ za%Z(9BgwQX#)xFH)5Z#FjjQ57QIpYoCu(1Tn zn*=oMVx+g$qBp_O@F*5Qb}=Y2GE5W?To_Eo8;{_fls={$u~;E_5@cjq;w50AQA;%7 zLO_$KGYUf#-eKls6R0bON0(*;xv>Mk#U(uBf0?jX4Mw zL3uAwaY~sC!sHY~$RHgJ##`;Gm1M?-LRryK20k`siDB$eVRg_3!Vz0iyRLV%}6xTM%pS1}1Mlt3dDrM+*< zut+GChT9M#b(bxVg}_cykkILzd%r05)|nEMF41L*H^Ev`e3PP(C9Y|F)JL5TnW<5PSa literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__get_element/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__get_element/why3session.xml index a794e2563..d23a11d45 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__get_element/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__get_element/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__get_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__get_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d532295a41cc14d612ac622e9ca27c9db275a4a GIT binary patch literal 255 zcmV++K=f0jSj0sTGW7#+mCVTqV4y1L_gSqZP07WygAXlR`49hMKAsliv=Fhzf3 z-?QQ9>jZ^nEaU*tBRsN%v;!>kxl(onFiw6=SYRVprvl)nTxqWW`AkYQ(qVCI%qdm~ zk&<6dsT;cvkF&qnL-wgh{+s-zUg}d1G}NM1QuHL0>_dm11>KS{+6LuXreFA*Y@F$| z5z_RG1;M=#TWV`<6`t F005dxdzk - - + + - - - - + + + + - + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__head/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__head/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..10ca893941b8efde7f663e846bd1d49d4dc05f3d GIT binary patch literal 287 zcmV+)0pR{0iwFP!00000|LsssYr`-Mz2{f#J_fO4JIP^#UdnnOy$VHsVFBl3j#Juy zzqDO@FWYelgd{)dJ-@VLe;T;&gu3CtvEw1Jq$7XC1-#`j<653mhJH#Xnm>6$#;<(f z(D{9SdE2dh8YyDp2q9w6bjz^~N1_>D3kCsEKl&wbqyr?4kx0fN;h2cpF3yP%&|{Uc zu1ujz>lDGyXI1-ryW_W4zMl#_U**2=^AElHE&rX@ceBI`uP7&KbNjKn8}yKQ|AsBt zq;ouETh?;HO;cC4R?uSDmPWzo+!<4fHF#3*MP^+Mv0}7Qa!>%DQ7OE~A6yjVdx`vxD^MG9O4001J0i+}(C literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize/why3session.xml index e02aaa3a9..4e40fa876 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize/why3session.xml @@ -3,216 +3,201 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5e77d5b7c59bbb2382adc81086b6bf5932546d03 GIT binary patch literal 2224 zcmV;h2v7GPiwFP!00000|LvSjPa{bZhVS(&_O{ZjM#{+Vl!lSGph0TwY2|Av@@v`} zV`x*L?tj0LWdjBb7@VeQoPD4TL}f<4@y3(sDt8a3*!R=R{_OlZMS8hN7ymx{X95#; zit)!B&!(ZD&aZJX#rbgidzgrcoN)Z#;ws?@&MwpPW%;tVij?9ZmE^oRq)S zgrA&r>Fi?o(O-VWi`3yFg}%pgdKg!lpV> z%#(#29kEtP*9`MP3^TOye&+Jt2?TJbP^YLVo=4KDViykrug%y2)ERWO1QxZ z%^!#Ck3ZJ@VQ(dB?r82=D&CoAjES1!}Ht27U(rxnDj87}(k6o&KVLWlHy=$G}KfSiCiIh_v0G4%Q+ zRi61|8faQOsJqPXzHG3>y^p5Rbz<{%M|iuGVt_{%{a*G`IKCAGc2Hz=7!7NW>*~wy z#^XB-=&y24i`y&#st$XXE-&L=<7^r?mZ<#pD_*XydotuvE8f^+Lo=S#M;m`Pw(*|@ zw@Ms%Xe&3825g0fy4Sj7j*VN;Q|fK*`=!fHt2nFQRSe`0mi0OWz7GNG2+XP= z^%(;08GtYI?*;t99{5)m0JrPs{N%K%n>dU};WyL<_w+%LKSS*YFa`Gs_y?Z=fc(t> z6b*p8cy(U@&?o!oEUqeXT_v}92D9|X-C~z1Qc+G>D z&+{Cxk)b^YJP_pw&8sLun7!?|Ppj*rY5D?Sb@YGPnzrRDSu0u2HU0tW8(pf?r3wIUw*Ns z0nguIueZYl_%zQM+P^Aj&lx^M|L*+W;C%s5wS%5Ka@4bb)fRpFEmFnC+6M$yw|4dd zf}5MiuWsjE@i80^bv_HVhCld!Lr8RP(OOAfYu8k_TmgJA`C7au=miXpN2(#k!aovpz>mfhCJzc?>+Ev(6cnq@W<)MTMx8 z^oj;IK}f^0;u&1FIwLwqL1Md+f`tT5ranRik8EKOjJDF!H% zk5)tq)D9E}#wkc`H_}!TWXL&agDmlAc~UxMmV!0OFy(bBiR&&24IrJCTo{c(W-wYx zA6=P~^r0ZL-AL~|ol`Ec%mfqJq2(AD6DC^YxXQ>(@rtcDUA>Vwl{yLx$zh7Z$|$^2 zngORUC1Xk4brO`!F4N#C`-oX3m1t=wc#?s8LqWhgorQ}^8(=hNW;r>h(1DlMiX>t& z6hIeZ1}(MnhG*v`iliJZKpOI~(Jq%LzU5fVM9)%$fR2giO1o%GmIbdujxgpWIz{VJ zNLonr7*%GLy4jHe-02L-mnhj;RKX<5Nf~N|$h=`LS?Q_gB~aIuDAkdjvvnw)jYe~- zv16Dq2@sqm@_dQXTaHC!5r%_vE^}sS07h3(vkA!o5XbCImqO4%TF4BH;)zZWR4R$V zC;G8qrMbX%k*b^}tvn)Vh=Oqv0FBg4rIhrTm)mlztc1wK7~&9jit?pMs(#3pF-;IG zh+&;dnHoHB>2)wfD4<#i!DK>4n%Xf6IzY`bRfFmy!9}ltIk1L&rlQQgXwP|voa(}* zpy`auLO_f@qp+4qPo*8BL`Tv!w4`yY0uhz8aN1L!kspoF&T3omO!PBj zS98-z?YRV6lH(yn?E*>=!jjD$OLA0|Q-ur*BqY_y&~X>3 zb0aFkvZfP3hk=uSVk zWbgtUA-9ZzGQ6d(rFPcBYc8lQNi^aRw^ok(oa(f)mKsYdGI4N<(*|T9(H2P#q&>3u zON`tl0Z4kVQHex5kdNHc=15MLI+Y3us*p{AD{3#|m`+AgT_8mINu*uN!ZC1J>El8h*4R89f1=7A8F yL?DL~ECQV!sM~CbqV7nRg1ogPb~K(eOF2`=C>4SB*fOK!-Twg~yd+H2aR2~NZblLS literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize__2/why3session.xml index 977e5a8ec..6efab9cec 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize__2/why3session.xml @@ -3,150 +3,143 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f731e39afa37771bcd75f8f58fcc22ab7d3d33c4 GIT binary patch literal 2140 zcmV-i2&4BOiwFP!00000|Lt2%ZyPxhz4xz}+a3l3u=q_N9zcf`)<7_OS?DShzc9im zvLm&FH1%v{#n3+ zU1I#U!B4BOTy4JKc7>Z3*SKr(f7_dcb6oFIe_4Kw7z5_j_H=WO{wC+NT|Q-uL#HPV zB@Xk1g;>Z1KeeMgO3-bGd)?+u`gGlXTkihG>(t;jh2;`UW|!N%{(Ae{->lZ{YO`#= zU8mi0>A$t~=epf4m)BRTO-mE{g6o?^AGgD*birQY#p-s@%~k8sUtO)2>GM4+`nb7S zulN4`!V3&74UcUZC0uQG?G{%X@;;dG2om7EK;dVR0FObTt;Kph#d;pDE>s`Zs=Mq5 zrK{C&{EI&2i+gE#Cg{wc9Xs&;z|+=Jzn4NToJ%ag>Vrut^OwJ7^&%67QSy62v`2USjy8Hw`do5EMyZgMY|E zx8r}f?(_GR+Y03$$b1oz(maS@xYQahxOVCDP1*!nOnthFH*2J|RSNA@kNGxzZI|7w zsa|$03ZQZ1!(o`Nd62O)!sw|D3o{l6%}hl_)1_uH$TSe4tspM#d(O)pH{ ztzvIB?KS8j)fi$`d4A|%T+tgqrz;WRmW`7?Tgv8+o4rYtDe3EJ?#%sRSl>bP&MG)YQUWW z{Fg4pVK~kn2kE@i4)-`#kD)rRa`Q5B1Lx>Xm76y$H~m9EWqW0NW&7J_`&b;e3UI{D zlfF>2-&WY4I>O^aNSy$1{xfceZbrSrlf52&`)Sl?mB1>2?@|Ig0hoAml(Pl5^C|uI zN88D*nNO*g#iO22cq1qdRj(*=0-pzyo@Q?Bn*=n_Sdl;CQRh2=Q;6WI=uaj3@LpAa zBH`%LbrR;zdqt9#9wfc1~6)C7)4W$GLO7?-KD0W~61=lHBLRb{H%P5k~V zVw_U}OInU6cDK`5t6Ntdb>;DI&HY9F|pSLVMKU9Z%yFLj@`>CpV(NxpKw za=&u_ZF0X`*)`9wrFfK$Dk631@TN56tt}mE(DZyI>Qe*}`GZ(B6 zUNa>fLi!EPo!6nTMGd!b2CWXxqq*r9c8V<|~gP;{CFiPYklJiRI2oaOk zWW*cBjEIO3l1GQe3X9t4j8==JF}gC|X`TX)I;67^ufoF(;{*aMufM?6H zKx;MQEM^3$B6mKZNrHJKBXydm7?WehaP7Uy7_wqOcXbrZvZ$;qM!FGFg%DC!-XzaS z^}&0|n0A&+g(i}bnb4E*UZjjP57fw&1EI5_se*}|%4x{RHk3Zb(1Hj&fOQ-dCI=}q zPDzllB-2gksr2OFlnXg&;Fi+vqhM4&oxp2PM!*`IJj5I^OCAFuSc6TPTcwmF82AD^ zfF>))LkgS)MYlU{6XPOV3o0_mU`wWeH#yS1!AQZ4PSRRt=?8LzL_WPtP^<{Tk|!Gp zvz~A)xpTqU#0lhv2H>&tB^!!>=}7)rB9s$Gxu*GfEuG^r` z&b>31SRr*PbO0(LC;vG_8-sB%*_2b19)lIiF`Z?xGL6ic6WE-|QDxB58cJtiGNO&# zr;>TFjrBr#rBaYVb3w^dCI}~jmC9*oW70zc%C8vx6(mWGY z5kfad)ktrHWR(7tn1*0V>M$X93{xaf6)W8^hfV{D4=@G@08ZPGsW#pw!CgTiH%-ct z*$_F+NejijBu*6eMtXpw40oBZjbzd(1E_?Fio56mF?&XQw#K6t#mY5=sYE%=BxQtE zW^y)}N~l6|IYya_{E?Ds=4i%J5_%a*n~D;esAZH%Xy`-|8m9y@o(Tn-A{ScU=3X*U S=2GY=c=Lbog&gX9cmM!o9~_hb literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next/why3session.xml index 332253323..d11536993 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next/why3session.xml @@ -3,210 +3,186 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - - - + - - - + + - - - + + - + - + - - - - - - - + + - - + + - - + + - - - + + - + - - - - - - - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - - - + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b5c36f882c4e0da2287b076f401e32f4cd443a47 GIT binary patch literal 3105 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next__extract/why3session.xml index ca9c0c90c..0bf3ccb18 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__next__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..753494ba6508f32bf5c5c101f4903af14051cae6 GIT binary patch literal 703 zcmV;w0zmyAiwFP!00000|LvDgYuqpp#qa(Uz4cHEGx{$`4(_2e5OOMeH6zU^F>H3j zu9G(X^c`<#+OSDWplQ?4i!IFa%zHn{wtPZ|HB~qwzFyJ!Sch?SMVpaU6RlgLkDE)O z_q5!~&2T>4qeWtx=w5Xv=NHrUusx#-=}x|NJ0Kpf=qGgQit752F6D?(RI-Ttb zKB24cP7WWmQZ4p>-zkl&VMD7^q4PEWU?Tkk-lwOneL!zD$_~qLi=_tJ-yt*noXqfd zX7%7uyJ0xqX^!WzM@Mo_-0wGE zn7zik;W1qXH^}E{Lv>oNbrr&rn!Z8H1cyix8S`3vw}|8$G5vz4%N@y3e@E?OI1b-pne ziLroxg&)v$)fYx;Og?6dAnbhcfwOOhAe5vk=txX8wG@_=nOg}+6ueZ19DTK-BGVa@ z37WW+y|ii@LCR>8(ejalt17ZxYQQ$M3ZXgY*hI9=_!h}xFbGaXu1nZFMTo7~EKpDc zyeaBis})1D$ak4)Xhpf^77SBK8pNF0G7 - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4a41b4c1447ae848eb9514420416f02cba16af0f GIT binary patch literal 1054 zcmV+(1mXK1iwFP!00000|LvPiZ`(K!hVS|nd)re1&hY!N2Vaa0(Br~afgBD|V{ON^ zm7x9iOT}?xw`n#TF@>`sg2;w4dN~@-Jd{Sta23+mO;|6fUv6&0ZW%U1==&XSe_#K- zfQ1Nu?QS^C!)nimujA$_{IQS=n2(>h5c7G*>+SHh-+u~Q?uN2E4A-Mb*fI5eNJa8~ zyUVLDeZS|=H@qS4`}K9YS%qDH%QRf?`kt;g1AiI%KHlWayFM>>`=K~u=QUMV;ZD?? zh{6Qbqm%kX4=3o|yQl8tK85|g+docBrP=$YvfXi7QW$sv;^T=@`MTe(mP0vHUZwrG z&rhC(;@-<8_QUAq6otD<>v_d%-VBqJHski2&_fE87=2hcg34LuDrMOd6;?s^7nIl= zs<4rX3utxpAL?j+)v(mC^!~8)=xQvVPWvetdo(#jW=b&b>jz)~Q)cSC0w#HMRssMg zH2_Fr-k{u|d?8SV2P#*(fjXiI^dZkx!^R7-@p#fVB-ceUG$y|!hOg6ZLGc>>7VwoX zyP(!Z=g~oX$Ujp-^1CWlvmfsy$AKQZfBYEE4nDo%1XVeLZFP9#t3xFK9QX!`#OES+ z8&=D7o_EL2Mup^i3N{sVAEV9W-1(k1vOaC5NWMO8szk8S<`rnu{j`VqP_-@QZjyZY^b%6hUfsWIt7WBXqFku|AtNRzs9jTwy@ zmm1r~jOneRT0)HzjT4s|+s28>J@ZOBjS`I#mm1smOo=BRM1>F4t~Cf+`M2`F(Ad7$ z@?VHw34mFZ_YKajNhS-)*(Kgj&8oZr@K|T4mR?;K&*N83@XpDfJ)@ib+XMXBFdOQ; zdh)#2d`?HJ_`e)yFZxuP{;mrmQ7{2nDd$LqOiDWI%TGuSQuq!21k-tzk-UeHAb2dl zDoO%!+EEHt`C=uWXXJE1r%{uaV5~tKr4=%AF|({S79;EsC|J$jc`n|uC$QxJill6I zh@+D1av3DD)d{6`WlFqE6wy$Q4x^5#7^yC0$R1?0N~TmsNs5uAG(;Ax3$YmKE^>ef zNvbToO-d*cNlT3)hvK;&l}wjYlt$#N{phWbR-qS;opWVhVpEK4Cs9do);Q!GwL&tU z%Gr|xWD}zj`jHxk#q*zW0ECwkwYqk#6=s7?alR`kpY>m;vXiC!Ck_lx@&GKM{oi{;e zNl9oo9!;J-vIqeZ>EQDiPmrD0ri3_a${AT|C~hZKvCI*oQG!M*)uGoSnrMuZ$`>gl YfUK1ARyi{0Ml0R@17bJyQDr><06r}XY5)KL literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__size/why3session.xml index 214b95ab8..ad0d9bcf3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__size/why3session.xml @@ -7,18 +7,10 @@ - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..930b2b631ad2fdd429dba32de7001e0a0bc712d4 GIT binary patch literal 202 zcmV;*05$&~iwFP!00000|E0|_Yr`-Q1>oJkqI(HQZcDv%4b5J>9#5xJE0AUPbPmqH zPeLfoSm^RNxcB&wD=F%y;1RpgkB=Qr0^l=Eiyh+y#iIiYYVYdW2?FyMFMY zt6-1P - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - + - - + + - + - + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..14177bc382a81dc874d33e6767ed2b948c73c51f GIT binary patch literal 1595 zcmV-B2E_RviwFP!00000|LvPgj~Y1;$M5|q_O@4--#+BP1#P5g_p;*J@}sPvWq?34 z%6$8+rkM$od1l%~>4`NGgP{7~u5#6n!ZzJU|6w8hzqT>{Uki*7**}r?)HQZ9ROU}P}xw~P}%Su8|a2_sMxE`HKuPRYi@gy@zrlm9oy(M2XUmH zF5n(Nc3z+gux(J1qvD%&H}>aEpVTaO909?joR9_&7wzuz`Ib!l&UVSb-W zdp~2p;s}GV*{oXp^03?gK7A@2ekvTG(xKAf(sbz0IiLDYS-Rh@tf-B|q{3WL@e(SA zd?-hXL9c?Mf?`r(uAq1c6op%f!g{(ArxIsUVSb;)DM^YUAIi#APE<}zE6kM>FKw@t z5~^&dY?xMYYrO-)HrfT#bCD z)Sn?lr9h>?bi!OI@Dc@{ITHHRdqjf@f(n93g}H*@G9Z{e-7GwJ9DeretxwEK{#>D$ z(%G=a{A%E_?VwV6Wruh_fW-ulgS>xGr&v5^5049$3&iZP)5!4bapc*Hzh;=Km2BYQ}l`v>C%Rc**vUl7^$0Qd{{Q-Y*-I$oHMJAZEBA6((sH#N-$lVWj2A0{01nU{S<`USdvUB$}*T5-tRn zWlkuKbr7Amnkkz@L_tQf2^K(V4^}5fI$qHIBp8RXD2Na#yw@{T9M+*2WwIZO92IyiC$weo< zQ5k4P9fc%H-&={ssl=R6G3ZP}%7mD+&qZqUUKIkiWSv+_n1we|2auT?NGzyixKQ4k-pV#vP%Q*uO#n}|mQYd9Ei<4fxw!8W9$e$V z8O;@wA!My-c#x$KiRxJk@Uc%E&KepLOOS^004ueA$tG- literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__valid_element/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__valid_element/why3session.xml index e4e750418..52a2614e6 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__valid_element/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__valid_element/why3session.xml @@ -7,79 +7,63 @@ - + - + - + - - - - - - - - - - - - - - + + - - - - - - + + - + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__valid_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__modular_vector__valid_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c7f3132bb0ae4eb276a1e53c0a6cd30ff96f3bf GIT binary patch literal 792 zcmV+z1Lyo7iwFP!00000|LvJeiyJu*$M5|qa?eGN(hJrBUxp2Y*~{WkLyzrg zw};8MPqmZGWLXC$iId5Iz!qxtUs64OZWpcj9hUk2Ez*ZA-VCK5ws$xUxSf|_{C7Gs zUg3D)Pu->I_+~$U=nwC4&)xiK`ZcaF?{;I)w>WX>dnD|?v{N1L`~JYUN8T3h`UOgZewVead|BONwM2DZm>?DxAtgwx50TU>4QsrL@w ziS`qqJOE6=3746|NCfOe#qankpJe8&n=c0 zjHTE<@A`@NKVkZIX?f%umc9P#z_RrQu3E}2nzBtm+)^ICzPZ}?qBid8A{jl*IPK=ciN3zy@Li@%cd<=5IVG z&$9Q(?0R1RXyv*7!D-8me;o4b`FBAt{y+8bX8rOG*4BU8Y33J$zURl(L1u8Aye=tJ z7eauVbzpJ{lmqKt>A$t>2sz3(Jmkzx|*TJ8p-A8K}D}+RWv3t zm_k&oh)icZ7ebW@l1VBVG6k$h9kZ@-3q@o*g{ZX3ie=aXMdE7NFnQw*L;w*%$7o5J znnGc)pu8us#Gnc>sT{Quk?V{FhDz+Tsa93xh_bgTK=e_CP(6)cT1kV=}}* zjxh-ck|k0VMNt6^I$DCRO~=lbnv^RXAn2?mQLKZI;+-QQXi?cN#-eh_8Jq#DY)I83 WhUh5PQiH3D3c8OLgu(SrAOHYye4R`H literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element/why3session.xml index 32cdefb81..8e567fdf8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element/why3session.xml @@ -3,227 +3,203 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - + - + - - - - + - - - + + - - - + + - + - + - - - - - - - + + - - + + - - + + - - - + + - + - - - - - - - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a11ade7d3315b09189e6f46e9d8f0b7c915de87d GIT binary patch literal 3475 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 BmX-hj literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element__insert/why3session.xml index 686aee92b..92154b2d6 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__append_element__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..64f87d2e0f20d20d827a3e788fc016f2e8ac309c GIT binary patch literal 193 zcmV;y06za8iwFP!00000|E-O^4uU`sgnORC7ce>S2PkZf_J(#d+%0;^ap2u*;O&JF zP3$aeCY#K+^TB!w@K?sVN-K570n$<69)UFx4CtMqaRX80`-8n^THff%TDm}_J1;y4 zkwcUTkG-=(#zq|?v - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7b3ad9860005862c3b18fcc0e08e1bfbb9f8511c GIT binary patch literal 422 zcmV;X0a^YZiwFP!00000|Lv7eYvV8w#qa(UdoKn3wWLE2xr8m0o{FzxG#YgUu9Mno zNWcBcgmw#?Qg%sN3f4hL_@Os5?*}f|a0O-KN7}+j=siU6FZ-DKz4sG6KGA?w?=akx z-w~G0=sj+RLi^%<%Hve3e%kiA_?RagC&04r#QORct~w5v9Yg-diT}6NtDuKBmMK#o z50-p=&W2chJw6ZckkRL12V;hz%wOPcd?HvwKhfbhZw)ju!dq@1m>dSjjhYiFt@r!#hP@|BS}xka32Fj-tWeX9MzZ@aWo`It1Ox zIXe9soq9hy{ZVvkVQpdU7;A9RwetjC?tFo7f$t09Tb-B0)%W}9zAbs7@$@t{N-3S9 zL1j#!8kM!c8F1y$1<*nM;6HT(f;p0bnS_!YbAeQ#2tuPsM8;JSYtXr5qk))g5M(5^ zfl)FkB5QRNsft8{x@Ar|ZIvR&nM;wis;!F{m>_47Y^)4qopWe~mLet@jID23tpm4O Q*(y@aZ+kB6u&N6H0K$>c(f|Me literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__context/why3session.xml index b67c85918..c9ce1b378 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__context/why3session.xml @@ -7,39 +7,23 @@ - + - - + + - + - - + + - + - - - - - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..25e47ec3865c4905934e15426a42f9211719499a GIT binary patch literal 498 zcmVycG5he`IK?HXhr_`UE zoAKu}4gu>o4ByfH!cdNrbKy7?JQe49m`jDvW1owQc@ERu$-p$z)+o!gY~MxL%_=ER zS7hMxO72_O!QmKJvK`E#@LH8TL_DoBi#O8dW>){45>D62TX_1*{@qviP7}D!UQ(M2 zTy`eES!7s7?D2rZyGY8|$7Q7{{3E41H*78VUCf?KaiJ!77|V;Bf53>OY+M!dw#l1Wv0o`y#A9+rtdlEZPpx_LUbN=@ofVC(&@_qX2vfW3d_CWVx?w5uHm7VhmeV!MEB7m)w-0z!!3On|mF z3KhNOF{vbt5<=ErHih(weN%)Q+0>4UR4bp1vDyYJw6|JH8x)llM2T*iXi!mZt&+xy z#H5dkqc+~ABv}PDBnWPRGS97s#2YDqBQuI?Ds}W+RS+khDZ^xJjOJF@>MwFiy-JM` oQLD6o1d)x5%0$DwQPgs(t2j!lnDU%894knY-;3;# - + - + - - - - - - + + - + - + - - + + - + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__contextPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__contextPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..600f3aed80e8aeaf36e284d567dcd4a4bb6f9fd7 GIT binary patch literal 809 zcmV+^1J?W>iwFP!00000|LvDcPuoBc$M60Wy;qg?{Wwr5hoT}?Jyp4`W?$5jae}=; z@a;PZkA{{&RO~2FUlwOQ``?+Jou7wt2Jxnai#oWvy@IZWwm{8j4?nt9f>UVv`*A%{ zrHf^`as5wNrs_MK1QW;^oIqK)E-j%;!8wTF?#C`S*Ut6na+TVU@He#Q$z7#T7M*ip z(Ux>woXd6B7qst}Os%_#}=(frBWh6iVd%}`YaxKq1xK?cdSU*(*- z-P_o$U0#{C7wI>Kz8<2m_oCmp@H-Iu#z+A_Oc-p`To6)c8rqrz~H_O!HrMoHkXIXIla)Fq^3y9s*3dNUQim$xOPlY%@ zd@mIWz0Fp;C?5P`(YSOuLLfNTuA1il*fz}BP)q!#7Jr6X;zerlA*iw^%_o>Y1@nWj ze2m;8%m?WOrc#?qZ7Q|B`=&AUhijbPe@pO8X$L>V@~ldthEme9eWysmK@_ktzwsREmlS!wGQjg%(yQ!Ku|*X+R@ZX-HTVBDEH0gpSH8%*NVr nU1gerVKD}#IP=PDfuBU1f|TGj%K?qdeoDUpRsy<7Qz8HW$yAnD literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__copy/why3session.xml index ba255879c..1837aafb2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__copy/why3session.xml @@ -3,156 +3,148 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..441ca7973e04b9e463d71e148c3cda6bd7862422 GIT binary patch literal 2339 zcmV+;3EcJ{iwFP!00000|Lt5`Pa``Le(ztg??*^3-!1K|#0y#^H2bpZ*Qk6u6Nv+y z(2R!t^;_;-2%*CSNXP|Cqo{FL`%?9NpR3*WbeCg{k2m<&IE?Nlw|8mMJz^eD?mN6j z`sptLZ}SKz6MSqLcDJKRxi zTDUj?*K}9q=4JKDpjW=NYK(v2S*de;6VtDG<&zXfBaAqj|4#DtuhHl}{r!+`LK;n- zIr^DGcT0T;w>Mq-)h!wHBz-x9|8AXNEADBtASL7c;DK)>7q9;h#A z6$d)7zp3h5ch_jvbez&X=udqsNiB)2d8Db+=ZSw5< zShes~Z#ebM#uL{0oI8tFO34qrA5EHxtGuWOn$>zeZ= z;#Mz*zG_O%+dd|}t|^;*`1u4)`Ovqk?WC%}b`)Q?5D&XvJlyZZ!&a56Dpyr* zQ01D1OIm=|UDBVeYt7XM{ZSR+R1^UQBms_J6JS6TU{w{qjwm!e?{S*=KvjXN0s~Vh z3?v5dqyon$0*g_tW(M#zQ-kNpfT=Q2WuPVlUo;soH5sTXP?LeLoDBSar&9~F?~-(J zwOC#(HB8qT%aXz@k1%sXLj6Kx`!wVH>D^=Cc3qOF`m=6H{FwsH3Xe1qc`-7!W@HB> zL*+Qu(~j}8G>|jdbGS=pl5W^mrI3WRw$}aRH3LsagsvOP^Zu4Jbxnoyhtwuq6$M5 zhAIrFCk&JYyyW`#O7=?jO7@c@`}!>4Fpm{}KjpI_$9D9ztKm4La2)P=@d}d@gULR& z`>Ne;_fBcrT24Is*?JkNxl9! z=s~?XELK8I;2@2(Ld$+Fb?MIlA6**#T-w6`?{~2W`jd$d1I*vW9_Y&atuX)KiND0~ z>6ejX=lx=T@alZO-CfW7nD1d=!r%6;=gRv%&-kA`;lq*hz0UKM@B8Qb;m`9>r}x8U zd!62oi|z+Ly}tsoXVkxZ5{B9SsQHO56Z#EOt8WJ{tWIFL;KgPiz2n15pQbG@My7Us zSgFd(VQe#4J@UoM2FG<h$EBu-Z&szkhBB9@MO*#+n4hrJd@Dyk$@NvM)=s*><@;%kZU z-z(!Q<16D&lkuxbz<4|$0h?t8=RT!MuN^^d&5_W!6`#3*e3Af{) zUF`Ed@3zvnrr}^@hM0r3M!E>b0rx&TYFBZm)IZ?g5*nopu|(ms1o$XO32B9vG03XuS2A zdlz*y&I#v|(K4j~+-U9-6eHPyr~5Q#P(jWZ9E&1FCA6Z}Fd9xqYBQr868GSQO%6SC zm{Ue@DkjH-g3QQBH(Y~?;F2`LW^#k#GJ7w{16RHN_>A@c~7KS>`4BY>d;P zL|04l7&zm}^I8@w(O{Acl}I6Qj!1q00V(t14S^AKv677>kwO+dO9_2c&Qkm=q9d0< z@E(g51qZpOP7tpNZeAb)XbB)$@w@FE0lJ~b6hRA&m5f3HidvTfkc2Qf!b!0r&r=k1 zh)C@TU|hQpsf%b5X98tT#mY9qn?T*7QF)56prKjEf@T;LhTO*oT;ozqUP2ODWI{KW z#!Et-NK{qyy41y4gT_XJgow;D$&&!<=u&YN424pgVnx13ku3qi1jUpON+^YqIl;V; zGR0i1coWd-?8&bo5l|_}gd?rBMH&+)iWV!;Q1}uOnjNYs>v9d<36c!6@3YeR*~Wo331tEuZ{Jo zAERx!v<_`>ih)Ye(Znf9dr3-SGUVyr%8?F|=91p2puG{L%Z^$kvQf3tnO=5T^MCul J{AkOF0017&cZvW2 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__get_element/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__get_element/why3session.xml index c35188cd8..fe8713e81 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__get_element/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__get_element/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__get_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__get_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4d6978e43ca3f028a50eb9212a45a2c7ff2cfb2b GIT binary patch literal 252 zcmVCSYfu<*~gN5!`}KXCb=nJapwm4bIy z@qHW0o+nH^Q(}uqj_}Adh7EDy&pSuUWvBSgxU$VtLbOxNyk*3=CkMW9aVY#8e8$mp zaLcZA73bk7{lyN|r{4Hq>Zg3lPw7{npx0VzS(B_?>p*F8jS&V$APwTBzOa{SvYWlsdslEVvx`*OP0ssI+ C)_)uT literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__head/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__head/why3session.xml index 94aedde9d..4edfdb8fc 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__head/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__head/why3session.xml @@ -2,38 +2,27 @@ - - + + - - - - + + + + - + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__head/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__head/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fefc0c310a8a163c28509d5a2ee3bd710ae21b79 GIT binary patch literal 285 zcmV+&0pk82iwFP!00000|K(6UYr`-Q-Tf=Nmx5$jl0Br5CDeP#dYn(^R-ibpq?qL2 zS4o=eq20>CaUV~5?_TcFohICQ0zWMnJx&=ZAMrgN7&jOaU(0iC^6t$;zWsBr*7+O{ zIaYOAnO2Y5x}g(IU32RkYeQmCM9P{c`KBu8oHVMgwbq@LT_>Ftjdj{c=EevrAn}Kw jVJO>{g&dV=*q|~}D5H(8t!3HR0;;QT^&5TkQUd@0_i>1w literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize/why3session.xml index 3e8852335..0cfe03817 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize/why3session.xml @@ -3,216 +3,201 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7074a003cfd003ba7ae35786bd41e4a6c6b4ec45 GIT binary patch literal 2206 zcmV;P2x0dhiwFP!00000|Lt5|Pa8=VeeYkfZ!67eq`J4hrO8OVpotXi)5@<_eNL<) zhL|Qw{{5b^4VYlSn1+C9MKU(Nb?eqS=bkEeoAe*UbUHhqemVVCGM+BV*}uR1Gogw2 z81j#K_%ch=+5B5r%)-3CdY>k8q9z>vx40KhDbebQ*v3_;J=Rrqi?2 z*}N}{>9=rlQSfrHxw>WXm}s^xVt(4k5Km7}rseBTQFuAOI61k@_uud#q#o0UzRi+O z=jZ(*%;w0xv63x_(nFB$izqz?(*8Xz`gyc7v8(B3%crX%@NBkO&!6F>%>V8`PdJI^ z0{-|FBj1lW{W^vI5l+H+4@jAmRZbdZk8U7+)L`2Q-(}fH51{;t@$E-6Hr00LhQA+3 zG%!l9;_!hQr;9NEyG-n-H7cWsZno5j(62alxbUCwTljrq6D612(d~K>vTbFbLVr4K z>`ddVM|3XVC-x1pNPE)APdLMjpua5W*8urXq0Sa7ghn2If%r!zUIi1+w40Dv^XQj6 z(l#Cub0?8YMQkwXN5Q-j!So}&hfMD^Kt$IFjf@{K0jPnK& zqYmDg4jwFh)XAumwN7?l=_s2~Hmhys!zKC->4Y(Cv zpm2*4Mt!_zef+VZ4|fI8sE$z`t1acrX$EQNb^GOq5AHsmmL^UliV{gw0b^`gvEnXZtWek-XzT`jXO-}~u`-3h4)+2fD1zUc+e zAHw9G@1>E!%1K|>ef_XS5I4Ss z*V%aQbn&9rvbd^{Xuzb`rE<&qEu75qR%+V2pTqfj+?^q}8t_sUTUzjVcthhCb2R>i zmNtk1{H!X!G#GME?xY(X3vF!OckTjjd%Leh_Hh8&4`h2c?CVj+$3HFValZEwwl@U0 zVgMJt$M&Ap^&U382Rx5n*!1L(esBd1^YO<41;(`W7rtB$`MVE`e2<6!WUb`ixE0cy z_d?#=3+3pAufz+V$3e{T@Xg735L>z~QmuSRu6>F5?oZ1scRyP)Kes3EugwGS2*|7~9{d~=_i-@)a={r-o8?%rK{?EbO) z$L>Ge?q9y&J@RhO;oL+VZDG8Lc;LRU_n~0e3tDTm^x=5Nc=dU-j>EQ&;ap&?r&SfB z2aFytdcgbffU6_GZA^x~e0@01^7LDN&-V4k;V!rj;-sUsyqL8NULo#6fp@I!4qi4Nu_#P}x*<4uUy*2w#QT6jqV7_fuxJa-J$00TDY-Jh2R zYpmf7V10?_8BE~v3i6{{`Ki{?AN50gC2Gen%56?IoPpl>s@x!4cO7x4&Q&5|nWEJu zI+cPGV5-FE)4%91CA$O5JW1xXVNRrb=7*7$`%km&#{yWkWn zC4&}T!=AIPsYL0mT0&rV%k;w2g$(?3klIsK)ubd%_8gsUB2v_X+Z75B4#5?9vwkj)?h9=RZRRvQ`XlfRLOw81x zWM|R1T9uX%T6W}9DLz2SE`l7< zBUBX3##CuEJ4~UpYf)y$Tt#^@zGmj4f{i$e1gk>HSf7&Mqea#C8U97D}C>Ul@4GE^sXz*MtY#^|3NoIk}co}?^Qs*WwhV%IZMZt({ z4A!A`D#{v2&a*96aEp?iG|Xr+rHkQE6j*f5q8@0G&}6bjsSd&s!C-l{w4${v8WyJD zY8JJ+(4ur_gbXOfW>YG$#bj)SFBFTmf>dcyFcC{$)M!i!!C*?OrG)WAVn$b+motK) z0=ARRwn&?7M7J4J&~1#tR>Wm4psKtTHKT5{s|H#Dr)3!u)>32CO@-VT5*F7daj4SPwQOcATkF{78!+yK=ogK-W| zp@i0HlDovURgxm;Kq(qjV};BT8bDNYc-eNjWQ@yINJcBgkdmSdND%zvt3N5R*u*=q^QgLtv8yS^Y-~<}(qa?s+J|V%7u~``zMFj8$3`9va1&f+W ziYp|1haJ}jFX37&h$BoF{#27jr4s(NJQawpTBk&^g{k6%?;#u!kQ0sO;Zu1TMO^{D guvtf_Pl8Sk38hl>g1m;^wJ7fX4{wDWejRcE0Q9<5xBvhE literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize__2/why3session.xml index 87943c22e..fbf701cc8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize__2/why3session.xml @@ -3,150 +3,143 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d544b5978510a141cef22139acbb9e7a75f78607 GIT binary patch literal 2145 zcmV-n2%h&JiwFP!00000|Lt4LZsR%<-Rmo6H;ao4@cjTf7w}??3DB6?474?huX}}Y zoV2Ypy8nKPQk=+c+3m#2q!V+KNMf;AtUBjNqUiP-7K>)HxVilr10Js9-QREiThp3c zL-@Xeo5nAi)mK1FzK<}634Mj-eZt7C^=9(dYP>Psp0Tk1qkUcH;jt6Fufv!*-T_Ec{OyMMd@cP9hs za)Ecc#uS)bFihS~pZ>V2%@#p3$S1!+XuiVlwf58-PiH?)3XR65{~6j_Gz#%stv_!| zc_M~K(Qlu6+Q**uEz$o>_|xa%pFI=*FM%~Fzw5GKlivs7y`Qa#3*ZdU4i-Q<|07FrSLSctPkzMn2p={G4F_urg za(b$%wnka1CBWgR`+=d4zcB=mA>QSxxWz|lk@@?RcK}+wZ7o_eMu{9fV zW42Xbx+lT2tf%|JOGlNrOIDS&T}_mp>*HE}UG%2tP0^cQOK&;>kkh2D@W1fC@c(`B zA36aL=N7O~zfiwW|D934chd;~KNCxZ|AqgB|L>Cj{W?O`UjJk%ws5#`xN!Ja=J0vT zh1J*>mi_|^J|Ohp!RFUZJH_L|Y?7Cb*@SBsvndxsi;xx}ecwXb@0lvBFRU-DzZ}*d ze0-{&#Ngj}$RDF%Y@Qk18EBq)S0gfE1@2*U3_ zYCH(Q4mD5uG0}Ea;c@5D?nb1J|BSuF?aqFtF|YL5UUz=^H0rY`U{Sz}RKQLECS4+B zq-JJ5o!5R#J37_#=|nU8Q}fC01lgVJl|-EF@zJ2Cm>v7=01h)&;?JVld0Ib-P#`3;YNK?0L1$Q_ChTE!t5j$6{HP|K?RHd@UQYROQ92VsBck+jk42P< zC{^&|?+`G_SiYQ;kzXQ|+Lm{V@^0~Q-Yv2K`~{nb)E>BV7skI2H7}Ge-)^73oKXGb zxxKKzu)nbXqq4vMXgK+T;Z9bHh?JLx51}C+`=wzz6?j;z8pd8UplCqRfJ@MT$47v2 z?=QSByg$l&dW87&F!NvW1!4jL*xvoiZNJdJ(EkTjS0PvE}qVgeV&>9^z-d(WQPYm zy2WGG&ITL9&e&gc+Rm`yV3TEVcW>BKWq;ibtCMdHn`UQNRT-)x;lg?5V+0bIc3P`o zQ-Y8b(SM`=JWnc+%W2ts-TIKK1PEyZrU(>$pN-Z_eq<5jOg5yy;8!pFotu?CGqWh4nk zJML8SAw(U5i#!;GGYDSVJe)ku6QpR3<0e2rBgd%*V}qqi65v#MG*T6jLMR)9afIk- zsgHOTmEgo-3SACdPw0tAE)-~~4bbQ{iQEfKq)#5x9JD|qQxTlJ(8_U0oJ(z^Wy%8> zh(V}e^6cz{p1^v<1{!H&DRePZNfSy7MMuhI-uGEI^|ww zD_SulED+%X!_p@mRgjJ+6P0w9+L$v%Sw)NjVPq6erWCxQA&>+N2trglqp}sRys+pk zV)%Hgw8=*;EP{`DDxI*ji%V2ebAc$2l3UIs&Lrw6hz}s7Aue@s$qGaa%u>djNKOWc z$+L{GzzL&T%g#z6)B({;oDjfSqBbZ(kz$}dx@5kKURM&^asmNjvJ|l=Kq@0lU@nu6 zWGhpN2pFzMCy(QsI1} zBvL1BbCClU3Gt=8wa9vOo2_VNiP1r(7`f6Y5Q#8F47UVHl4PWLj*L|{W7q-K!(*H9 zIVS&0*^5d18JJRy7tf)oUn1yM;k z#eswBv_V!$p>iOMQD_9h!$=zu#|G=AO(Hb&o~g=cLnK}o!X+!Iv{HkO(nwCJQ8HyK zT^Yr_38+>Uv<=A^>4DgwK{95T>U^1sMa(8h>o8hwnNwM~n3NLLC-P3%n60o38J9Nc zfV@zd%G@xfHO@0c&$9fHDp8`SA_xUf911KV&EoJ;BRvrvJX;|- X*A7M75Q5OmR;>CTM^#DKOLzbPC3Pyc literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next/why3session.xml index 900ee8f0c..b52cad81b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next/why3session.xml @@ -3,210 +3,186 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - - - + - - - + + - - - + + - + - + - - - - - - - + + - - + + - - + + - - - + + - + - - - - - - - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - - - + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..17863fedf12bfc502ddf99534c29208b571170fb GIT binary patch literal 3108 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next__extract/why3session.xml index 6e30a557b..12ee4985b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__next__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8f9988303ceb9db94afe8a49ff6d657d26f2c9f4 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|LvAdPuwsNhVT9rz4cHb`D6Ss((WNWR7FCZs=Y>Idkm45 zU9=mZ^w)Q?2mxAXg#?149uish8_)YbNo*g}yriNJsa~(>Y$*M(x}?oOtC7~N(T~jq z(>Gdf`KCGD9?=@AG}5DL#b@W^b-z8Ob5_T<)n-(OOFE!0G=3g#YRP~piI%)N8Bcff zy`rf*BlD-66lc0O_esO5-_YuW>1EMh6mQ2c^G@7hLy%OaDhM{hPee z*?g*Yw38f7vmPF|e>{&Eg%1?yp@D^dP<~-PP}2G1QN`T{3i;6aE@N;XC*Q@AXXA0vd@>rNV&HCh*R0?sM>04X7%qxi{u zH=s(>+QjOCQzQeaGG+4B1}>xlji|J8hz_}0Z!)3gdnMmXl-f zIcRP|u2nQONE#P>wl##T9qOVh>fq5t*u5B|5*XKV3xYEl$E<-gQFAs1mxAX>WmP3K f$fl79Y7@&4xjD@m17~n;QaSY-tPMih;tl`+^3+jl literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__reset/why3session.xml index 39017997e..f701fb7bc 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__reset/why3session.xml @@ -3,93 +3,70 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4176e8b864b3532cabad53782b3858a7d03ef1d9 GIT binary patch literal 1057 zcmV++1m61}iwFP!00000|Lt2%bK5o$z4KS})>CG%_*epm9(2*vGdXs2D_QB*Q75PRGKT z{EKs^0&K_0!_&{d57xjdzUK9K2F`lgeunuHc;V*F!Y8PjS-whUJyB0*gT8n{{b%ZF zQoaSWs(D7$%&(gGH1YYri_g(Jta&=gPtVXtgB>TQ)9_F$01G%hK8N{!hBpTZ53rZ< zpp%+6$!(JRFG(&O(cCi&rpn~$QO3aSs>3#s`9YC6UMfwv>j*bA<^B=wUZSC*RsD_% zgsOuus5AI{bgtj!8=ejLRkhmLw{yqoXO7Jn-_pU!`%_G?Rk>@*{~DFQic;((5NuNK z1?&T@miaJIADbU%XX{g%bT;ZSQ93i-z7{1@Ta-=*e0fo-z+DripD9Y+cYB^+O1K5% zmE9pOl+)JKd9kKW_w-G?DL_+zOW?FAz>6wC)$T!6G}A<=iO_{``ubXw^|WD^7&XC~ zGBjnl6i%BmoZk4U1Jl%?sllai+SK3#ygCDfHZo{ha8aDTPAz!ikrBPAG;T=H%Dk2N zg>d@%%DmRE0o4mEi6j{NA&)**`sQ zpN+Gz#@dnRt5^lxA(MAJ8JR9SIVnX`Y{|VL=L#0`hzP~T!bXg2XRLP0Q;4dU7kFh65EXDKnG&-Y zxegrq;8afvg9#?eo5!MEb^%!M#Rxlx88~Pcye>{fAQYe&#B7QRau`6a(?{~$ zX9~jI6g<@dDl{o;Z>%j6AEs=2xkRl}W<_DLf{uX#1hgPK=u)p3owv|OiE3|oA^~)V z5>lbcMex=JA5{X2rUa5$6C+Gkri-3Pz6jKVxFuwooY5=Y=On?`WwNqeD!mCIq-+9Y bgP?`Z7)WX8nXJ>3mFxZnYH9roBRv2B-sTac literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__size/why3session.xml index d2417b1b6..b0afbee7f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__size/why3session.xml @@ -7,18 +7,10 @@ - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6d6d5966d782189dcee9cc1e5cd951eef14c6521 GIT binary patch literal 200 zcmV;(05|_1iwFP!00000|DBD&io!q;MDO{Ey)VK{q6QCp756T=Hf2v|cVL`kds>Nq zuM%WEikG6Gs$L;xQsf`OCl;OW9Q$v4!3I(pp~6H6poeOoCZZyLC&?@{Pw6adgA(zO zO(uIPBow>t%9x^2A0>qXwyE>m{}=!EO&|3MA7Wvh@$QBXmyBa%iunwU$aYV#*OOq2 zRAjbyspL4?g~~5RsVdimcFDo5JzTqL#BUDuy5H2H_QACW{_s2ZTImWI9mud;0RRBM Crd~|| literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__take_buffer/why3session.xml index 5eda8983a..b5b19c539 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__take_buffer/why3session.xml @@ -3,148 +3,117 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - + - - + + - + - + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ad9d86256dc8c98725ff4bcad2dfa0dfcfbbb8af GIT binary patch literal 1591 zcmV-72FUpziwFP!00000|LvPiZyPrdhVT0;dh3-l{66HMi_ricIH;ZsNOZ{wd z9oDn37((B#Y4!W%zf(C?Qw$ejzMF@2iWZ6Zby)mE{WYawx$gV4TnzMe*fW@i%`g>{$BpAUo@&si@Sx~}9#rxt9PLm% z#-UF(>cbQyi)~i(+0d66&GUv;Yq|Trnfrn}sqHmh&E~^w(GNE(+Vp+A8Tj97V8z*{ zUtG=S{c1U5>Gc$F*R>zjxh>ychxrwaDo6Kh2m^7CjxAqi>&?*9oGxiGoS?H9ulF(+ zpNEbO+i-fkuHwfnS&cT-_1bdAYo%{4G80-TdP8Ot-hQuoD9tuGRH0&x*NJHqq`eg(zT>(N!R8}4@aT9Uxrw%DbLb4u;4!Jtwg+9 zMr@O9Kd?`XM>u|d_Anq%5PA@iARBYfgt^e5`x?-_U1ji%5yvy);$uT_L-0FA@D30t z>TdXee`?1EpWZS#u;l~3;j7{6tlj$_@ztG1t$rJ5d-0{Yd(6V>&snG|KD*sL5TdI8 zK!~#H0y<*N6?BA(OX%RATSI4x-z}owf8A7CMX&RH1MLf^(gR1!@?SE`e}*J)IsP`2 z%CnzB+-I421rRi1{T#$<^ODzNR?V3}OV*aGZF=#GOfR}WpFQWjH~!7RZBg)S-TNLF z1%IMFjS(Pmxt#a(knub+ zMl9^&pcWN&Y7Ghv3TN%!28F{=s5(Wcs%9En8e7iVz3-7N^_Z}Wf|_ED2#pBm?cPR& zLtAilWEuq;1OjRFUD&a0?21~dkow|n0!1HL<=Vy60TL-FA0m6oe5SI^eH?=e^3 zYOnD?(jQ<&<3Z!W`MS69;CLP!I41hsXUv6$gocE(c5g$%OOS9p04C2*7Y-eapPbjK z#H8NO6)NfMHR<@@4Lr4>Q%9|4^By{`lH9g|4-d{%^5f+3LA_com^^hJ7!Do?p8W4` z5GDivod$~Cj~u%$Y4SQbMVK-LES98BGVyB$fc zc<0zkyv#_tD2;y>=MvvVkrEY|VoFGsLeDYC%G|+Zzv;|@mRDgC2Hf@NOy*kD_JB}NP*Ll zUk2?(3esd@Y+)nQVV1-iSp^w{be^m5$&4LvMS~dIWM5`vf=XV82#|dA+&)!Q&^F2p zj%*rT;5ww$^iQtC`Xi$K;#0s^Vnb!_B2Qa+l%F6PfOSEHh~3B7P$N@8<10v?w< z_Eq_k1FIPiPO{5_k_a*RQ; z9k2o5?CzZ)~l}5frBOb5@h5+5TH3JhzyTCN`SB(ZQmt8 zuN{$!(Fu}NtO=g82xZ6^;;4n9V{OmfClO=RP6|vCrC@ieBy0pVT0w`x%95>jnIIF2 zNY;6l#z4}dAN_^cr2s+6pt)0=wUPuPF*-DX@;1jULS)A}D1rpeP+>&Y+7ysL!jB0} pYV-uEu5j{Lbk1=!8uq@+k*nnaQT(1RV=AKV{sUs#7j1xL002|Q5dQ!G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__valid_element/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__valid_element/why3session.xml index 53bed39fc..7daaec6f0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__valid_element/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__valid_element/why3session.xml @@ -7,79 +7,63 @@ - + - + - + - - - - - - - - - - - - - - + + - - - - - - + + - + - + - + - + - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__valid_element/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__range_vector__valid_element/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2abb43fdc168329ae22a3351e457df764a402c42 GIT binary patch literal 799 zcmV+)1K|80iwFP!00000|LvJgYur2#$M60Wz4tPD8%fYD>?O2N(#wOdW+aVTgX7)o zYD4<%D{tGR58Xl9Abq1{MxS(fR)-GS+X zrak|dE_`9_I!QdIdZ+G`3ny> z9Lr`m3~@6TzAeKL4mtC#ZrE?9u?%_SDeZfx3-e)`hV5po!rjq@Yg+Z+dK+Pk5Jfesj_b#(%ezyec*Y3j-y&3hMkrrEz{3;vyXS7HryI+PunD|elu_$s&JGg>ql-|PJ9LUugl9k05u;E{XDdOZJ+Jd=k=ZRmplLRV09@F zKyXa#q`;VL2BsuDXyrW_dLupv)7h#@+9V-l0u;d}Au}rs%a~zNLFX(a%t;AWB(+UZ zqYvKb=)8lJp^9WD8PEh7P+0AWG#Uens$C_lt0z{G>XMfRw8&&7kz=+A15=JEI3uJ} zRirx<}vzE#`5dwO`#V7kPk>`*+XGlpX#~x8>@2o%>0hN?oMXs})YxqoB#E=-3RlzQ~ z)6t9Sqp2d_IVEc~G=P?@WIYO{)dbqeY@%aa>H?ju0UH!a=UfA;)}q3QUfRH1cOR=K z9;lK*Sxm`fBaL)1xX2= - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e10f533ae7512fc954a0ece7cb9c7008d8a7b43a GIT binary patch literal 406 zcmV;H0crjpiwFP!00000|K*f1Z`&{sg?Igm?nMET5+!TM&?RVqj0M-j@pw!LNVH1Q zf!$wUO0kPJ@zB9Rhc3iH{B-X<;ZEfN-6`T62ts_u6fhR_lf$p+z<7^S=9h9kuCNlR z9IwI+&r3N${)P)Tc!$q81qYFj#YiJIC&rKX$+Sk1 zTz!;1BwjEv0iZ*;oXJl|fXv?y9EpFca`?gE*oVjt>pZi5HztWOMp7W`9 z3b-V8OcmItf1A??lE3Ea|44h8wB$_&Z36-YVhL z*teQ!SCzb^)@tQD?@5dmQjM0@51m5NSPeO1=cILtSxYb45jRgi0oz!*7`_Dn0IXuq A`2YX_ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__byte_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__byte_size/why3session.xml index dff660ebd..53be86045 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__byte_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__byte_size/why3session.xml @@ -7,32 +7,21 @@ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3cf98d359e492ebb710df37040675cadd7b76ff9 GIT binary patch literal 436 zcmV;l0ZaZLiwFP!00000|LvAdYa1~ThVT0;axVdWtUmUTgD<9rkW<*Jm>rE$!CG-w zO0e_mBPUI2XhJB|aS3}7!{}xAop+vt$_g%^+`5T2FcCTj9^A`0g>ma#rk{6|kPfOG zAINzMF_Cw}&aEkDxcSw0c$*4si*q4PxzrEk%@~XGG2@g0%eEKG)fHUy9L{@&{I>=E z?>)Swz&B8~pp3SXWi0akzOcL~-JT}<~dMM!0T1J~0X!4k$y&*lDTXuT;rmw&*9 znsQ9TAH~(~u&rIM=`1t$u zK}>FfbVI$qteZdYRWF~C>(wg=?fW38k3eW=qGzH{MfB>m<}=_0*gzdJKA508u$;JNrZs~<MR%^ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__complete_vector/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__complete_vector/why3session.xml index c0dfbb11a..9b5ed6727 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__complete_vector/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__complete_vector/why3session.xml @@ -2,40 +2,29 @@ - - + + - - - - + + + + - + - - + + - + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__complete_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__complete_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..65f4223765b8012c4293ed2b39e335d51bbbe7cb GIT binary patch literal 408 zcmV;J0cZXniwFP!00000|Lv4di`y^|#qa(Uy_bUZ&z28+=%sX_$CB$X8jV_k?YNS% zB>nW2lN6d|3rk75mmDm_%+Gpy1A65V{b9x_62$olQ^dJo<{v<1k6+V{@e_`jPuq2Q zffx8UxZ!Cj2gu)X;RYY@3CHMR=6%_;B#+3K_2nJ=&`k;<@y#+g87-2IJ&&{TrVwN z4)={bk|^~7os7yG8C?>4rV4D+8{3s6E}tt|d|0dha|TWMcu$Xedfe0Fo*w^_9*yZ` zA41nM5_M7;+sRgVc1|c|^kCnK&$=0mut5!$I~_VPI8Tn1>QFdqtVCC#_H|H@*2|tl z@Tip+GPvHjfgO9-YqnS+*~lIZVW(L4S~(R^2P=BhdriVrjS8vPLB9ZL3RA{b3IG6G C_{%l` literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__context/why3session.xml index ae1ebded9..efbf224ab 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__context/why3session.xml @@ -7,34 +7,30 @@ - + - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4f84e7520e37651fd472c7752ee10d21d262c340 GIT binary patch literal 637 zcmV-@0)qV?iwFP!00000|LvI1YTPgo#_xWL-g+nn{j+32Q`k#rUcgr|o*AX4YwyIiT&s0R26~=USq?gG(ws zg%7hEj>S!F?q-0KnGa584mg>a;bbzy$;=5SGYgzdPB^8SV&THVg@p?X7hZA!-W*({ zzLVg`?#HWvrATd`W3lBm9b+ZXuIu)vR-SI^z=G4rYm4gk&#O#zsJ^`{jBq!Mn_)c9 zp(`xjJ3*x90Z}%?=Sh^!^)rd`89s-iTrD5S}RGyT>;nB^4M>jJbU2Z(OtavO6XHAJ##7dyVCMpY> zRMbWj*obUC$Zu7_l;TVRyd@AqpeI*)Fw|&F-&H9|6x=uyBas&sI0QuqQj^hWd{m}# zDM=N=SJD8W0_7V~I`7$=#yS;^RuV8J>B0z8rXW?a0o$bSE5}y5MoN~VEDuSh;3z6Z zMsey!QYn-)Hbs - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..aec4c9b9441d63f9bd9b483ceeb9cff9a851f43b GIT binary patch literal 2362 zcmV-A3B~pwiwFP!00000|LvSxZz8!8$KU-a_Wfujm+zL&94Rl+i4@Jg9QA9<*BvB= zFwhxI_S2toa|wYali2_P)-MQ5b=$70|Bvc!o9^C)?#JE8#ixn;ItuM{_ApJe?#boR zY~H!C!F zSl$0-kICJ-@jNZwmX}+SzD~QRcK*dp6LFv17dLMgr&}L$=RP%T@$NHP_=ksao4&bO z3T^A6YgezcJpR$P^Yra8O+wmuHy{0#+L-cal49$h+OKIocYiM1+wd^y(vPlPb&Cg1 z$D$K!VTFhavwKag+hA>D6`xPfa4N>_Z&SKh}H%pODcICJCnyBm*U zBf?_#H~8hM1=gP7OV8l>|M>jusnN2Z?X#`o(T}Hw`oy7jqe(k+6LkMLP5$h@G_nyT z=0p88@^;{>(rY7bf08n4CuLMknafO>uI5M0k5}{K8s<=v<*8f5xi?(!@y$Kn3}pF> zyj*4bP|0)o4%}4OLR<^`mw$AgWH-;hpb3zfX*&JhtPW??yKZ$MqTJH$f$eOh|Y?V1t5KIQV^fkp0=K{Lf4N@QVK77Xbi+dV!N6fbB)V zTSm6;;^-~Mz8M3@1;Ao}tIUX_d6+GfZ~8m<+WpJL(RcTIxji3DfScVxqtOt#?#q}* zlbDbqn+Z}GRvGr;3}de_jQt|R*r3|k!5DU!DjMjigJRe0F#FkIf5r||=~wAj>DNz} ztOwozH1-ZZHn!3C?;LeSLq)^3SYUt+aK&(d0Xo1o9?qW*D4Ipl0u>Gw4o9sUV4!e- zXE4iyfybf~4n4jg{Iw5);UBUOBJzkVQ6 zQgHEPq};ApRvmg}h^f8CWnYxsJYT>Jd|hvMR4g35r81>5| zEDy|Y=2{$l&Up+DXrjSc4lzfg6I1Rt_^)8ZdM6wY5*_L_h3tJuQD|nO0Fxa> zD@rVnUMcWOP+@bVS~1AMCI^Y3Ekh$ljD-jZEGXxAR*BM#9p!*rrAqbvagtNwT13UU zvM#YGV=$Rh9Gwl!NL~g-Bm?GY6r8Fk9R-nv71jiSL(M*wF-gKhU=D1`r60>VGfZTY zyaky(P6v$?iAJS>pQFlLD4wMVL0X$F|C>!h8|^ z=p_k`Tbi8Ak~!~fc2Us`=!E2@Vj&hQMFc1uD>iB!OwcUTsHsybU=Br8Q?b&-IzbJ( zRRc?m@#rE&PuLV#L{m}n3efeCt+65pK^e`KTf?Z5G@-+ALaOi45|5dI$%tVqb4n2u z_dapwFdd~9rAI~y_rahB7&QugNbzgSaR3232*LVtE(Qei70*z&)nE zi&}w>$pgw7XlBOsqc6VC=uPw(h9D@VEyeiLEOo+J8QYJ`5RM~CNkq(7pRj9f9A;qj zm^>gc5sQ^2S_G4_Rl?#K(HcB36&TKlMPYd_eM%Gx-Uo?2W-Tns$P~eWVjxhoT9%CF zK%_?!Bpx6pX$_@Z$b>-Q0==CKsA9#4chVP$TB(_oELw$e<~cG%l`}oII47zc;FB^a zo&+IdG=-2TMS*$Ad(m>lP38jeT6(;^yRI^(D?8H&NIVa%8YDZ8MJP)-*|Sm6UJ?kPm2#B=2W gI!y+lSWGV1Kq&++A`aE?qBH^I|K%lHc0!E+0LA@^)&Kwi literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__equal/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__equal/why3session.xml index c8fbdc33b..45470b113 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__equal/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__equal/why3session.xml @@ -3,92 +3,81 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3cd123ddf750774ee4d81d81fe5236467e68a3c4 GIT binary patch literal 1173 zcmV;G1Zw*qiwFP!00000|Ls{zZ{s!)zUx=?UM#@jn?O^*m!biJo(f%sAvxR#P-L$q z2T6Z@N467W6Yp+;~FBP9Fz^VN&v3VL6#SC|uFiYP@ZROI%Skp5qy=aJ+2Nvd`_-*U+_p?3SjQ6kKU%2e&B@Rv8ltS$O6E7czvDI>CcJbB9djsz% zt{>$8KO5PaQq!>MrfJrtyV-xnP1}ua-;B2_8k#2Fj{LP6*G;opw*5%!hQr-ZvxVzJ z9S=1P^kqYRq6bey`wumlO50Ort<4n!9Y62iPkk|R{+hdF@xoQtj!kK)%fl4JlxPk- zNq(s1KHlHYkh9-*7(3Rq!bIB=ZC7nIPs0WNc824!S<~wH{+4z zJGplOe|`M&k(&t|xZrI7XBU5Qv~juY8fJjg3$lS%bJwRQUFe4&q0N3h#yg;FPWMhWvNpINzB6-Xhvp z<-ck=SniK=lKbnN$NW{>i=QKsnL=g?dCyHXQ^-*%WNNGJ?_H2HgUk%_5qfH7kXJf{ z*qK3Q2Kfj*H8aR@&meX_g3JW+ky>gdkXIs*#n%Ut#n-=Z7O!__viRuNw~Kf42i8nn zGjY8%+Nu&5L-3w3m7Flf;*vKgqY^e5N#zI^8lqJ|Qc%|Q!v!fGFbi(V9G&`6dN z75E~Q1BgV$CMgKLmo_WP&S%n*h2-;uLL%*hN&&smQlXaUi&D;tq`WJZg;bRiIZWx$Z6&Rhe-LZR}gqh+W_;lPFzWkG3+54j{`O-K_~L}f}$ zRDATBL-d}lqD)Q%TZ~RcOsW8?;B|?lQ5j8%b0CUII!cB`lAzO6Vvv>4&MVSZC7Hk^ zO18+Nvq-K4hGL$iROQ%RP$&Q#PZ{9?4ik>RAj#mI<#mDm nQd{H!S1?A%CKzxLg8~l@l|XNOaO~_(m#zK - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursor/why3session.xml index 8af4cc86b..3dd3ee021 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursor/why3session.xml @@ -7,32 +7,20 @@ - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..00a0825ddcde3a74130e3bfe6debedf98188d9fe GIT binary patch literal 436 zcmV;l0ZaZLiwFP!00000|LvANZ`&{shIjsoZe2-FvMG|}HU~Pf`Lb^Nhz2^kHAo%kHV?;M6@)4m>*BoLf;V~9?fJEpVcyO0Bh2ghz znSPyULVEX>;~#RKLY&CE{_IA|8NR>8U5GSzho_W}$+>43PE=3J^AO8xE_Y20B$~gD zKmTQX%$V{LIff;N?Wavk%AdyZ4D0mhUdGZjufr(ErHPehGC(d@BSC(Dutn$=msklb z#B_^H+@I`4=@weE6566fSPPEn8nC@T;5)qw=Kc^4@X+x$(sm`%`UeX!8s~C$`3KCz z%H|TAOKdK&xx|%Al#gO-YJKv6PV5hGxzNPv8B&C))K0#o>LeeRJu9p{E)Q&1pv~Mi zbKA`Af6R?Ztr5AxR)Ok~l+@I!Ajz5?7Z&Un@uZj+nv6sfxF;`r({ob6TB;-AMg!F% z&ZOmmgWUBBx%D9!gPMFVcV2mANY|oZ+w1}g e>1Bh`Yb{0Fa}nx??gOtylKlm)zaGHq4FCYVG}jXV literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursorPredicate/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursorPredicate/why3session.xml index 8a0f7bc49..0e1916bd2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursorPredicate/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursorPredicate/why3session.xml @@ -7,20 +7,12 @@ - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4478603395cb53116948b74cbef13c95d869c008 GIT binary patch literal 285 zcmV+&0pk82iwFP!00000|Lv2{PQx$^#_xR!9wC3abUp0AWr91})pFx65UFcRl1_}L zr`tdv&LD)eOJsd^>`y<-%)&%;c~j_Lh%%mM3?5&i9A80#5C;f#N7^H2etg#{MD#*_ zPI*j32kz%ZoDzhi)A^n^Jf<%4mir8TNHch|(_Vd3l-K9*R9{9)m^i_ISo=YPxp2YK zEl+(cBr*Gx&rWxG`-j8TGF*-W@1v(U95_WD$~ko*bb+-5vz+t@-Ee6`IEljW)stwGpwhlM?&Q{*&R$yFbL@U?1hDFx4M#Bqlz%E6q js#lG2x(S`M!L*&1;DQ!LE2ppe)X7wDo(D}jP6Yq}$jgVf literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursors/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursors/why3session.xml index 63984c592..6a5afc2e0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursors/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursors/why3session.xml @@ -7,27 +7,27 @@ - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5ca8a1ffd54cf6211fe3e3e1b3859ebd6f5ca659 GIT binary patch literal 354 zcmV-o0iFIIiwFP!00000|J9LAY9lcah4(r|j-Y?F772J`rZ3>FC`nI=pxy3i$q?uC zks*OB!>l|Mh(h|R-g~Ie^qeI1OW3i|juZlA3g72mmiG`E{$8;r{ODT!K*%U{MGo;6 z&S;HZzwSe+SaL|$ye=Kt{M@>>qipZHVIia{Dim(IA z76al;!ANJhmnC}TA&XXa;5KTdoR8ChB(nw{+-NvXP-Msyo1ztyf#uQNA;mOu5k@)d zqKQStXsvP5MP)cio9uw}?>w2TwTG2HV!RqXY3;m8$S^_|d6zTn6VMywbEE_S06Mv< A2><{9 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_first/why3session.xml index 498d1b480..8f350c6ca 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_first/why3session.xml @@ -3,42 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..bef5277adcae844229e1d40b924113cf1358389f GIT binary patch literal 447 zcmV;w0YLsAiwFP!00000|LvAdkJB&^hVS_m+`0H8j-3OCUMeafPAFGv>=`eX(lpra zs^!*hg>UbPp-QR3MB9pVEyIfPlC>k`V(pv=2l1go1rqs(41bizAErX5y7?tlu3P1KjO9{5UIY((2k)R9Y@+$u z^8T!EQAWN3hjdi{Ut8^R9tOUxk_YB*PdVG}K32^&yokStF`}L7rw_5ky-AXoSSi?yzrF^EBKSG5_x_8DLOxUDYtDWlzr^cQzpSn|K{kh{^=$M9Ol+~yy; ztlaPv{Xay1>Eun>l)vZZ#u>puIp;YesT4A&MUY62k>^JDZ}@xF2yhNs-fCv=1om)c0`9Y^PgDWVRU p7cMN2Z0dW4way-8aEkT4seRNSbSIVWy{=H(d;{C?R|7T;006kv+^PTo literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_last/why3session.xml index 18234e7eb..de55c51ea 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_last/why3session.xml @@ -3,45 +3,34 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..426f5b2bbbdc49b2bc6de5d4a0fab4bd71083af8 GIT binary patch literal 688 zcmV;h0#E%PiwFP!00000|Ls>zZ`&{oz57?}J`AwFr9%efGHgJOgRcTDQmp{TNo}WS z_vSw|cj8G24%omoGu~fZ!VT7kQ+ZT0&nx`gyJb+-&V*(T1FW_YL$z_R}w$ zGW&jFR*iPjENfbVb$fo|BUE*X@m}^r??5&Ka0iIEKgn6LyCvR zeI<^W<)jjU=Z(H$%g@AiueV>9b7sp9dp6j04cH}XPz>)u5qCN5NB%m23`q^tO)kR{ z0_}uzQ;xATPp0Wh3VRt2e;HeELfcQTK`(1Ny9#Y*SD@`|tL^0#X?s?qquO3xSlc1B zzJvCLM#ZR9#RJwNRGk#&ZvrRj)gZX}ji95FAhcv@hc<)CqIBSts5uLkb8@8((Zwi*sDYd4 z>I~wABGg(VP%W)OOLcY@I69CFnF5(XqNtTZj3z`SR1F4 - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..07800e740c0ed86047fa800da8724d0b98c477dc GIT binary patch literal 694 zcmV;n0!jTJiwFP!00000|LvJgZ`wc*hVT9ry;qg?%lmQ2As1AnsHe);)$Gn}YsoRx zcA})ezH1;ULG9Y)zA)*8icRi1HlZMp4PkL zW{;Lb9G>=y3%Xwp&%XZ-ODfX*3*3zNjeHI_6^kr?z_9QgEuo|6Js|j(ZI_xS?|b_3 zKy9S0y}tfQ9x2r=p%2ggp86iXZNB%ZrUrd{==w$H{jwvZm<5Y2-?Lvf^{`fqR}2RW z8W-(APlMmY?RR3W>ys0&*lbMs5t?eB*tr``E3RR@vDxocJ2{tqHf{njH5^!7BwX zj077B{sus9dspfC6$n=#T!C;oK-gNtJcE^|^LZn@kkltyd8+I5m%(#;9YSx1(CwKG zq}zA2ayb3GJ3=+5`!i!x&MC)fQJ^IPBe;};S%ah$*NO>)Kn|>RANXfi2nYcbR|ZvL z2+}I8QMgbVj#8n{BKChG;3S#g#znFi83}M?klWx?49W2<5{0yu3&mKHR=WVAB$X8B zoREn!NXQ~tKr%st$TS)_^-9LC7i(nWTMWAgoDGHHA zWg#3ZAqI_BI+FP`1&Y>)z!_tx%Pi7`<{+cAhJjAfA(jqE28+nKMNle>Ou - + - - - - + + + + - + - - + + - - + + - + - - + + - - - - - - + + - - + + - - + + - + - - - + + - - + + - + - - + + - - - - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d658e49d7a113d059ab8376bec408c34c9a111cd GIT binary patch literal 1819 zcmV+$2juu4iwFP!00000|LvShZ`()`fbaYjd)vcefUbVBf$;)5Bv=E+>}9|!QT>__ zD@%$*2l4*;ttKg1j;X}i$Pd_ku_$$^x}Kkk9Vz`4`u^)BhT9chcfRdbUvS&us>iep z_~-T};zwNW;&_?=%*aC4F)Lif>rH>#?mporR{iB4c!6%cUbgWwZliBo4A}1fZqxE> z+wS7$o4E4v=xW#fH?|?BZWTl8Zrkg)+u>i+>#bj}`uMePTX&OE+>)lf$o& z8b&XyZkEe-v+hW6JDBwuFB%xGuJ9A?rnffiiGxAjAMGY41BNXx8a^q!zzz1FvRk3+ zyY;G3jU1L1wDbj+U1&Gk7^0^rtha~N&j%HQ#;a`dzyG-Nvzx3LHLNINgPqy2y-Z2Z zQFJIhd#xo!uO>zPOz`E@N%O(qua@ASxj%qxyC2S+n;n_b`7W;d$*Oi4SAX@N4#B*i zse5tWFWtFxu;sa&lE+k@oSNCW+wS@kd*><})`!ck!+zav;|9ac_4O_OV|of_tDm7x zT7R>pVsG0el418th(!DISL?Xp?wh@U%5rp&Kaqn+t^KloHp~On&U^B9s^qipI=0h( z&(Q7sc1MMDkvCmDY`+QP-?kog>kzv^TekRdV5;z+7f1-`mgtsb+6H|bFfeM%rsk&w z2n7fQ2=4<3NB)eS41e8Cx9q!B+uv^Dj>fgyo*p)RPRcl%wKPZE#4$(DG#*YjCfOwq zb6^_U{}h+husmM+yOW@Hbx%kGZIQ?d!RA)+gF|ozjjX^ykfH8QJ%U15b_| zI0ti}K&L?GO+#k{fXU8vs}R2qjW^fw=0rE`?_7p<-uL}a69s-9Dg4Qi!q0&eUXW6d z^0tw3j^m5QUOn##MpNH0aOl7}2-e?+;MCa%3KpyutiJOzoC<%x!0G&xHT5MuZR*Bc z{Td@)o({9890d=r91rj#K0pD)69b|e2r!fd5#i17;QTn4CCr(408b5s(~UL~0bUIf z%Ea&rfN(biDaCyl(C6Cti_-$20-yq*7Xr}B6JSw>kivk% zfU`4T@!%W)%y1B}cyORtRZ3YWH3wf?C7tKahm@ELjB6dDOn-xaaakca$)mGegAdYZ z;Z=}Hfj2rD?>tGd%1ZA&M5$^eQs7=2&P8Ne3t=OREUT)#(xP_SI-{)D&f278@**gx zL(RM+AyFxwgx1QXx)#!cV2=aR98tE72UH3_N8 z8yBriNn&y-K@i9ht+2}KBom7yq$?%4jzL(-C1;od*3kzhAUTG{>TI~FjCRsE&NO*o2Q z_neH+-T`~8s^{MCF{)&w|Qs;yPutFku0fQ7&o-1YrlP>5WLgHR(=b|u< zF(0DJl?S|X$Qb~cW_^H|a=D@bZ8^8K6Dj8gL}e|d4igJZQx$U`IG45#q!L2VIP54Z zQXCDdfm;&(Iw^i*Hy5vU(HqvCT0P!2oliVTk$9o2}5 znk6z%2_XQS35JRqvXrS3Q-bO>N~>k?DRO3|sbx(DQeUKyrRpkBTTvG#?PD??fRO~) z+SCqsP3C1OTO|!qnMj=xlHi^iiXl)I7PAsX1XeIv&0BmN^TG`{ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__buffer_last/why3session.xml deleted file mode 100644 index 2c0d726a7..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__buffer_last/why3session.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__extract/why3session.xml index 3c8615a95..cf0f266a5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8f9988303ceb9db94afe8a49ff6d657d26f2c9f4 GIT binary patch literal 697 zcmV;q0!IBGiwFP!00000|LvAdPuwsNhVT9rz4cHb`D6Ss((WNWR7FCZs=Y>Idkm45 zU9=mZ^w)Q?2mxAXg#?149uish8_)YbNo*g}yriNJsa~(>Y$*M(x}?oOtC7~N(T~jq z(>Gdf`KCGD9?=@AG}5DL#b@W^b-z8Ob5_T<)n-(OOFE!0G=3g#YRP~piI%)N8Bcff zy`rf*BlD-66lc0O_esO5-_YuW>1EMh6mQ2c^G@7hLy%OaDhM{hPee z*?g*Yw38f7vmPF|e>{&Eg%1?yp@D^dP<~-PP}2G1QN`T{3i;6aE@N;XC*Q@AXXA0vd@>rNV&HCh*R0?sM>04X7%qxi{u zH=s(>+QjOCQzQeaGG+4B1}>xlji|J8hz_}0Z!)3gdnMmXl-f zIcRP|u2nQONE#P>wl##T9qOVh>fq5t*u5B|5*XKV3xYEl$E<-gQFAs1mxAX>WmP3K f$fl79Y7@&4xjD@m17~n;QaSY-tPMih;tl`+^3+jl literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__offset/why3session.xml index 5b4d0e885..c71e8165f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..53e82b519f150bef9ab428b7e6dc8b1d1c1685f4 GIT binary patch literal 237 zcmVg`q(|t#urS zPsI-HsJC!2zrcQ-bSF&f>i?ZwXm_5j_4tmn7HIlwz5=Y;M<@SJ(|%gwV?{LoVU zEzis0_EA6nq2(&XD%->=vyu<&Lz$^^(Ij%TGA4QQubUz`6{^Jfthubz5QtP0CpwvN nq#1JeL5b2SlB6;O6Zq)WD5e-Vv16ay3{mk7iN5sM^8)|?6f}1P literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_header/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_header/why3session.xml index 32f3dec73..765e3e498 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_header/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_header/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_header/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__get_header/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6d35fc3be4962a5c157ec0a64419a9f6ab5b7cb9 GIT binary patch literal 404 zcmV;F0c-vriwFP!00000|J{_&Y8x>S#_#(Sc?A8nR)-vX2@T{}d=;aaQM0gKZzVa{ zefr3?1Fb2cp^FQ-43hYynfZRRTOWar6Kn?z!}J1qfT;r31ANVUh6fl6pO>f5@pi7q zP@ZAt4uBwpaE>{RhY$*X-}8k0%c=}NI1r~{VhZsXwp|Ta6Ken=R?dM=Y(yVjik5rZM5@!C5d`*% yh4N0KB*iP=Vq)2AHcg~Er=+KT)oLe1Qlj;sbW#{8C1K1-WV%=Anjahv2mk=Itj9_K literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialize/why3session.xml index fd113d6fc..5a3d97e28 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialize/why3session.xml @@ -3,183 +3,168 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..da9652d2976cf470ec69cb14736e56bec7ab1810 GIT binary patch literal 1918 zcmV-^2Z8t>iwFP!00000|Ls~$ZyPxhz4x!!+WbD;{kjzHbAhafv$}rSxg!u z%Z}6z;{Eko)Q2rOb}W0`lB4O1)M{0etoQ0YQl$D1*tXrGy}bHLnJ?#b{mbQF6PSn( zm~Urz*`>CdeZ_f)v;OXTn5c=KNc?ktLwJGH1+6aY%OlUhPQ&X5zI*I!VkhdNzMF}> zxM=9|y1#7~pYfU+oKtFBtRrmaW%_OX8gII3-_6?o_L>%L8*h7lyYA<0dwtc-dYZRi zae71ialW11a`4MBzC|UyCTb1k(PWnDj8UGjXf#y5;3+5Pa2bkLM4Z((F_Jc_Nb-3iyk6jC?=h zbi4}v9jCbH8Bz(_X|Jqy=Q~KBSJ?K#cRB3yXHb5}`1T_j+tv2ug#S8_;Ehpw7mE)b zV>`#$Cz`mAYgEP}+LhFZ&@q-B9)HDu<8Kp}Ao=9azaKA$JeJu(WP&<_jxJwV|jmTta6XyoAt#XmCfE|_?B=w}lUYfi$F6L^dhj(L)l zCA(X!gpvGrME?Gnj%*p4dCp^_DQpShL=~F$xEZK{~1&>)Z?Q3w3+TdZk;E|3BZT0uY~jE zb4mT^NDDNN9n^i#_b-o73J=Ec_+w|>dDnM1?f$oOymt3Q4dEi-``d>V+ea1)`f@|F zL|a!2ZmrE!YGQ4?Z7*rDz)$P@HS35C zskIyq(c>n;jpS>epK-DN`YBSsKcd~#*CT4Y*we7&!5m8-%d%c~l)XG78cayLr8fav z`NE3TwByBvNpef>cQ@~A0l#85#W>}LuQAc;%U|)g;Y7Jn$za;ph@zJ1a^mIkqG{gT zH=7bZ!zCW=jGx*CWw6{gw^taz9n6EG@MYKPIn}jXPH?6gu3opNs-fsQh*jKAis9nJ zA%FwFnnT>$*}*=&7zMYtwSygfb@bJf_Ek8nAxL#`KuJkCto_`l1xx>tn>8%_;8(YN z!5S9A(cF4~x*py7X}2B@?t#m{dG`0}OM@^fz{Jv5Pnd&p=Z@5Dk5U;sNcFv@?F z|0w@=BmesCkQQ*q$M-1@r=$n9a2k#?;I^J0Qkah#&TynZiL;okW;28D)zVtt7p5Ia*PXorSzoT#cji&(vp9UOXNyl3#9Aq9m<}aaxPr&8~ z6R>%)G3?@V{{{{b1rV*-$ zoI+4wsTeQ7CE-I-&Y=#DBu9xxYC)KFbdsF4Ac&+>F($#IGaSo7vT;yELFGf%25iX^ z9BC1(j8LM7Qv2JlC0&e;3LV8_r3j8Qp;B_lo-ZNQAl(#-&PI${E6mxZV%RVF(gz8d zd*L9nUrT#IptRQ@5*2iig^IzX;zZC1jZ54b2ic}%<0xwxG5IVVSjYWmi7FV2LLdjZ z{aQM3cLs7%;Fu1fwU8$2Y_kDX5Tn;dbC7?-?%uAYXe3v5NG_4pB&4rxnk2I@T!^GN zC^U&=O4bP|(pratycbGx#VL5XtMX&Yt0#7c|B$rQPYC{%5MZ-NXm zvfO;k1Ux=2Diuw3LI9f+F7XPDv&I#+3vvL~r+^u9a3Z1QQ0BGTf@qjVD#AcOuY^@9 zIgi{7OIsV4Bh)Bp_&I4~j$93_|!Ad1e}shnl4Wkwba3G4iFTX=K~aIYLJC=>jRd1sIfkYPriYUZT=<%eQbsG8$P_?0 z#<@l*(Uhn>kBB?6K}!>)NyKy%hfdT - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1e81d0fc7a81a46f4db0cd569bd7bc2273d7b1b6 GIT binary patch literal 2495 zcmV;w2|)HAiwFP!00000|LvViZ{s);$M5-y^Ydkna_iZ}nf`eP1r za$&=drM+r=-7LS`Rb!W}UD$PN|F^o0_S`PkvER%uBZa}HW_5URx@{chY|iKO&=c8? z)teK3I_+#O=j=Sci#a_%uj18B`=efewKuV{tLW?6=I+<4wD@!L>Ta7w+brw$$4y+< zwfoWH+fBQw>znIl*~V4<-7an;eq0S**BOruH5((A*R8Ye`g&2vZx2f0$K~x}aaZ4e z?3wi~HgDV9ioag2+m&sWSo@$SBjJKqjn}V+3!W3Nws`b~Jvxo*=c;e6={9>KaH|>G z^SfQdy-xu%4lgo$(j9pwxQ*x&B57W;`!XkC7%K>E}qW!he-$9WgG8r%wStH zfbOw_J!J>bjf!)naBm83-`N6id>tP{$ZuW8XZGqk^rrUlEy6Cse#gRY4;17idOUQH zz8B)!`Q`m^p4Iuy+;E8rlh z^m2ScFsHhfZA(l)Tujje^~x?U<6M2YX+BSWhQ%(52v6qfL|ZgdH1o@2l>V|=868VSuwO>7Uq>(|B-k$Q-j9$z$~tG1 zJ}c=Sl?%{(I4c4pg$)h|(cw_Kj^A$M(#OHpy7?>CA*Sqi99HYAxL(`K&HfyeHvZYx zbteYw1U(=1{z~jIt~-2h9K5`By&lm#7&8x@!}pj+^5J{)=*ye8$>lpAl1GeWj~i+7 z(PP+n=SeeeOK2Y?y_fP4x7>LCE6AL?V1*X0xRUl9xP$2NeAuyedCH+hKm-K(T=|Ab{-?4>E z6`q2Yf|i1oQ$j`9H7hqrcUHlMc~Yb$-#blTJZq(=MK7$GAW< zJIb}-!s^26mt}ST*ni3NlIbPWKX#@cX;xO<er*McO#JkJTrc2e@7=ZEjEPi&vU*nKFY z&wKML)$TmoF;=Vodk;I0*7*`lJa~>?p!fly_+D0b{SSRid>M1|ScjT3aejp6`WwWt zH9qX@RGQBXvEc|ZQR?P)`q3e;B^OPYGw}UGw6oovu-$3D+h$?i0&BdnKK2Jc;rKSS zsna{X`_;G2LqV8BoBg?i{o_Grw)025#ItstGFjj6cK1GzTQ^VYg>PN#o3_E;{uOil zyN*sYu2**CF-&T(>O2sSJc(K66J?E6rV}4%jg<-T)vh(huMfZ=X^*}WGm6f6`hoHQ18CkllJg$IQPr_6)l{GiaF(4f%Z zJ=<_p^sALgzl`X6rEEBXd)`P@q#r`3pCm!G~<>t(A;Tstr60s#0eKzNLEG#X<}drOMAy;;EKhh ziQvqzKsXjsFIW>+0O(sFhD)Ix1Py{qn*d`REf_4Ms{|6X0EaCZ^n~&hWUvmHPMm|w zHJQp9r7VWbGp03HQ5)(MWllNgwU)UMkV;$6twEWB6ix{dHI-U2k1l9kV*!ZA8kpLv}$N*z!upW{U=A#d}6sruj=A^cP z844Kh0N#q2j84jH7jxnOuZ&HMvB)s@w1tp=&l%sf<=hj(d%MJeby?%US)@WF4z2RR zQ!jpqE^Y|5k5HKkls2hO&wDtb$vwN3&A*g z)B#D1YQqHLUJ86gX!?#_3^{>31FLmL8X)B(YTirKq@p32&Z`U#Eaj;(UZ5pt8*|2+ zKm~%Cd!>EQz8h6=)vI%sVG^kzFwbKC7o0K)h8#7}&JHFjmr!q*GK|^)IzS2u$6Kt%8|hQW zUM8!+1Cbn4AMN+j2dlY}r~urHnMXV8Ri!L(Dq{qd%JF28B<7gcoOxpq3%Qi8{twap J+PP - + - + - - - - - - + + - - + + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f02f3ac1e21edef8ba94215e0a0a708f4a7c3494 GIT binary patch literal 654 zcmV;90&)ExiwFP!00000|LvALZ`&{s$9H{-?nMCcDQU={AwdHK?NVqZj^rsJAj^tG z2XQ}rPku#7-KId}7^uAn6m`7+J$OGm-oPcqx#_Wk9-T4Z!EB#>-8>mH;KKr2hm+M1 zexUJKhZeoDOEbe^fV<7Uaq~9fQ#8Bn28KxfhOPIbFuRH?JK=AxTsRcZo?+7 zXZg{D4(?3Ot$eeUR8W_@bZnIjVOuS~n9Y{(`Q5``)yKF+Pdzq!OLvFy{fo609A0U$ zN^BD32TE{qqmP@XW8+wyRJMnj`+b8~iCF$Rbd}sYa<{N9+se@x?AxqVe`KZl7goOH z_hxe&#-VEXV(=&Il1E~uSn1B@e%hLKEeMXRoc5;DJ4~`yocv!gsZInO>ZCBKCYWSN zya{x-(+wtQ6{g&}tTMXg7nK_Sn3dbtkK{w8Utm*@!S7>k_8aCB ol95d6!b%1Lkz1g>R4SW$!L+n!EmJiaslPM&3BChNtF;sW0J4xrQ2+n{ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__message_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__message_last/why3session.xml index 8f5934181..cb593ef48 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__message_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__message_last/why3session.xml @@ -2,32 +2,21 @@ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..520948c247a86ba829f9b4ccfb35eb1a9bc11e96 GIT binary patch literal 305 zcmV-10nYv(iwFP!00000|J{+XZo?oDhIcd~4a@YS&)WYbDG$MxX=EWC742TMGSm63>ZJc5#-~&aMcdQy|i4mqTRB-+Ya=1m>-X-3#$Ja0aai{g4|HyTD zeC>u5^XT*-9rm4-k_I%|w?>lGO!UK3`yv~~IwiFjjAVo8n6RqzOmc0NLT81p5No_s zy^y`~PIvWE)^lfv-so04DLAhXZ|X$Wdc|qbl~IN%UrEc2GnzZ?D - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__present/why3session.xml index 3901f747c..b5caa2509 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__present/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__present/why3session.xml @@ -7,25 +7,17 @@ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1f6725f5cb9a09d45f308a3101a76546d202e2ad GIT binary patch literal 394 zcmV;50d@W#iwFP!00000|Ls*xYXcz=z3;E+Ptes>bI2i=&_bY>vR9et*b1A?M%|F~ z*VlZ~mYho3Ep09`$YW;S_}-Xi@Qeup8m+;CKApie8?7U*dTb58i=ux;ZPED_t)6f7 z0%Oc64)@wD+k~5xgFeJ%h&fg48lSZD*w_drZNN450qnMgg*V!_YX~0Nw7Z6<&?8Kt ziFgQi#|13i=eYzfaM7i$jxW$*0aqZj@B7F`>jq-x)&;b6Indz7H9d}H3~8wYc311+ zBiEQ9;kga#qY1GlhCU8dn5@p+XZaaIZ&Dwi(Q9bDt;rwL@%6Rqd^m}BAmx6qY=8M-t)XC=E$Mql5mSs2}Md)F(w68$SWZ;h!h#Yq|6mSaYc|QP6;pv$S6fL oRR)!XbRbH{j1qG~grKxE97yR#(pHKYl0mF^16<4>d)f;C0OOm$i2wiq literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset/why3session.xml index 36c04a876..385fd4840 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset/why3session.xml @@ -3,96 +3,73 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..168d4ffc26678492c6e856bc0a3c2e716eb236c7 GIT binary patch literal 1147 zcmV->1cdt^iwFP!00000|Ls~!bK5o$zVlb~)?kx1#;o%G*roNy zrs?VZEo}oGob~M|Y9gg}OR@2H&4&6OukY8JaI+ognOGX2daU+ebkgs`rW!6n%MTC z>qp)0aV@p9j?mgI_ck{X zC-mJfkM0G#|80s!v&|PBhh#R-kFc8WwigQo;r*2Oc4)J+pJ+_}(z_7|9!X z7=f0Sc?{Ym`5XKRy3)ZIt{9hzjIauXAr_L4NogLCbe3Yz6A~gO zD{x$mI&rQna4vA^AzSf8 z!MbFGL#MoUR%Oqf(Flo2W=A3SOd$t`MM831OAQR2uoxo5Q8KYGW|&nrOg`@r z(STK+MyZ?{p{!F3L~smcuttyw7SITxf}=^7tdb2Wrf6K`%#buW=vFIjVuS?AP4%g& Ne*m`0HgRk`005)HCmH|% literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset__2/why3session.xml new file mode 100644 index 000000000..1477c2615 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset__2/why3session.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6527af5d73d140980cfa22c5d31f03a64cc0a00a GIT binary patch literal 1731 zcmV;!20Zy6iwFP!00000|LvShbK5o$fbaYjz4g$^3>I%3eDKB7&SZM(=*n3D%al_| zRw&vN_t$qx*^2B)vE7=C(jW(lA(z<2K0X2<>EH1p`6PbBe7D9`o9cFbi(QNB9+$Z7 z@sI9?@Cuh(+U*XTBf@}9+r3;|VqJH%`FZu%0v6)LRTm4jfUDtGF2vPUMXODJS8xBs z4ORX7(L6qh{q@ikc9iNGGdFy{?V9DMy57>q8(Jqi*xR;$Q=O@4*OcpcSFdQh#Siz# z>vX;D=~G|V@uq30s|Ph~q`vwdT*Ph}mCWFmQ4gEuM)ekd!Q9^ByM;->2?dv5_K1a! z_2T_tX}iw!X<^PHs_?3?%GZTe{j0DJyJ7EQf7-?2IT!nqA^*<|`JG)7udkOieVocC zY)xISZ$=X^T$IB{_n3(5aVxPjqq{IB*tA_%!0ly^2gHXj zLkUNj56?nhKBc}oNqzZ<`p0cJ!hLua{PHRJ)mxE&0vt?0{^_jTjUUE!oz!!K*!SHi zwe33`ns~BWQovEbQNU5a@i6hY7!q-+5mlj5p;DpJcR;0q103av=6wYN1p@^G-vb7A zPx4ExmRc>fdgiryZWD>RZnyR7`j+xOd_(o9@l}f>A$xm!9uALg69-9jplPRL+{T-B z*|+PuzuVB3dvn+G&t`xgcjWLzqlJ_^=f1X``|ImlT;9;o%A0pN-E`aQZo3dy@28{D zZ*4#6@bGflN$6#N*_WHzx4x9058^GhON>iyaf69=Cx5|rlbbrd(}(XbE^u|7aYW|Bar^LX z#s!Z4sMmbeW2a2k_eX%`d(FE!yzp_1ecQL(+rMdu|NSQ?FTA-|C%)VnuiCF;lyN~B z7nE_qk2EfrZ&Wak9#t^*Lt?B@>_4p%%r;t|MNNS~fk1)4IYD4Q2zdCYzm#Vw&r+V} zHPe_901vnS`@f1&%DN zZ#PSs^dZvGRgsDHs5yG{WVv^0MPr}7{$Oi(6KTG`3i0&u_vE=V&-3r9(xe+qk|GE# zv^GM-B$P6_iO~k*e}Z47t~_DTNG=7LE$^xn1)#^k2grxOQsQMoHef^1W-TlNLC9IL zLN8@>I){)3eHHq~$cWiXkU$Q28x)D)r4}T0W+7EM1rUr4QCbSZ4YGg0Gv{myRULemT!S6XB=V-vT|89x(VzWQ-HVvnYX@t&lbOe~n>tMi=*Pd - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e214908f02b7958fe612e4730aed26d6c997d372 GIT binary patch literal 3615 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value/why3session.xml index a13eb9d52..2600b7495 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value/why3session.xml @@ -3,245 +3,221 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - + + - - + + - + - - + + - - - - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fdc977f1408509b4e886c82e00e45437290f9dbd GIT binary patch literal 4336 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__buffer_first/why3session.xml deleted file mode 100644 index b48b783b5..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__buffer_first/why3session.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__insert/why3session.xml index a30b230ec..ed2059748 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_header/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_header/why3session.xml index 669635446..476276792 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_header/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_header/why3session.xml @@ -3,247 +3,216 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_header/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_header/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4e128e2aabad5ecbef91fd3cd0818583884664c3 GIT binary patch literal 3942 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 Al>h($ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector/why3session.xml index 756e54146..5277fbda4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector/why3session.xml @@ -3,342 +3,310 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - - - - - - - + + - - - - - - - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..eb349a219b6f0c68fea6089133cce437879ee426 GIT binary patch literal 5810 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_first/why3session.xml index 4af96c3f4..4129f696b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_last/why3session.xml index 79edae60e..b45ee6314 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector_empty/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector_empty/why3session.xml index 0443ec911..612b9fc7d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector_empty/why3session.xml @@ -3,252 +3,217 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__set_vector_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..aa77e0dcd79523a16166cdd12b2e80c18685151e GIT binary patch literal 3886 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 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__successor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__successor/why3session.xml deleted file mode 100644 index a54aaa6c9..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__successor/why3session.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__sufficient_buffer_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__sufficient_buffer_length/why3session.xml index 0704c0407..3cb137390 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__sufficient_buffer_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__sufficient_buffer_length/why3session.xml @@ -3,52 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..81b1e89b7ab0b4c6600bbbbf6f5081af2d672223 GIT binary patch literal 674 zcmV;T0$u$diwFP!00000|Ls@7Zrd;nz56S6F9wK`C0U0adMQ?*$01jNrl?hbtFfQZIZpC@@U&<{8q%Vj!AxunZ}Qd?HYxaJ$AO9a ze$nlAA9uSgKM%X*a}fA9^1i{w&nxiA=>dCRuVUnG2XU@g%b9u~>rAFZBH^&`9WODg z=JPdv$E*B%S?ZX)$AJFz*~RAB`<@?H+!F7-_31bJz%jKPe7*Mbd}#RVWqmy3A&238 zgZ+^G^vfmJi+$ADcO_shN3?nNn)7ZZg&qiAM)t6Z30geof5dP7BC^Onp0@s)weEdIX-i z+p(#u^roY)PFx2cUh4Kj#4^j$d1dhvusvrJD2d1L2eC>e+?$ zLX`C)r1e!>;i9f1qm)lxNZ{Z`QWP%7i_*zbLG2KPt}C+I#S%&)ZTTDgutfj|e4xxjZ7i5)d0cJ$XQbfp%S3VAVqDA0NCW|4 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - + - - - - - - - - - - - + + - - - - - - - - - - + + - - + + - - - - + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__switch_to_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__switch_to_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..404c917d311cba01730698c1434bd90238b1f313 GIT binary patch literal 5548 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 pB!_R6JQJtM-;#kzRp - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b41a66f4c60794bfb6f8e190c50fe60d803342fc GIT binary patch literal 1382 zcmV-s1)2IEiwFP!00000|Ls~!bK6D?zVlb~*6S|zeaImfPcxHgFCASu*jJ;eEGZ(D ziTmpdQj(*_PR0+Bbz)pdnZ^PO?Du_wcG-FCYwa^Q|D_nKucpZj(Yn;3tC>L@e4z_oOy;<0Wyc+IiA+D~Pa=q_qCSYmx-L*JvIaR2H%s!oTSz#h{8&H7@$DyE?aSch z;u)v?uG{Q7D*gM*J3jz#AqF7!o1vIf#UN1ZXvv5wBbKI)HsXVViL+qx^3hI7g|jdd zVBnaIA6e)o#Ms-r8bR^C(uGmCnD5MY=KHJQ`*?Yer_sm3)CW9;h1Z);G__kAx>G0d zd`7$DJf|X!RHN+K3uF!B!b)=i89R8=&la*P)^yhNM`?P~GuN1F%r)+x9@#%Nw@t@( zSMoApPe}0Z&-Nl_XU0gzbAV5WOQ~2ke^l9&tecn8&EqCQ__?Wm^^UcUwT`v!>9uH{ zH@qErcSbiukf8;dv4I0UV*>|jo((X7S$4qSaPS0TLX8UdZGyr5r(t(?!M@OC=$-?A zryWW$cLfedsZ3}l^u-9xe0~)@>W|xBoET;1P$Sm9*Q9-~shOFjbzrVCSGiC5>H3s; ze|Fe8>C8&SO2ta`lphqofAgho%KP?h>7Tg-FH@}f;DZl7W;ys66(DXltG0Z+yEE`L z23ZmQzinfd1eSz{NW!xfVYXHpk9WVy| z$s27j6z2>`Ev!y8D9%Xf@6csFz2ULnG>bx`_qcXXW zk!gY$f)^W2gesNSF}vae6jeplZkV`zm{Bb<3NQ$zLeWM0sDa8_i_3v(lgP+5G&!Ae za5Yqjo~l#5$Vv-A-mJ=*jC@m3ST%&uDu_yJq=XAjW|K^&KLZ&B3g>JwNhe(c2$~ud z2wjabL5RY7GLqt9uE3N6R%9s@go@RMt)X%(FttkeUo=!@NBPyrOAloa}G0j+QnvQy3v zfRVa!8MBC{)L5t*IR_t0XP87zwv@omTy}C01c&}ivR!s literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__update_vector/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__update_vector/why3session.xml index c06e45136..610f2727e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__update_vector/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__update_vector/why3session.xml @@ -3,215 +3,172 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - + - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - - + + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__update_vector/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__update_vector/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a0834fc3d7bf1e9c51abc477db0bc9a9523e4c70 GIT binary patch literal 3086 zcmV+p4Ds_HiwFP!00000|LvVykK4KtfZz2i`qqcy0OarvGzIqIEE*t4Ukbe%y!IIN zUSey5roX;J$@j>+>s`sKI!u7IY*QT0aOTsHl<4NO4L|Pf-Q3US_uuVuZtojAn=Rwx zpYQ%%vl{F_mrv2&+Qlk%hxt#>NpyP_t!Yh8oc5`vq^7s|z|^FD)irBhRSmbdRlIv_ ze#};X*vDAePxiZA%){(H{%5aISi6T^eRO^JSKB<~B6b=5Y-R(Vu>QMDi~r1KtN86H z-ut+Bw3`1n&O%J{`xs{K$LubyR`y@(&u3{K7h&d~maB(lez#oZMywte^QQYQmu&_U z=O6AH)N{6$xN5ch%UUTql2!|Qd8ItP!Jb_;%O~GFE$w2~cJlbP%x>~+=P_UG<1((| z{jp~~7ZCJq5%HdYXo_bS&%R2}J`3;j?zoeZ59j+5@dI8{maRWGd-)~&FK zl>dH?u)Bxww6M$B_voAKoV~R&)Zq85N~itJygS~i496<#nyL$^-0~sotOwP(s}_}3 ztb}j!Pv*j#H274O+7{}m z6i?|NY@ZrCPiDmZLZ&@3o%*RkPf%l1L3jS4rD=gjfyXZb5BfHGz{$ZjKaBu3pL=qY z-2R5??Qf%H6$gGfT>gBVwP0Q}f)*d0rTgIx_wmaF*jLSUr|5?P=5?1+UsC7uvhR1! zAw!#gn#WnLph3R*-!M zV4a?96c{AAN9Sl_4W4}KM06QXw>W!{P>qU<=TJDFxIPw+z^Gmp4i_EIvhY3V>Sf_8 z+I>C?;fRG}q2tml%=tqhL?J{WL?OhvA6`+45vcf4l#Hm&$=<{Ok@o2K)LRkO6Y)|UrsAQ6NhcKqD^=~<20pKC_p!1~W? zo7Cxeuxzq9>D0G~!tEVpJ+s>1dcNDWVvt)o+Asn>)Y{RID@5B?4KU4f*1F8AmU_0W z`6Y8y9sK6UQf4BhOnbsl9g_}TE(*nHeJ zZhswk6Y=BCQvaVZkiHp$@D>Qdvk-)S2*NWEgaX0IL9kuktl8!%(f06g_}`AA82LaH zTz~|(pI=}h{ZJSd77msV78Jf*QDq086G8Q#Vz+QxGx##@@-u6n<}6q%SSwh22i8Ww zKo+o}0J{JM3TO&w3TOrZ%?K=LM>iW7@aup<;Z5Pqb@HZfvXIH0!MD~9^Oaw&+U0yP zVi!!}hR`-3FZe(Ka`JL()|jDVh-VbygPj0V+*HgYEjBwM-J`wZ%(rh>g z9y(EbN6`^=YNkG?ix|AXu)wgu@XQ;bzn0i6u~}ksda-#K5j{hQ-H7S(!!=BZ#u`Fl z)vK|)3!&Bx&Muu{eGtUy0mbQ2yG~(ztjE0z#|PkewVPOFcgdxj9n?ls{S48^SGw0Y?dXANgA{)VN75NL36Z_SXVR_?PgXoI$TN{C{3u$w25Dw|NZb@NTRA??`Ptl(;Q%J2iv;GI2ZE+bOm@ z$puf~$~auDA5Q=|>vuBW2H3;?7*|YHDGx>{5;0bzB`irH z3=kBgB5()nPxSAcS2BbsgHjfR04xGZXz!JP5I7f{U@1}=?MML2A!ro>bA$(xLW0Co z0uUMtK}A!t3JghtVxB>P1LGM$^!*FKks}R4S2`AaYC@DBxAYZ@^x*po^q)Z zDi%5MNdqHHD4&EjT&U==kV0`T;Xlbu1gi0CkzBCO8mk0TF^kicjDi9QG(|9)g0mz@ zpk9HCs3Ub)$W)Fb$+9h z#OnaY7_S10NqYz$ds&-kSjd$Wxzxx&|M&M^tW8fR49X4XR`jzN-K4aszfD2Axx{> zE+CZ?K1k}NQ52}~N~70d0BI(GDjKuxfmXsvr-)2iQbQOT-{N2ZecI|osE8?-f+}L* zIqX7ba`YJvn$tuyXT}-AZ7Y#g*nQ|9N@ENpV9_wj3`g%49HQnCaw%Rh3_!MVU72awF}45A_g$q_NC86&A+1M)u23yOHM$~Y$Q+06t`GqU98H`v z$h{5NLpDXilp>I{m$A4!x9J3!>R7=2|a zB0R^Q)!JbP5Qyk5NC8NIVM2upxfE1d8|I`X#yan8Zo9`0q|)T>U@BXJu?lU8zJhe) z(jeS~KyCyCBL~pNsq7PsS4udnB$q_PWhFWKV~Siyo@vmQ637XSEyl=-x%C7C3?Yf$ z$df0;wf17NqJqn)6uN{-DFYaFiv+J3G(;po_8g|F;1J9*8ZHw>u1gTyqle)!qsjSv zSz)>oK{}MhEe{s2JdtXT2=W0#J*i|`9ZhAOOP(S?y%j+abQvT8Hi|oq;j6P3a#CSi z69O)au;^D&lVk`XR0oO}r@0?FtsJLRARB>e7Mw+=qQNsElGh0<%{p?ZxHma!1ES3{ cj*Lz&qH&3L2@v`@hB&MK2OzeLXSuZi0CWiG3;+NC literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid/why3session.xml index 26061f79f..c9479e541 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b0e6f333730b6213ccb5121aefa820ee4affcb1b GIT binary patch literal 602 zcmV-g0;T;QiwFP!00000|LvGdZ`3dl$M5+R+_`xCiY>um54)lg;)HUw#`YK@rQ0R; zRxO_%r`s1*5eT|1AS+U0C4bK=^OKz*Ms&^{&U2bBoXhlOPuoEEMtS^7E>aq|6rI0x zr<5~(y1wtyNKtwn zF_a5TQ#`@90}HHPu$;M>c25?-_lf3$g>GYrV-9nEiF^mPIl*|j#nUmkaeI#Qh}*I} z!H@HvaD!8(!*Dr0qJ=9{kBK`v-IYt1KjV%%eDV^ealUDm7wVMbw#dT51K%*fz&C#f z7|_W0eKN{YPPm>}M~ky@sqnS3j>h|w-V7374{&KxKdb2&k z*vlj<*7cq9!0uA!|0!R0IrH_=32R(6t{PWQ$yKdmF7rN={fv`4$7zf=j_;PUwy-q- z8-PaxuzvDnss^0Z zKi#`78XcMSJySej1dby1nvpOFq>~7*;GOAY?3J;GvEYR=4155js!S=6Ox{-!>pU_Q zELkIx2xCE(oJPy^J_$H+9pMWnhQr5A~7Eutr>l#!Z3ipIvC o7-LXHx)UZQG&UIyeZ)R!l;9ztvS@usqKf+N8!F4)ZmJsq09*GamH+?% literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_context/why3session.xml index 592a0a8a3..b5712c0f6 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_context/why3session.xml @@ -7,138 +7,130 @@ - + - - - + + - - - - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b6f0772dd3a5db72ed12669055aefab45baef6f5 GIT binary patch literal 2513 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 bWu3*eMCej%3b-ew_NMqh9!!%o?sotHekRe+ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_message/why3session.xml deleted file mode 100644 index 09320b322..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_message/why3session.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_next/why3session.xml index 15e83a783..84c534359 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_next/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_next/why3session.xml @@ -7,22 +7,14 @@ - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fe704bf792b8eee877ef418820e65c0ae0eac206 GIT binary patch literal 321 zcmV-H0lxkpiwFP!00000|K(D#Zo)7S-SZXw1Uq&}JTS0SATd^~r}O#TS_&bx9R&UQ zCIqCmVyswLPEV(I@7+B+Z;|q8i@tRmbmtEDfgp58i~+kmwec+ujIY=xp5avPaOEU) zmt63^&u2&<*mHqPJYpLh^pPDCr*w#y$(z*%m%DOCA%u~h4-mP>$OM26;Z~z>PXLKO z2kwY}pcK9s9Q)9*1AB)3XoBz8KKQ_`0~+FJ48OJ*CHgkxnK4b|e>0^+m-&?8>YM&} z$(`H@Dp%vRDaV2G5V3_zP7hv#=IEa(cDcI!$wy}`uUSuT|160Y1+g+34T=g?BW#0Y zrMJe&vh<=h&5K-@1uH8Wi$W=FN|Loz!fD~`!qGVBXe5b(z1MZ6j3PF=GS#9sRx4AL TR@aMKi;L1X!drBt;sgKyQw5m; literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_value/why3session.xml index da3d61fd4..45eb044db 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_value/why3session.xml @@ -7,20 +7,12 @@ - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7e2e1cf76458b6367a0a7e2cb7afe9c87ba9c073 GIT binary patch literal 269 zcmV+o0rLJIiwFP!00000|Lsw+PQ)+_-TM`MLX&HoWME)9aXY%za$<*z)aFW(o+w{W zs&W!50|OF^{cJxyJ==(c0I|KERbuSTLWI9MW2tyDrd zrcN3`TK9t{?H - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - - - - - - - - - - - - - + + - - - - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - - - - - + + - + - - - - - + + - - + + - - + + - - + + - + - - - - + - - + + - - + + - - + + - - - - - - - - - + + - - + + - + - - - - - - - - + + - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..aafbc9c7096070f0697c0504e1072aea3847cfb6 GIT binary patch literal 5406 zcmV+(72)b1iwFP!00000|LvVgZ{#?Z$M5^8!xBT7{Nl}Ym-7jwOIDJk}?m30&)I~R4{(R2& z|C&zc>HAB12x;TD`RxDFG^RXzNO9`_ntn_3x%;EPJ`Il#i}bI>bn0JnPS4Xkd!8>Q zbYj1pps{<`wq-WjqQ`G+IV8Q&3_E@^{a_SYiGMw~Z?iC+J^bmOXYOI)@_lsw^Zb(B z7k58T-LK`xKv{~;pojnd?SD}ldF8HOCUQc{cqU>(zI zm-*BEY%z_qd3c_eR`}{#o~8TPUSoZe``u01z1%NQ^K3D5_ft2Yzo6~e&7eZEAMxBPn&KSvp9WvPB8^E_PBG$5-}xnpsf3KHk*y@zT5rT)WXP4 zGod`NI}8u%dJwV+n&?&gcf&k2gDaDNc;x?V`P0y6q7k&i0+` zfq{OuQlL`cc6_2z;A0ec)z~T%DidzZLn;$qWkNy0amOFiQ+kNSVEg5o@+i5pD#+-B zzqz0@(kl5uJ*4(-e~Ao#7+n8t7dHF)+gdx0j*HOo7TGI94`e92*?F^m-%@qe>Z;XM zFWXg1>}UJg4m;@-_wFpC7XN$9CGnJ5)kT*j} zc~U|)uz^6)>Ti9M071n?#YM%%mEc0192YI3DlRH6DlRH6KDu9O<6?O#S;3<|pHzZW zf?N|pPW*gQUfM#V+r3!xBe37M{z z&!}EUyPKx$gqb%sNR8A}&@1z&uqjg^6x_$Jr z<~1(h5#a3e8f6yZ+hg2F6SlC}<^^4bQd5MQB79c-+&+E!{n+R9@r!WrnqhoW7ytAb zM*n279yl{Q9#-J6G|3O-3^iq_DZ}UG$@Su7XJL|)348O+?TUd7Sf}`kX{uHyH$r8ifbsYq4={s3jD;RV`WBVMrFn)WX4a=TcjCC-XA?2zM&t91Okg8_G~<6HwytO3V6!2Q=< z0UX~494p+~1YEiB3gGw$09S4w0NkraWv*1%hZ@y2j~;iO1b?2 zsE83na*0NDmE+u9))33MvZdgXCHIdpAzKYE`(s$gZ4Kjp$J z{LvraPr3aN{#@rH^5Og$ZJfia8iQe_VxwZCV&j^OYD{cw=N4wEr&l1c&TXNo4iM+a zW=}<}YG4;W&Xqxm^%S+B8`Ki}Q`CY?_|_D4dtul-#RsOS+uIMJ)-^ua4y<}W=Ic=p z%=?M~OS`eJnw6yvaHLp(dTaiizBQG7>c~newf@xItqrj0Ks(N$V1{k@+FF_s{MY>3DSZ3a z%Du|H%Do?54f$vF((0wvOE1|=&yk%Rx`*ocgI`|m549fci40ZGPvPUN-6V7JEbMG} zr(1j<+OjkR__3sOQG{pv!WbqzyL7_$uXfh`6m>sE-A{3eMs=0rJZwM3_yD@r6~nqR zT31HTZB&=Lp`vo5a-(wNQjMzas5lq4s)b$nIO~>*x~1aMrnG)y(Slsol-7VO>!QVV zELxm&fOShn6LkD-BMAvRMagMH$?cK*ivy}gdaGe;+2Dwy7QeX zHx9NOe&}3b73upT?NB_HXAGhE6qv~arUFRtcQCwrNY-gEJTzaqxwtgYQ!e&(1S=K)8Nn|E;df~hmDOWEsc}`09apGb zx^lcd6$1gjY?J!x=F72hv%g2G9E;j+C0d*z-KgxU>>Ah2Y-QI`U+I`Ho?pV^<=Nd& z+x?fXZN02msaUx^52#of2`k-R?u}{C%9YBM&*K7>E2D7bq814G2%1_x*U@pUlY;;j ztm#+OL;FFVcJIyLt1)>9w{wmk$4}qPYjqF#;pnjtUUyqy*j2t4{dt>X9 z2c!$P3%gA>P@~F|<|K4Q{tkZ*RAdLpim0kGyi1ykbq>(fL!e z#GhQ{sJk*Qc$wpr3~IV}$4{A`>Py^}q29?)Dvf4OdUOBUoyuWdxFuLOTt&I~uz-M~tfWBUobl(K>w>Fg0NkBcA2OTFR_-kS;e_Nt&^xl-8x__fnPW{iDle@bhI2ssYsx9VOD8 zB!aH&C}g8Uzi+p^{ZFzyQ56G^v&HQ3VZy`@bYjD3%Q>vY(%!tccR|*DOJ=CXor`VJ z0*NCNBBrPG5Yxk=lRqxs$NgSTc&FA2_vXsM~SPiXH&B>e`+RFLuUiW-cvQ9Tc?t@7w+8Omx3ALtmE!rVY+q9@Uq#R z(}#z<7pSJ%8fB?gcW`y*A0O|h>H7(DllC<1w>)m>EMsQg0Y0-kz-K1#FNe^K4&jXL z;f#KaXNMkt_ZrgZ4%6rk)ad(EJE$vb)v#B=Mh_qxy=Jr>`}~-*u#Jtuw&U$l+h$wS z9cF&YteB3zU4y(jIZ;V?b0nl!fGa{{{(k!OIKy9_Tfr6^qstfg=O{P}vl0Qid#3m4;g7}FuEPVLpla13)*2EM%GCZ5ZI8IKh2L9u?LhY1QU*_M@pTQ1Ed%O5VbWJG( z$>ZhzAIO=JrJZfwqtdU^?c#3t(d=1%(q8YjW+w($BAA72moJB&{~TX+J~B>b9Gnu6S_Iq zK7x%chtqH9rDQ_7|5sEWi0Yv)CDqXPLlX`g?})D@C?~62Z}9K57;QI;S`GPU44G9! zKC(Q!9PX4~jXgp7Hhi)jd*_3(Z0PN?lGSbIZ?7R>?c(n-q9ULo;G*PN5pXyHPV?Mw znr380Qbp2b$@9jLbOK^@56dTMrShWk;=<%vd2#T}?YQ+>Z4xD)(xB5zm zN{9=SXC=gC5#sIytC(XqurY`cmPm&l{zh)*Bm>%3&e-j=Lwak@{`-5A{&$PJ#i(oH zZ|x@-SK&<~xUoVzNrlax@gR*zEYct(l{66dZ}h*7Xp~Y`8N(EjLK@;J6)_njx#x~r zMNo<~A!Z?EiY%na6E~S9>U=W6hu{PkD8w3KlHyX6q==B5DN2+lGo8` zR201l)M_o92nmH$!?f2Z;)CZ(Q7*F+IS8$^7lxweD5M)3wKZC1>xkEkaKU{F43%4> zBx9vdrb!{D=mHl+r7Tm95q;v02NMzxw1~hqR&i1G#|Vs0dM08HIcX&b_ntZ{QHYYp z7~x59Dih|ciO$oUIW>$(E}aUjl%kD_iD=KWx2VB6LNGK5B`Hs!3DMTYAWtm_R3?ID z#3$+{Ct3)uGojHtQ%dm$dc}w$^+FQ}Bl1#D5|&x+88Nz)5)Jo;(qsjPHUza^NyUO+*Yjc_&rU%m%}REu~ZwxU&`_w}OU%PH}B5N9|nE5TUP9 zN;f%^kYrFvde|X>MwyWjT2kH#XN!8MX|l8s1T0N*0ckO&HRUW?FKy6_x4pNG6R=vz zBO#gCKw%cjE1PT)PFA|ei;*TN9d%26J(q><>PP@y4~IIUE%K*k%Ja22v}FmnPIf>ppOIdzJ- zsB&9MG%z-%WQ@d15>yu+e+e|e) z3l>m=w@f;QatfxMIGmm{(n*!+2BKDqyP#B%@IG&{vf3zPRiaR1J4S1!30n1e<_=>kN}no)uf= zpbf;Lw4o+yLt-=%(9+x}VNx_c6}WNH00u!4aL@$HwM(du!q2lIP7)YyDJ7c}lZ+Jd zq$Fq&b@2i3N+**|A{0q*)ku=PfQ4zmBU9XNErFU`&Ki~TB2}&%W{eA-WsZIe7i0(t zJ|J>&U8+)BmqG894m=sC!w0m1YN^y5hUvJ0@JlJ%XiXGU%n5-NK(q!7gn4Ufi8U-2 zFbUE?gRm#mAD~TRsEtH0qX{UH;HkwX1Z|3cGN3V700lCF@JPa6VXKKpS)?jhqYwdj z^eizAIyrEW5KpYN3}OS%N-5sN7+@2GGApxzXG5tDZfPJ64=2o}lxSoGn>FkhsPV42 zlIDP+$buT&R2WYAc*b*aX}OgunkGU$+ah7t^guONsZ z(8LmegoeCAG!AByghxco2z1^?hcUvIAjVS4G|GZGh$k?X$TK69da8lWOcbJ(XzQ{V zBWF~X{m?uIgCJ`JPXW<|$0Fx8P>}{CA_z8+JxiJ}o@HRv!cQXeF8j6=Z6aWb_zGMh znh=OUa1|(%CBP&l+fuBdjKMKdq6!#SM zSfiH=W?V{%21aFd3PeLtFg}0_fP)QEaLfb5r4-_As`c%lP~rq z5oje0*K&jlQ=+vaPQj&$9!kjWTGR-lERiU@D6t%DG91vch*&9<$_oJ`>^?Z7sRWjQ z3I(AO#0ix%!jUsBwk_HQ=yWD)a2J#T#1P4>k(x$Mp(m|M{3i|6lOP-fG$9l77Q{fk zkXk@g>tcsOthETSGV8>QEfC8A97fLwK_F7Ga8)7JN~i+n6EZwo6*D!75_prdG1^=> zp?H%m;t)fSOGq`i6(oYD@Jbk?H=YzvQ=-Wpa6ttDJ_(Q0;Jq)o4a*YRZ2eJ5_@m>9 z?i|L0fP}C@OF85pU_TS0NL8r@o#e={oV3On4zETil^&rXY3D*h>pB)LhBEf;xt+dFViJ0iUGqk$i@N^YGeVxP$`8(lx5J?JBqMHWfG!v8%RNd zf)uZf$l5j>v6nf-Qey#4L?c8$#N~hpNg{16+90n7a**xAlpKpJf=wYK{KID>lCn06 z8rmS&2en~Oz^(=iIElr`i&f%wS>$D)q0C%~b~GucOi6|a(pA{6GF&0rlv2F;e?GbI I&9r3!0CRM0;s5{u literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__verify_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__verify_message/why3session.xml index 0dd3d1d6c..f8c491273 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__verify_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__verify_message/why3session.xml @@ -7,69 +7,45 @@ - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__sequence__sequence_size_defined_by_message_size__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a46019bd946a7a8c65cac0b97d44659648ef16d0 GIT binary patch literal 832 zcmV-G1Hb$qiwFP!00000|Lt12ZreZ*?fDhy((Zi}DbxsYlPX}l*kdLUB1<+&2X?+b zBl(DoM2d6l0!r8rD{{m)=bPb@(?xs}r)?PEDh`lCh$V){k)wucs zp#ZKnP(r#3moSd;!^8QIx0?xWrx4N&A`Agn!#MT4x61}#>$t}<2Uz^?gFTw04`9UK zhj}nY5lXq+#LHCK{s8zBh}M(yAE(&D;%U*2%DSrI$Uj6bY<8pc1^$^{zo}E zU92Yh;d@S6=ZSQS(=_Y>$7zT=Z65x40?zmD8^*W8qGD|Ke(-f~&lmL*##hhCMa^_P zEHU2(rinq%gHs!4Z_+7BK1SJ(g|}?cO^7R+bq3yZ-L5wfnrhM=2uQZ*4}>F@_smXf z{|D5*yA?Z4?)9vw4B#8^`;!s%I!Mhn`@BrLBQzv?@iaO9kj9>ps8vqZPRThVUzU-z zXMu_o@ocndH*+*F=^#p{hKeIY$1xH(DDt1t#7qJ+3CtvL?j+FYNuUjmY(+{H3hsFo z)B>oR{`K>|`Lx^wriDFCE3pByw2aTpD>JX0W8TiZ^7~0v3t;AwU*M9njq?29bOsMj zHQA)eCPOnWIaB}4n=mt%%v|z9F8L>FMgDWO(!`?18C zgFpExL*1Bnoi3mu=agxIUJAiMdr({|aG7iSioe~x$W=UfhQ1(ACbN<(g7G}^WV204 zk`(KNaV|qqMq|#xqA5;TtuWfGq{)edM2Fnkq)kExQCX{XM!~)F%4MNq_9P@bP+sYh zrDQV3oJw|#3A9pk6eZf7QtD+wwlHffD6pI?Kw+~lq_Nbfi^9Z6NRtm-F)VSkR&k+4 zR+{t|HaSMBGaw<;(Iu6w6Ua?u7JU}dC2|rvmbAo7Lbd~D$o%BJvc_d3oMeg=Afw|d zf*>K+p-9F`pRKZ}xZOD&8Cc^r=ctt-A>TQ}3u;$5x!xf%0~ric;K}(y__B)&>%IaL Ke)!H2EC2vdQJ1>_ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__available_space/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__available_space/why3session.xml index 6b0fb4906..739000cbc 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__available_space/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__available_space/why3session.xml @@ -3,36 +3,25 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..930303b18f2452f1e347134f514be2d6795125a6 GIT binary patch literal 385 zcmV-{0e=1;iwFP!00000|Lv4PYr`NIhVS_myN^NCn8d>_JCqG}9Jzjc>Sre;HmEJ_ zzn^Kl!Nv~jps>R(BKr8g4}4&LLVE}}c>_M|FnSCb-DvS8ZV6X7COU1G zou)&nyrjo@8ZDS@Oq=+n?0B_M`9kGWTKW>i26i^%zfqebSu*8r6R&7E)P{Xb>Ti4U z|G{5l@DF}{wiTDyTAC?X3K`08vn|IN*Qae&ap@dK)@x~ybgLUQjQ5>t+PX$5-3@yb z6(_CR)<|JBZ$+)CF}-Y^P^#l3Q5UHG8Pt$)33fNk|oO_J374qRKbwh#03BV=FqlX literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__byte_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__byte_size/why3session.xml index ff24dc301..e80149c55 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__byte_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__byte_size/why3session.xml @@ -7,32 +7,21 @@ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f6f8aea854fe0c9e891d27bf4fe9663a9aff2180 GIT binary patch literal 414 zcmV;P0b%|hiwFP!00000|Lv7eOC&K6#qa$o_Pz+I{OL{(9_BJQAbXO&hDxQPfu45g z&JN?ZH@%`OtRfEMVQ~nAkUUba@_Uf7!AmUne&QWYOx|Ne|2$7=ICx)%z4u$5XS`+a z>3%GHDBh<$&84d5-H?lqd8TPbDu-UKH^1<*2fXM7!QcDglLel427FZ~Wgg;F9ax{< zyQp`@hY`1#d>;2WWgN?Lf;ZD|#x)KzKP{K3;q9(G`1uZZ+?1o;eAK938toPS#F+Q> zRV4vgg4MrHtLQDC*Nd+_My_y<=kaOaU&#Ap-rocc?-R#7`U%Hd?%V4MYW4N`TKy+q-)o=ej2)4&rc)-iQaeQ*vqnKG zNRX|IDRkNx_XDm>qnu0*1IVrwog$7#VjUKf4goAwk!Xk{*dV2qNjob*xYXK69ZC@* z8c{{Eu^f^nQL6!TiClETRjEowqY2tnk!m1F - - - + - + - - - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab65b7a8ccba7a1a8259cd2cc5f1ba9d69ee5d56 GIT binary patch literal 720 zcmV;>0x$g^iwFP!00000|LvH`Zrd;rhVOcc-g+nskkpVP0Zjp4g60KuC5D?T)EgwF zNZ!7qI17>pOhw~_q!q94AyR_A2_H#Y}&zww)b7%XkU4;dZsE*lud0n ztt(gbEvHk766?y;5)CU~WVK6QvO0b6*X}~R$*6oUrB2jx*D1wrT5?6-Us=sGr)Qa+ z)*RBR9eBH*Ch4!ce&6+vYN?HzaOW^?4|e>}dfmk}Kid$KEo;TG?EUlh*9!~dn|&JF zyn3Pc)FeGnxZZAWk5_rTDLU1#y-WUrO%AuV|4D~f3=0Dm1}qHt-x$Da^bcb`PGdps z&UUn0NBY`GFR$M3;o;4=YwnG}Rc`*kO#FfD{DC?713CEvv+)P=^9N?*&zWYYH8}wq zk#RzK>o+p%s7FP0{yK57v7ll>#e#|j6>p+~UL9BbrFv@2>#~U}v59hNB*@WRW4yY2 zdX!vZ!{rHldR|VwK+~xseNK44_(ts97m`XOi@qI}3rqD*(^gVO-=OT^Otl z>tI={;C(bsX;XqQAs8bJj7p~9-(~H*N)Rz|cTABLq>sv@_rY-x7JmS^0cRES9RL8= C0$eBn literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__copy/why3session.xml index ef20ecca2..736dd02e3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__copy/why3session.xml @@ -3,155 +3,147 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0161af815cf9792ec83305a439c18216942f538d GIT binary patch literal 2456 zcmV;J31{{niwFP!00000|Lt7MZW}ui-S=0_esBR6-vn+3@GOimVB~HF+BS->M1Uge zO6?$?ub*P;VObByj%7u%2n2%Ms%95YopVT0WV%}n-H)3g#)mO}8-{i=y_=+I_kejg zopm@udg-ewf5+(%$6d)4 z|2w@;c#Wf3n!hbC*G>91=^onISDd5Zq%l~ahgKg zV#Id&I?baWZQG5$x9ztyo8gz#w&8Bvr5|0pY_n}=lhLrF^wTKL20$0a_oGoexf@d8 zw13LqtLNRWr89t!f_PT|6-#KTf$4qd?x#3vzvE~a2Qth*yrK`gyMGVAEFbzJ#Cv4h zm?mi))3_^b-qYm{zs%oml;AauhWqL4jyk=o9iX`Gm7JKjH`{2569DkoagVbUSixe6 z&YT;6RdklUjM{C^d9?wi&2Pv&Oh`X|F~p$U>%-n zAn!A0=*Ru4_Nw;Z4Nq13Nqj>fKRA<2fAU=h{X>`9+3F6N~9W1SAGEMOiO6!%gKGY1va6Q|9 zEoZGH$-s7vSM#Ba?;XnEx^m@^3kS78Cs&|DhdPyAzT34Q=$4F0-0=Q%8k zABVFroy*epKN}eQC&uA-{G+V%23r<>xALN(U0L0hgofjoNaE`psP0kSW1oBQXWWCo z(mnW2o$(WJkC$Y&&pr0sdzjfNu!EN0t<1yjHxKtS^RU(1s<%~ddx^I-D*y)o19wAz z4&1=pz7f4@3uj{su)`PNT#W&CI0I~2Lv@Cy&d~It$9XhV3%EE7SZaK0Y5dWTb0P5u6c?)=)2AJvr7v}+W8c;pp&%)t44Y*VbsMCOI0YBf}G=RmAko4wuwc1!( zm@hk)WrW2H!Yl(x1}huxCm2_cUpaPsT$dp($$U1Jz@OO9;^J9NLALq>d-`*V9@KQV zYrh~2Kn-C3c|q8Jgb3vIPIKVPZy9_s(cm}F&f#Dy{zabi#8WmMXY0d@@tfBQ`q+lU zPtR~Zn%}&wKkMrRdLbr#vvyG|E{bX+)kdm~d^j5^|69u+ON~E@etAi+%%Pe>HHB&l zAJ7zN3a~Bq&sFVJ?N#j`PwhLW0H<_<@biTo1Ua|krd_SjiC5^<&W~5Ve0;tfZ;P;g z-z~!WfFtsy5&taDG*-e@!qp?>mHw6fXG4E|MEaX|JzQmudAO=7`8<@o|J3M7eQQ`P zlbXOm8fk@={X*;7p8?*wZh8!@!w#{($5!d1s2z65{XMoySGgZn?kBJIHCfMpD>+ZG zuQn2Ij_ils6n(sr9d-=uhu#!j#eOPd`>}_1I7^Y&5xt81w~PGrM|7wI`DsYJ4&-O5 z@e?1&pJCe*z27{#!D2(y^7NJo{f?;3$^TZ=*)9QW?U6C>d|K(94P~o8`n^vpRZlt9 zy#kwuzgXGNxNpbiPDFdy+|CV~X2U_M*Ho{mUUR};^W^`8S#Eb;JJw<6*X(cijD`1|?5aJa()UN%X%+Vy2(+dHm){|dw|_qaL*r@1;=3%fdlZJNh-!o#3)xV_s~ z-9a*HnxLX|;62ltN6=Y1#Gt$qbPY4|f53kvZ!(i9X|w^Q77joJkQ$}oJSuOJp(xg% zFdUS%p4v%4Dyy@0+*=HqXA7Q!cw<2Z7Gos3CTkqy)+Huwm=u@ES;LYfL1ja^VrCR%8WFf~G7Bk~bHaznwJ_Qlk&;b_ih^vD zY-R+M0h=@s7{OT&##t+TRw9)k*RUXi2_}XB**ng)_L)b5&7_br00jYSbmZIwi;;W9 z(S#7Pl%;O~8dAg(1x=E|@oY?@Xe$#T&pbwHv!VNaD3}9p3}n;{A!+NKlBm2c{m&Xj zVi1gbeb)G_O*%U1BdE!8lf zS}ISM6peww$%NVve42WgEVm^}H%2oT9d{5su;>7ho@gQ2U_eDx$OooLrEHvtMN~0H z8EVrY%ZdJ>3#@<&w&5;fVp<>%RDGUQ6y8bgkW$wKcZqV1u{j`Bh3<`!2h83?N*$>R z5JfC~-CCjqAt8yWmPxRNdvs`Q@**=&A&N>_qGY2z5l1BFViGJN zPyxLJrY#W)ttdq0s_{w0AT6bot%?aGwX0H;LQ;-`^-;Rv(lSJ!1tA0kxDY{OFpf)M zNcVjo345v^Xo?G*fhLi9dJZYY1kb(aJzkdZA~Zwb*?Xy&Q`(X+ttROu2}Jx7ke4>_bKfB+FD(D-=}-7+Iv!Wi}g?WR`njFh*e|>Bf~P z-T0i1Crgz<0Qqf7Av;YOGGd%Ja}zX_y+oaIwn@g2y(NzlBp< - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f1386bda6865b9edc6321443a79dc71c2fa86c3a GIT binary patch literal 1165 zcmV;81akWyiwFP!00000|LvJeZ{s!)fbaShy%z;Id=qF2xQC((1U(hH5<_yB2vBU- zl7pnbz9ZWSvWXXK?yJZ~j*EGbK?nnMwkDD0Rt8O{cCUUr2iaT7N z>UgSY>~CYdVU+QTB^mmWlM^2@5#zA#yD`>|`Z7!&PFdurvf_(Y9)kJp0y(u^kEth~ zfthys-_43c_wVj@fxlkhxQZKEpXp5PHpBSnOX-HZ85rEX`rY6`KmPpu;WHmHIB>z+ z0M0J{;!x6R)kpsAzCw1`qZpUlzJEynLt8kc=@JK?*5!_t<3U60X?ZnXPoBL8PRALJ z8IIH1vu@Rq_B^vQvvZW4BOFWwJ*ffT&MeI=owi7|27h^0hL<>HSiDrsGmmM#Jk0HJ zuWCl|2SX9gVo{#MqB?a=^sRfjCbpJ~RJvRIr8OC{KTf6n1eJ_Ww=8tmny;cBX6)Z5 z_VO(3)j8Pf&$Qssb=^aq%l78xo~yFIh11f!FInDhh84f^P6$4KUA?05%!=)`4bK!o z>kqEUFLCY3Y0(>c*t!gO@k972=fb~5;eYS04&JJBye+gQUL&~M9FB`dyxLzrv-L$e zIHu@T4zyZ;%U3+qYC$|MwBgeWEr`#pwBg${H+VIK-iqWoB*`|I@-Z`{sbVw@;9Bub7dUd&OM%6E+rh?iDjK zbFY{S|LJ{&owpS;F>|Y!3x7tdSbV(6SbY3`vUt0*jm5h@P+feZ{};V$Qs)-+CWUVr zG>V+?GRt67MKnn{>17Qz7jKIF3H}7vB;dcKiqA+TiE6x)LTFtTX;2keN;FApMMV}c z!DXRI7=$9oD9BW-&nzTQ6Uw%hWW7bDiq#GSW&>54>MaN>D+{T{ixjdg+A63)Ao#2c z>Hri-CP9gXbd!yNAbmiejI&->lm^(m4F;SLfrU)tmDGkp<)DM5qO)N;mQ)g;Ts2b; z>}i_5wK*(Vf()T>Qj?M;A<5z;8V$ODW+B&vf;DSIA}O;`LWp82Cmf3xHPd9yH!i89 zLa3yR^I&X9N|cP4F$YLlvQTJ{3udb-0lnP*!Cti|YgvE}$E$gcU_&4MnLOctA^UBp8Vq98L^_X+W!B fq-PdILQXzcBr&5Cr?&3%4z~FZ`n!dN2QmNvyB|P! literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_condition/why3session.xml index 5f9a08330..6480c42d5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_condition/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_condition/why3session.xml @@ -3,48 +3,37 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - - - - - - - + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d4ac7e94d185ed9fc30f887b5c44b5c4f45c4563 GIT binary patch literal 655 zcmV;A0&x8wiwFP!00000|LvIDYU3~vhVT6p`v^MAhW5fYVFO|JX7Q~UNu$=_Cc#!p z`t~b1X}a5H>4CW0Ktc${`mGuL`etk=F2Kd@9Ihd*Opj~m(HR3C%;Rq#x~(y>yEoI-CC(Js_XaQ1|=zmu0y}P8fIGm!xy`hGJLFc+|gLSOr&8)vlvaa zFyP421>TdwD-Q6AF9I)pAHD3~^q%Sg=s@$cHr((=%%&onejeHrg?gRsX#zjNEe~+Z z#iSws2i+&?%}@Bs5no7lIdY6)`3l3QYRi{$JJWJghjLSwa+|)~>QA}9)nDxyuzvXp zb1B~QFWx%-$@4@uSI_>jdRLeu@8w0oiK7UF3hiu#%9S9fuL9LFFr~HrM!)NVP$`gU zEnLZ+N31L>gVoAwZ7Z%YiAbS%CA1HWds{lB&U3+d8kCj>%PN;d>}?{fq^mSmPNGE3 zxh1ZWC@AG#P*On>@xt1ap9O1)rQj`!bd3Ycs7_i6B#A`9D5h`9+j5IRk-%AyG%%}6 p2wux1k_AbpEu^I=sfhGx7OpriwJ4QD)GCQo@f(Q))xupB006h0Og{hs literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursor/why3session.xml index 12eff11b1..626d72e0b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursor/why3session.xml @@ -7,32 +7,20 @@ - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..816db158cb861bf51f60680287a2ae340407ee02 GIT binary patch literal 412 zcmV;N0b~9jiwFP!00000|Lv8rj@vK{hIc(hx2}>bThegDEkUyvUIkjDTA_AgNJ?;d z`;#wC(Yp%@#7h^$00)u!`H|2M16~d=MepWB7(Eo~?u!;aB3 zmy63kVJ22Kw`^|N-0}~%l=l?>34)d9<%8{iw>fxo@MGp-U8}h02tkVhf@nS2PLVg> za!Y9K7xArSx*J;Fabu+x(tB)V2%Se0EN>ehhFZj#QAPzW8q;c$!@#v6k1YhGh9ot* z7D;C7>bhEqhHDUn2BjLfREBrnG;&dD7`0k~wwf#kRJAQBAGis;sZxlGl47sBQ^#=M G3IG6nGR7SM literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursorPredicate/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursorPredicate/why3session.xml index f208e4934..d3f1b61b6 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursorPredicate/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursorPredicate/why3session.xml @@ -7,20 +7,12 @@ - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..bd2abd1b2c8dec2348fb21029f38da4e59c9bef1 GIT binary patch literal 270 zcmV+p0rCDHiwFP!00000|LsySZo@DP-2I9^fwC-F8ZvYV+P%n1&?40eaBM?Tg68*i z925oGr9-=AAqett$2*XS2@!8K$MGGpj%UQ9ltQn97?X^Q;grjq5zjQ9*5Q(cDcQa} z(~jmmB-+zhgkJJVXm?NnzD*#gt-a#wj9C`S5;sTVA7v`AC$`TWSIKGOZ?{y5VH2J51N&{_@P z^q|1>arH06j-ay->Pa_)fuT2wyP((*gY&^zXSHF8%;HxNG+tTDj@kOI?MeDB_!y0d U77yO&E2wQg0Lhp$ur>q$0M(3zi2wiq literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursors/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursors/why3session.xml index 78820f999..217627638 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursors/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursors/why3session.xml @@ -7,27 +7,27 @@ - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..58b34c8f562802a83b5eb221c3c8fad4285ab368 GIT binary patch literal 337 zcmV-X0j~ZZiwFP!00000|ILuWjvFBiK<|7-KLG|XaA>7mqRtQGY8kM1ktWG#AXWG8 z%dWKdYA;z?vJZa750908mW9S058mnEf=HF{Gas`3MI757#4GnsFN`RSw~FO)^!tI> z2MwNR-?uifwqA~Y(dU(Z(Z;uz@k-K;32oFz(W|VY__~ib?60)5k|*q^`gWshE4UwA zTbc70vr=WD$2PFt+Gw;P_5PTm?S8u$I@8wq`~=tWZN=0$y~mf2d6Lt3g10g{!~ixH z=Yk8KLSh|&auP^7IQ_%?24#a5A47twQvs8$U6#yj4Umty=Ol(Q!s8qi;9%8%udLei?L}T`OvtJXb9v&FiHblK;|pYtC8U(S$?uT+ jKc`tqYRV<}1w?~*6R3hzh8o?+@4Wg4Q#HN+^#cF^yl|;J literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_first/why3session.xml index 8629bb28c..8c72a7ede 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_first/why3session.xml @@ -3,64 +3,47 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..86cc9246416a9b5b849c1b887ca5e49121175e16 GIT binary patch literal 832 zcmV-G1Hb$qiwFP!00000|Ls`IZrd;ryz47^?}f`Z4?Uznf(9shDs&~5ED;~qjl35wG%n9i(VuG9+JDm*;!h{HKy+^-ZarS?LBr4wgcvQ!mr&O;T6t%S`Ej? z6Ij4FJUj`m=w>l|_x(3qP&HiRhnhtwFC1=tM+@vIdXEYH=Go=>gZIPy-uoNsdz_K? zxuJRT@viG{JMR}AC5q*@+pbLL7xQLVAx7}9--_|J9q3{3>qYxV3$5}g1k~(m47Q9S zzy7iwE#tq(d6Rrw7TI8TkuwpIco<71zB^ixRrAl2F*C-uB%p>SiU`BSpGnm4WCowd zGY{BPWJlHkOq%XgI)Fojz+WtcLIF8NK=j0D?wG`co?`An%5nD#hHpgQ|ADdaN)^B<7Gf6lk%iZPuC`3M0p-;y-Y82FV06M;_`$Fy=i@i?TqmK$l}Y2ZM1h&;vm&7bGE zd#m&GIu>86Q!LfVcdL`{p-woWIwwwfWn-t*wEo{tpMN_o$9Fz4m%l_`UaGpOKE3?E zDZS23X#vdkI9ZDcxgrjl@&oHkku zSx{_0P?RV$8fk)NiC7S%q!u6yX%r&n0^(KR6tY#^*(`MeO(KPmfk0(vj5Y-%s#KzO z(HZ7K*}+<=gc3=ShKNd+a9h@9t)nREay$q5} - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..915c4f3bffa4f2b6c7fb955cb3e97f414a183b57 GIT binary patch literal 684 zcmV;d0#p4TiwFP!00000|Ls=EZrd;vyz47^Zcu=`sDlfnhoS{?EOaFv$w!BPEUOY7 zB>no*@>1JXx}cfEnCD6TNBiKGmY;BjixUtY+IeX3#;pHE!AZnBuan zX-&qV>pe@?qeq9su#_+4z<}9l9o_ z4R-h&UbpJArDl?cW?cF+vb=RE+hDeQ!wD0sg=0=z~W9mXo!ZD}59>#BaF%_C->rNdH4{?KK_F{C)-*5*x4$ z=A8kD`+WOh^sejrS3&qPYk1^#d5z$sqN3XfCYKSx`Cv{*Fu9BfUhAKVU~(A|yp}&1 z!R+@Dd=g}5j1yWwY)udC9N`^Y)v{)e?*6}yEC1>#HNW$`fgzoi_;YzpYjK|A@SF8hgz}U~0$OJfD_Etd zs6Z>tG!Lv4+zLW8dM8ThJY*0rf^SuF{OCz*LnPt=C@43=#!WU6rM$fe@*J z(A-k#xzvgPluCyTl7*nsN(^}lhQVu&R+L~hScOV> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e1d7dfc75b5637bf628742bdfe6b57e7a11d316c GIT binary patch literal 529 zcmV+s0`C1EiwFP!00000|Ls>zi`y^|z57@6C+N$vbl5{Kp@Gs<$yJPJM!N>bF}4!2 z|Gsjvp<&rVTH=x|xyUwpGk$(E&yvy#=(U4QgQ4m6Ff`C5h%Ld7VaKq9cI4CTG<<-S zfa&ldxZq8nUc>kTJr{BH9iFDVC|B^b7AW!s(l!j-!@w8<5QOtM#P$$EYWE>*cpTxG zLx>Hx6mU0;+aZL0U}DU3+aU*xecPlHVgje@GUB#Nd`RIf>G&?u>B}qfUQRr(54Syy{=C|XMGHd&d$3k@{JCa9tKDzVXy0dATc#liO;y(6wZ|lovHt@xX=o32m;tc$MS$dHc zX+B#QLU<%0ZRNCcQE(}xL#usBk)5vVFY;?ufFxk+!K%tfVq - + - - - - + + + + - + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - - - + - - - + + - - + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b44b9016730857cc82a56c2dfac3ff273cef640d GIT binary patch literal 2338 zcmV+-3ElP|iwFP!00000|LvViZ`()`$M5_Ud)vcefUbTwFkZk5WUv8@*~@@eqWYB( zE8B`h2l0OTt)?VDV%nAy$&u{7$P!uXuCD&qk41`Y4QCjJZyzyUU*LHky8hxTE_%Ee zFwY|XwYW<72hNsh^|riB*g|Pz(zr?I^WnN%e#UufhL3;Z3Hr;+S(m=xB89HQh~4IO zk!Rn!ZkT=Ty7RPL;-}Pg;qqcg--fR9S2?EznJwqDe&}+aW^vgv+Hi3-n|1Tco(vab zpI`8#h4I}Pe#Yhc(3b6aq%^cUy@|C0W0xl_UpIJya~wXGVa0yvFE3iv%5m2z?fQzd zK6dj(iYZV4E*Cd@zuYu2ws=-t{?DJcd=hfo*KwdhBn9PO;y#TI2sZ z@gF84E7v(N9ofy^8rhd98_2i&u_}RIk}G}a)5Wm%s+*;YPs8V%NZp@?dqLdnx*gJu zFRwKyc^8)JK~41BFP6h2eHRIh`^UF^-{WxEEz%t0)%p1~{$u?Swo}Kbf-YPwNT*#l zL+bXvK*(x%q0m;XEx&6BNKq@-_>Z`DC!hA{Vao#0gdKyQyiWW+CjMXjr?t1@CEms~ zPZzOJiIV+_HV^n|^|rx(o**HhpP`>6>K8*AF|ayt+5d0+Sb=cZx;T74D-eza2zQ!U zH88&Vt9~~07u|3@PfIG-t_S)vAIgYVrP-#X5`bOQe(URn!khq8)EPza7u2j@OZ!KKM%bAE_mv^L^l+bO+_9hgM&nPoySkjLDOgWZ zwK}O2{{$mijhC5{Zou=)h`$9p{w z#T%f-ZEazW0~fWnsI^6<#jmO@Osy?yZBc8BN{i=dv6W*uZsiYoAHLnx-2mpLw0&ow7^)koZepYOzb|A8zy}BpqgxQN1)>S1{Hq> zRQzB-^|+@SgLjK6Di|>KU&mP*ijG=Mx}lRCu2+ssWISxHM_^rO+|kH=kgU=1zLZm{ZLgWV_GTvmE#6S>_CU>n8YJ%4UKaK?7L6xvk%`G0ZsA#BYsAzcS zXgI(HTYUUa0CnBS+m+q1++y3WpGUEDt0v=tJiz+>iVimxOYLgdOPK3zKA%!@BH86)6j2;8uhv8 zH^Gg%=IRKZi{6GC^$F?9jk@}()*H3nsN6VUZq#*Hwce=pM&(9bk+m;kz0U_Kw?S5Y zwDJu=Yiey4=(;$o@}%PoYJKmYGdkFj5d#gev=?C*O~tX7d4U*YuT)<;X#$cN{e1N~TgEvP$fQF+5Z z+( zH@o4H-SBa>n+$)Fle>Z>O+<0`c}k8ak*zs7Hp`v|Wr@Vrs4R`Tm!gu>AzPqwL(1n= z&gDauw_H3-87>3dkvS)$mh&l@m+epM947S0H?rkxv2lu}X>K}v2}vIOW?%UQ;QM2z zGurBhh$~$xT`FA;mM(h+z-cWoDgr734j2JVlSJe(0uLez7en^otWq&&kCG>6{|5gS zrtvXJ9vsIcgty+Y5QPa+qm3eiQDns$DFCC*Auw5XTPa;YZj6Pfx#f@b1|T1k~Xcp6k(J-CJNH)AQ?R{`kQJ^3*&`~PM zfbr;DDn6-(DV~Ew4;{@ol40ErZo*eklYP25h4W#9jY{1 z=>~H|?kr^Dv{syv5+f;cp2f)b~Q25jSW5C$>O zMxKo>5|qjr>QQk;GAvfEK}@7UWGV`kwMr^68VY!yY2Z8;D^9VeBRGV}LWmkD6jH?G zWFYZ_p*$>B(D3XPWnyqqIiY+cO}h|+*T}7wvUtyV!?I2>3k*ge={#p z - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a30c56513ef697280c5c2fb597cd7ebf806df732 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk=G`VO(wo3{y=QvYwYj2(ZhG!1_MJ6Lvv4K Y4=>-%0R~?T6#N7k=HHv75(zW`0FDV5Q~&?~ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__buffer_last/why3session.xml index 6a8cc7419..db8a70b62 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..57626a3e902bd5de1f7f4e278528e3fdcf353dea GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%~|vA^F&6EiPQv&|mHMy4Ky#va~g8x2eh ZwwQPt8iX2rF;MUmWKdF?pcx4?0RUF@6}SKZ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract/why3session.xml index 45532d9a0..b2452eee7 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..54d7dbdbe1334af5e18268067070aa18e9af1949 GIT binary patch literal 696 zcmV;p0!RHHiwFP!00000|LvAfPuwsN#qa(Uz4cHbdBz_9k#-O1p(+yMRP8kydu)ib z?4sQOrJugeA_Qom6%q)FdPw9XPcy&wlGr}xc@9}0vRtqDY{>nvy5!BktC82W@{i3$ z;cvX$mYd;pdPEB>Jo2MzRnE@G>wbI6=S3agcAK#bmwdoqc>Fxv^lA?v2VR!d$#}Y} z_li(=AoHh4vVrc+IeA$18(y6hK3mIuhIdaszHaRqA2chwQ2IN2&U6oQ>HnBZ|0ZvA zHlMm3?IcH2)x+cZkNat$_5&Gu2(Zu(+ArV(Ih{Xlwb6YblMl&v9-a9({w|h<$Mx6Y zgzK=`jte{-#&)v}hOC=-*{914t=)vzux9P($E$UJzP>7(emnds)4lc!cl(_exYub==wRy^4DqL^r8W88psj eswG5UNm7|2ZPzhj)gkXX8uc5BHcJKK4gdgBa#>vf literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract__2/why3session.xml index 54fb7ca4a..d33334c34 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract__2/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__extract__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9d45caf5ff4b2f44898a8b994c753a78e8066533 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvDcYa1~Xh4=au-E~m{x_S$e#dJ{`2w4?xhkLK2WWce5 zJxQAW`rdJ99yn z9j3ZVa`0pnw$QzNQXCfj3Ku68&z9w0i1Y@skGoxaANQon21|d7g@f%Lkm-LVoeQ9=&p9s2taLnn1_EU$Lr>c&=#L5Jv$j6S@0fpkJIV2rHR9a=W*L(`Fh zkIBoVHD$`=l{U^3aWgTvipgr9igsQCg4V!VL_v}C&5esK1zo8&x|CZp=&~Vi(1<81 zb|{YMjjLp<2W=AtiWwM1j$TAb)o6-!4V+2NMvqP-YHl&>Ea6-fQC6B*s(FloEKCfj z6v~ks8JkU+IDuBi3F<&08C&G8MCTKFa)b;z$-u+s)wWW#a7 k2}W7YkPRm>fZPg8LNDbIb23yyo>W%-1oKEzLl6%D0BJi=5C8xG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__offset/why3session.xml index c2a2515e7..6893fefb3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e0ab74a4673630e0a086dd231f1f760bf3878282 GIT binary patch literal 236 zcmV?o4nV~5g7&ux!+0WDuBJ!4Jw;LC`iqqZB*m^zHhR>#|P z61GyojPFuA7Yv__M~a(YZ?00syO!#2 zd7cl~kNWX}w`1g(QkXhk-hUd mS4iImA;PietZfJ+F>zqytdE{eaD}KsR(%7n*`wq00{{TD@^GpE literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_length/why3session.xml index 93e515bcf..a199ddccd 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_length/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cbadcec6fd0b9a4153d6d3bc0e1a5ccde276bc9d GIT binary patch literal 382 zcmV-^0fGJ>iwFP!00000|J9VgZo)7S#`io$AHjC)*cljDsv*iCXvoQ0L(5yzeffD01D-@JOBUy literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_tag/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_tag/why3session.xml index ef0425b7b..bdab66019 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_tag/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_tag/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_tag/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_tag/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0779c3924dc4a18177e68ef9916be182ffc70dca GIT binary patch literal 381 zcmV-@0fPP?iwFP!00000|J9VsZo)7SMfdrNeu7_#?F9=qs7Nd;w$|7)rjbI35`*CH zYZ_P-l?tR(YB!c`-Fe(ImeUgO)WWt7u5J&|*U%;i=?HKAo?rpZK;!nj6twNq$qnz& zQ2~J9oEz6ZHb>`Db8v1;!vGs{F4okb3;TZ9_0Aoj+2_lyCtR~t79{8?T;uO&3A;AY zF}X{kA?t>&sneK#IQJU(5@wJK)HohLn|;dIgJzIAYLVJ>wUc1;#Tj2c=IR?ZH^!!f z#HXTkiC>FL>nNlkwzJ0u?tv`9C5$|9fve&*sste)&83X|VG& zPfrcEh(JuCL64%8q!?$OBzonUMa1Y|_-k2M0iq0LtfB^^rH%yPE$Yg0#e}S~h&?7E z6NE(}H7P4BXu^P%(OSo-l&mm|L{VBKDY^HIvB11!LMy6F%(_yWie-^3m^3_;P#Vva bm0(C!5u|2Bl + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..40094b4a718d0e7270b624b853574d5de5009e7a GIT binary patch literal 1710 zcmV;f22uGRiwFP!00000|LvPgZ`(!?fbaYjJ+~;Zv+o7!gD*i17|o^Nm6&}c1Y}92 zs37jI@9-hnlBLv+Wyf-Ok*MWpcb?y@mUerMq5XP=@pg_kb*Sq37i?;rx7{%Q-K-OS zz}YGdm)%Q|ZkFwBwfc<9RJ2!r;RX7|VpgSput}k+Fk-cNZSw4ERkgD(RdthAEButI zDlF!0`r1~NU+0_}5?d{2bz9{+&El$LG%#P!X4P_0lVH=Y`43){&|h8SXIzb6E!oqR zZ?8z-c2PBH`8aiZwW_dgR*QyIZLv*Tm1DgMO()hq(ez=u)xPaKhyWkoxPpv=QICFI zwaq%T>jr1l7o63x^Lr56V2u%@!H<7!2hS~I@M!_ab+aN>mraV@YNvAj;Mp#Ddq-Du zk{!L>X?aOEjs#PI_Xp%y644;`F)lQ12lKhcqXr zm3+8AT>gf!{(`@k5Fpq9mk(znp+hrWcS%yuWBOXc=~D(yoHMVLGVo%B)#cEBU5Qe@ zL|wh5go2+PLf^=!`-TiA^sjzh&)RxkwYST(qHcQI(%Z5nzl@!;(`KCpAf2K$AM3S! z${tG^)!!bjHaR1Y=ZyNloRKFlFF0|1z3cLNpTK^1IX$(EsbxI3Wt94Q>Kaqmn7YQ> z-;~wuR`+GISf-}E9n+@I+y)r)_{YV)v5)=Fl>Re3&y-RR^S?MO;D2ZV6E3#6I9%oT zc)=%NJR2CabDRoqD!i%i-hZbq&FQLaV#dUbi5aiRjMEUnz9s?SAOVKLdL97GF#UwH zC*kaPi4Hj96VA>TXT>%>OE;$F)piK__+CFVPhSHbe8Yzwe2k-a0O4l?kb4HPBL)pn zIS+R4!}8-KWwUdr~Jp!yYfGq>c3|XJ7UksgYzi= z=@-#kf7-FL4;YXbD+Q@Hv{K$nDE|q0}}?` z`d;8$hgw7OmB2MC%?Z&To7OvW`OSKn-E@ZbwihRJ~){(pH&5OrM#R&SPx>zkWf{1sbL zq5YnR4>2thDL-#F&lhKD{;B;ueA;*OcNleO9yl2mc}GGXY`b+l{~jf~XR0aCy~TcJ zomf>7_-^O|XuRl#&&B}QGr;!x!`bN14wW{DBegxKxvKw7{kMN?yB!fAdsO{KN(U3{ zL38ABR1Nh_U!HI>;pE2~@E&mjFU6ArX=Byk{8PeB8N-Bx2?-Mt-je<=h=lGKU|acj zrF(CV?cXa-Cj!%nz;q(;{!RoQi-61a^1yE4@}xf@E~hhzX~*ye4EU*b3`N11Re>5g z7eX3qA))74B@S6cff;^*Ke;M0i!LgL-f$gdwoH;=ax_jrv^E=(VucIIaG0%@1JXmjz%xiYzhNo`X`<|qguQBk6$I`Fi}FqbU;15Ny*D^XJb E017-Z6951J literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_value__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_value__2/why3session.xml new file mode 100644 index 000000000..9bcf45e35 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_value__2/why3session.xml @@ -0,0 +1,160 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_value__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__get_value__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1f379df8a9c1128552709a5fe6beeb3815952980 GIT binary patch literal 3147 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize/why3session.xml index 66b9f6e2d..88de09aa6 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize/why3session.xml @@ -3,183 +3,168 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1aecfac823c2d9cba09eb742e381a0c6e5387976 GIT binary patch literal 1944 zcmV;J2WR*niwFP!00000|Lt1KZrjKb-SaDEH^2-A=&F7L;|q9WOn_ik18s@wS3+D_ z_DHmm+^@gYvSmw&97~j(I5IafO%=PV&N+41VzYloZQCu{%d6X*_;8-Df4%(g1SaAg zrOz|E>|)!^ZfV}ptbh0(CUT-CNdL@lGF{Mgk?#)c$Cm40W8nJ>zPjveVkYvU{?!w_ zxM=d_b^p0te5C8#&^*VsrJ7+oFVj!=pW&vP_T8-QKVRoX+lJ3Q|GDnxZF_yy&H6lV zZ)tjy`QQ0^b<5;=qV7J4*;OAXTwP7u{O=c0{O{~$I$e$TH=R-Jd3x&WEb(f#=;zeU zc=WYOwjc`6K{^ys*ay=7Ef)PU+L_q9>AL0NT@rlMt>^O}n&#Pu{^JCrcq!m7UNQ3h zh|`Z#=$|yDMbD5TD65<_%ARi^eO_VP3EySf=g*-0it+77G}hJjI~@H^ztJBP8zH*r&cDu=L$+1+p8Bh{veSmH=jfC_ zP3%v|A`GMv4_L#DpnqS`9|7|3sdV!@ghn2IfcQryUIi1+rhYa7anFfgast~p;g}~$ zS+cvviXX{;Mda^Z>8OQM*1|^JBh{x(^;re(4lkx~jf#=+l9(`LGVzqX%*6M%PJUkT^K z=ZgB)mKG?^9pvN8j~`nog)eg0e%TpM-t`?#yZ>!$uRUB*Ls$fSetolIeaoVs-nQ*! zUM%QCUY6A7Pkpuu2$r&~JUVn>s}@8%Ntqio_Q+&*4z3JvR=O~p>YR3%WIZQAitK}WgPybmXF z+sQ}i(JggT3e(&!t|{ibFMp>$2Dav^orX2hs(Y%Qmv=?hVV^%9;zRn|G%3K%1PdL#0lO225Mye4loqxjXS_`ZvZdq|A)K4BLe>7-N96V zySuB{d#?xc^pX(l&Snp0G`rF4j$n2$*zNFC-0p~$f%4*5eTjI0`#dHDOZ&mqq87gK z(--$x)PjE*o86bd(Pr0eb|88OitJFE-8bu}Y<6(|&9grxPhvGWK28`PCyb91wl0F2 zZBI(SLG3a8V6Yv){(b~#)r^Mly|*C-?m{g6;D`?^^lA9T_&92`i#K8y zhZ?|!*v9rB+kb5TpQ-)ja07Ty#@FBv?4vIvcN%6g^g*8++__u5WFQw$naP3Fj&Aa5 z-DI#ItUY7hEb1r^|-oywL}QaoczYWk9z!jgvkp z?^Lphd`?AxQCUaj6#6Jk{007!y2&vishqN57tC0K2R?xwt(A&`;3(0!mHj2mP%L{2~m7rp@B0>iW$s32V&bQl0SdxknEUFB_>m)fP0XYF; zj84^&RO2{CgaVGKGkk3J2NUM*7avLGs#?6%=iBHlSiQETtH8iA8D4LGFmt z9dV@WY}N)!&PgzPTA_0?1)Ge{U}}(WjB{9&&>#&@VY~+ANvl*)>+Aw?5QwIbNXe-J zKA=-R7l_trD+7x|W$SAcG{qW2qG%3L(YfHF724#Oy%nsMWfbl>R`4jL%sCpxZE2M$ zEZvZk(lQFWtPo`5Z6Iy5^a_eE#TFw1GA^#<#O++U0o8z4A_)-#GCbVh!8$~lEH@tt z2B1dihN$*PBpq^A&SNP|IA5T30>z@QQ7k@9jEknAL?rKBG7?105rtq2akXo}HWZwL z05)iuC50lb1mn1MoS?W4GJTGlQG~D7K(Pz(c@l?3U6+3qzLs3P@wMK*{MY2+`HIS1|7?4~mIGs}p zDzYEdC~R~H(kbC&B#^9(;-!d%ZGa4G%hwuFHi$t8zFa`eQbz44du>=?%(mr%YLsfY zLY`eo!GV!6W2!0>DriV9VwE$p(+Z&jabC(6&!!Y3CN7Xs3CZwiHOe%Cy(v2(lL-k! zVLzh8<9Vn#fM3>VcZ`zN)v%x=K^$oL8a6}%A*Hqvs|wLI%!y@rk)xtmoY6|n!r-NG z5+Pu$Dn#E%Cz-pKp - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8280a7bc9d6024d7ff24b56831d7e8a4175d0f48 GIT binary patch literal 2542 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 - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - + + - - - - - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e96061c175cebff0057f21d7a7b00b03d5bb8703 GIT binary patch literal 3044 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize_value_private/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize_value_private/why3session.xml index a73d43cbd..c08995f1b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize_value_private/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize_value_private/why3session.xml @@ -3,353 +3,198 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - + - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize_value_private/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialize_value_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..33d1e098ff4a8bd62e2347442a50a952642cd64f GIT binary patch literal 3683 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 BD}?|6 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialized/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialized/why3session.xml index 759bb3f63..c71fd7578 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialized/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialized/why3session.xml @@ -7,38 +7,30 @@ - + - + - - - - - - + + - - + + - - - - - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e3eed34de2e769e2f31b07a345ade854afe49879 GIT binary patch literal 799 zcmV+)1K|80iwFP!00000|LvDePuwsNhVS_my;n&7Oq>IUR00(Vl}nYYHL)jPDf`jH zAo%y4WWNGz3%gnhRC|fyWb*p8J$^Ed7jO!3W?P&?i_Ti`U{}|+Ztks(&7HLq>^itc zYu#)b@jh;zG|)u~?&eL1whq|%4qUu1`T0hg@2Fjeb|mUU=h}rRBT@e_g-LKWOz)r# zFpd2i_}ShfoI}&$;+ugt%6EbrLP4IR~U6j)CA>^|En2eTUX!e%p5N~=b zKEyDamTDPUtOe#RdURxZ)~?_FT1yOyS3juD;iP1aUxuZxP4|5WeYg(!uNQ%)!WqZ< zNme0*)j<92Wby!CcQZE(&AQu`=H6}{^)<#F$GK4Jo(S<$F0F}utc`Ny4IMh(XVItd zDUJ*O77PC^Trb_qUEF${Yz(Z`F?I3q1@xK$y=niCD^|@t8MK9KoTxg6Z}unnnpeU% zdj{V_xEx5Cj_~`+&H7jT@+H(?;;&lsm$MCk#Ty-`_~DW=-{*j`g=|SIj&yh@IutLJ zW=B38`S9L+NKzCclg{T_S5DRyGVod|Cnd`?82N>N&l1TvH7ad@8O1TvT1)M7N+?xv zRtpMZiL1H7oNG{0s8l;dUURM_&p>ICqacwmtW)WXfQoTmd#nuB$|z;*wr^&NZ@B)Y4%kOiDpI5eQYD*C>r( d^rc~t=h{~)Wgv`HeNg(kpx-$?Gl%sT002dBi1Gjc literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__message_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__message_last/why3session.xml index 323d40c6a..040349a5d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__message_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__message_last/why3session.xml @@ -2,32 +2,21 @@ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1626d2e0abe8ba5115e76761c68f656246fe538c GIT binary patch literal 289 zcmV++0p9)}iwFP!00000|J6}3Zo@DP-1Uk+L6Rj~9x`Mp8X)LYWF;txYz-*3V<|!M z`zj3*bj{W-#Nl|nBf+x8P|h2Sml5|vfMGo0GT>OQG=3~c!dFb0Ztz+J?dNiV{Dm_K zT;UgH@JD7^9wQrE?bHpuSB0OZ1a!cK0suyYdtEr40ZKXn>?vpbB!DoDh0X=;o&b4H zLjfKr#k`Z17>_BzJPlR2{G=QndD~y>?Bw&em4CPJ`ftBrU7o*5pw?b0R3xpFt@A!& z7Zp1n9g^($MZFmjgEwrvu5GsL+TK|ct!_-@#yWOYB!!j6c-Jw8R%s;-+BQn5bg#T~ n++3ZskcJRF`_9N};S_b$gsx{Dd&AWGDr&?x5iEH?DFXli<1&JV literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__path_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__path_condition/why3session.xml index 0fab1b3f6..3a9123a67 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__path_condition/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__path_condition/why3session.xml @@ -3,40 +3,29 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__path_condition/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__path_condition/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d003e7e8ab2bcb70ae5b40a75655a89a374e32b2 GIT binary patch literal 454 zcmV;%0XhC3iwFP!00000|Ls;yZ`&{oz57?}Cy1iukHZeR1Pf5?H25k|BGnmi9K%+E z^xsdeTVU%lpzYkE1#%H2=!tqH-;*78#CJXITW{O`L}N>Rq|h<_7>`0*>LyvH^KbzR za%*-~cNi>hL6sW;1%=?C~+hPXcE zS3_Jf#O7msT~>0_=K5>&0sXXzb6?)fQ&~;O#xYf*wAP*tR<#s{O#!(fmw$n8Cc`9# zI#j4b$U%D~1Q(olMxjHIkU;8rASGqaqNGZ9dQ~ITqKyP7eQvnI8Kg60Vb%spt<8 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__present/why3session.xml index 5b63cc628..6643139d2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__present/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__present/why3session.xml @@ -7,25 +7,17 @@ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..02c4b050691f321b3311d2695803ba9f5e60fe72 GIT binary patch literal 371 zcmV-(0gV11iwFP!00000|Lv5`N&_(zh4=FmK0*TZi+&|jm$RONp3WdPRAru z+P62YZ9yrh=!gSuE|+j}a&GdGw1P)W5Kt=x2GqF*>vu{ezg23DF=mlcdebG`rQ8f5 zZbHnu*n5|hb?8k5opxZoxdXHBVC}SW-4=p_E*+NPAq)sh@DX3zL%E`*N1tor0@r=o ztM~*x7VuHpW2jS9r98wOybov^Hpa;FhMoqRL)xf-{pSvNn=&Rycsawks6%XsruSpG zlIKh6Rlc1t=rjcIY75?(hD-^JFT!A5IMXl&3g39D1E%kcX~P=6{2gZLIMDv2?LV~> zqIU7;f9dHHzerPJzA&Ps%v6F=QgKS^StYqBYheZFEz{zL-p&eIYb!-r8PjSe5oS~i ztZS;vN)R+Mi%3CuSzFCm-VTgr8;TTUC0fBt3!=&*Rv-|fkuww^+foz3YRXvMN+Vmw Rgvlaaya4BY>FEUt005!CtBwEw literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset/why3session.xml index 7140a94ba..6dc622c1f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset/why3session.xml @@ -3,96 +3,73 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8fe8db2b90e4cf52f50895dbf46591cc18199a25 GIT binary patch literal 1158 zcmV;11bO=(iwFP!00000|Ls~!Z{s!)zUx=?*25wIXZSw!kc+Va_E_jD3}0EHc9P0U zu<5TaB`2w!xNdA|lkAoTEIagYIGma9W>;~ zM!$ErkruRE$IaK_aY4V;yoSZ_i8Wg+s<^u8@0;~kx`|bvo2kDZlu#Fa(@@ANAD&%W zeruY3dDk?nxL(s`Y#M)k)yHpr)41D|V%Ma$TlaZzy_l+LNuwgQr3jAH^k|IS(t$_n zcrZhZD!$VC!MvA_o+%nnT5h@+T2Fnffqi+>l)tQRmTljJcI~_MpxZvRr8X|Z*k&l) zu2%P(Cu~0OA1Bn-p z@sd+^e;V%LG`$U)=3dE%TB-*5qabEq!WQrs@E7pURmPjc zSgJvvhKS5D$My5K-TJy)=Z@Qntm&)<m7mVR9JQw&*+aoqrYQW z;sE`fsA>py)oFu?xIFI4qm@m;9u$E2$H&Q@`o;wDvP$Y($h;)E*k z(U1+4hmvdAh8mgYV_|i^+lc!b;i-}Cs9lm<#vC2;ar5IRI-6wMH1BvA3|n0X8dK$= zc`(eI&2Qs8nycJtcQU8hyo21l#+*$x|Ig9cZQo`y|B8ddM+?h}Hqp@PU-u!|kB@tb z;?hzilp^7$EfT7E3W6DQ@WM8e*ar5}&9RGjp_})g${W%Rucs2gPK7!_MS*{Te}Vs- z!yoWu0+_V)mo@+UfxckAVE&jL#>osYW$iDEemP+%`2P_2ANK%T2drEED<^>krv;}U z1*hNrB=9f^oWEb4a6T0^lX~;hFT?hol1$Mt-IQI2Oj0r$bMOY~yg%cCzw`M$s$5hA`qAWF$5ycn6Z)Rlys86z-LfZLS`8W8I;syxQiZ=6b@M; z#<-1HioH$?DPoGdL}Y<00&P+j!q*8Y8^8chO!8;|QwTD@6c2gR zS3Yu7PB5ztHzsGR6(L5n$zx(lh%6+kptVv~c&12dbkQI%AGP$-cxlaGxU8)5n!x*{ zLzZD8*gTqz+>nXrB+o*svR;98mY54ENv9%`;*wh*oDxY7Lb}pE7$KsI(&Z_p1fDar zjvEisD>V#fvf(m7N~A$K?m0&xA)Dx8GN2gOS;)Rl$Vz98bSNN_QlkeM51^xp+#57Q zgjt2gIhmrio>`f41p{a!agEBjJP8`4pt2&zLb9X{5eCPkPu!znQ8UTEQ(B0faXM5hDy<0AA&!vpL8rzcCL6l)b5(&jI3GCO&4K$WknUj7AA9a$4pt Y&iW+CCkaU?7^GzNH_u3|I-xiK0BvDG;s5{u literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset__2/why3session.xml new file mode 100644 index 000000000..fecf5a470 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset__2/why3session.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0eed6602067f21d5c7090d00904f651ec31a9005 GIT binary patch literal 1790 zcmVF_`8ZNeEYHfj5@e;E-5%uV}pagKG}ru9FU|DD5}9Xac2F6J=n-}#))W>s3QyZd_c z7p_y)eHzT8M(l2SRoJFb*BD9h?zPQ}uXWum?&^A(HXHn$>N?!4y7aZHYk!+_YU^GH zSs-WcVf-}ap_8eD9+XhOX3(wi1IFeKKh9MEN(H$7-dqwIGx1YzMzf0P>s-BlJm92& z@Y4b!&I(BX(e3?bkNeL(=RaFw`_^LnCym$N+$`$!<*WfyS9QI*T`cPLO+zj1(9;*v z`WJ3?GT&QPQtCHOsga9J%Y{FBKETj^AvXbxUglcPe_#O{+Aozuz{W$>a(3JXH#C1U z0Zz1GH+(nNHOCg*@viOA{H<$#V%HDjw&R`$d%SBiG+!w6=1BkMc>j86zEt4#>{6Q4 zWK9RuxWeU496-@eg0FYqhpx74``5M+3>as%1EcBK)eaUPc8$ZK2exgoGu6IoAFg$q zViT}SbC93**r5-b^`hzO*la?(89*fV2Xm7aaeI(syj?Eux392$N9b13ktA^&AiM zQy!>rSP1*>q422isPO1#@n{SH9DY=Qle(PbFwW-S#){vbdn4VY<+|?w;pfk7`b^*J zm~stT(=C=E5*-kPv+eZkF-6=kFME8<;>X=w4~`J-fUxkrhhdbl@GNBcQ_6~?l;w{o zJ8r`WXW?1U@~5N~mm=+{b^Z#ZJ=26YewR9|H)7~W2Xhk-7G1NdyZd$8kelv1dRzB+ zA}bF!!pu3}dgD|*yYuTiT->H!%W2~Yx9#Sp-OSnS)0t@bqv_6{d|gktbGz=YyMp{T zjeP!VkiXr9_a}=#P@RnuI5}0cu;RHA+{SM<M%9IOe-lUqyUfPRo=I+Y{+-X>AZ{mYt=gM1>}tpUwr$bGIoCl9IdlE^ zARjvj`-6Cg%>w-*QQR=3ZQ}>JoJ=xqqJ#QEDUBYE>xXUoS2&EMUeQ^PhjX6Q zkC;ec|2WzHFN43Et|2@BmwKP?en(I)a3^2jsw2NU89caOmMCs4^Mo=__#4g>E;LKH zfD%zS^wT(0F!T;F^mf*Erc&eaJa>YQ!i>U5!;jia!Iy$B1^?y?{`k$x z*(i9JH|+j|L;*noK>@)#2f@KQ@80&ZI9V1aOP!a+$>;HKeTk{W_2g%g+k2DqAEAw| zi%d}>Cfo94Wp|R6!I~dGgz5|7LO+{-`pkM-Fka)K^;>>s{iYsSSCxgpOfn*RbjgRv z96*j>xo}$hr2hf`=CX<|Fu{{g7NllT>L|0|0d>}%z5_|ImkEhPgNf0p$S`MbjKP$J ziX;ijgYWyRlyD|<8KVId*#Cj3EM*46bdFYoAt6z54Vi_IyiOdIN#Q?!Kh%orh>@8m6ckjUX!i3iqx4GCNOQKq|oq4 z%7qflIRTP{T;-*;K(15@ZA3{!7nz*k0%iq4^}z%7LMf@F*8wfroKZ%KlgXfkM7AfFTDSz0*=!nR7(#P3U9f0woRWrFfMMV?lawj60ARR3wiYn{3oH$lM1RMCA!h zN_!SrpL7)0=s<~x!Ul9fr(Q}{(njx*lM|gb8cHwj71X0sB<#69Qc2G8su1V1>a18hn-_g(yQXE|Hsi zDbA{Zg8c5IAaUoD=gguINirQ256SgXPHq)$ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset_dependent_fields/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset_dependent_fields/why3session.xml index 33d512d47..0b130be66 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset_dependent_fields/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset_dependent_fields/why3session.xml @@ -3,365 +3,314 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8ad835359a62d5ff6ff7bba45dcf45cceb7ece1a GIT binary patch literal 5104 zcmVEpezsb`Ca+(@8AA+#%FBDyMCL=8UNh=7Blwwb639oSpI8% z|3~;yy6{{0E8Hyd{I>jaIny)MzvuUjYJYDQec33v`LPcMzei&>8{lSkPXlIVu~;Ow z2+Qy7w;})h_U&KcKf)3=EY~mca97fN9x`fJ|9Mw${yCp7Z~mIkzm@y@@U_h6by05e zJeMEkHkaGw95(#K%Qxlr>++A)zwp-kA2*BTs_gw+>P+$}^!;{; zUYW1!yPvTnl0!eJB++lH28&}1`*BxtN%-COyHlD6!^Gz3ByM_p#Z>L(TlTKHmrvDP z_UWbWW@b=pP)%>t{o?;hBg5&Sz~4dzv7ZXvvI*Nm*qf^U+cA26=>MB=zucDZh<-nh zD~$34dp;K(X_ugZJZ2#OzWBPfPL7IT%kXta*f~-B8Wq0yQ%hsGFAZl~82~pkuJlyT?b&xcWS{s^*!kCi$$U1N-=~sz-Cgvq}zh&c{j~4B^k}c#{jA z*TLJc%{cq~0Y_(o#ao{`bW55mw6d#wt@@a zg3?hW*a4-tj{Y{4&M;_4o3s&MreoMPEBuVR-K-dx%rwF6oS1OCDzN&QGLpA>4A&D) zNnjY|B*zWqbd!=T5(qI9{4FGClcJp<5Ul_G>PK2~=;y@TO?AxymJKdCwAUwV@zAnE zdwH@34=y~2;Z?qkm4`k^pCLYX2d!N|!IBi*yO-coRWK|YRB(HJvK9|1xV=1CgNGF? zUsrG+TrWDVt`-@I1VjQN!3QS+24z)jm21368`c@drL_UU2&`rW{7Jy*-e(p3);=$-o~ykEi%*nS5K;&!mxYw>v7%<~ zB84TUIM4P;JzAa@_v!Awy$7?T&F1tkinSX1KiAKg#na<>yemC_#Lw}Lq&|!7Y+1JWFcbPq z{e6^w$uESYkBOwCx9a>VCLO<*=pCVS>^`IAmw%9wNy((-OIPwQ%P$7!66X1AZ|2Fdo%5&X~`!M!%betU@B!w?VP>aA3rhKh%H#W#S(hlq8VjlB$H z37YZlM^?W8=}$I@l8;+}6gG*Ws838HCJ~d)!=%w`jU-wUEs6G`6N$ljfH>bw8(KZe z-SEES{jG5dP+B|ODU+Ua;FE9gb8xmj08oBvf?gz3XyxcwXI?EK$^n>Ns@w;Cf!IcD zyHLgdYPJog26}HUB-ODN9Qs6dgiA`9_$yu{)yj(oIXEiIo*D@G1_@6;s~{G>%0hAJ z^W?UK2*sbQm(92(#HR1TkWb9IJPi}GE`V917Z6FZSLDJZ*$a^DY153sDS|!U3|k(! z+_62}c;E5E-2@FHt%m!g`OZ1m$v5CRG{YXE=ZW{tz9T*_l_nozwQB3`M8#&(zq~t9 zy2r0wknVZ_GCaaWOQPk6qUG+}6Cw8J*C#6e!LJ>VZoOAr`f1)fAYC(U@Zy2?`gBbm zx_O|zJY9f`#nvv}GmEe3WF7+ts$D9AqHH&Al z_!_TS9K7>n|E2*kz~Z)l`jy9=YI`@8eArEOX8O=gNE0E@)UGU~YZiB0gY;X|_^DDx zF>*KJu6x)BQUs|fULkZ+1K$f%XS+R-R7IUU0@$viCX+wq7DTX})uw zi^E=7Asa#`pE5h?ezEHy=Xwe8#E%HxjR(VrLy3GuJ|f>?bCv!<>6-ebQ?ual>O%S!LyEPn!9~hCJ&xWn$TzlAa zx>;_XZYBU+W@8Be1b}@2Sgv*_T=j0Qk2e9L!_8;0_zDj<51wIo`*+Yy2E;7A`p{KA z;_S*#KJnpQtZ#DCw~+6sa6E|6Q}5qD>WjpTQF*HLHEENPZBd*PYJ;2eU!2KS&;=sc$Z)hlah$A1&l2LtQ-E?iv>R=2hz z3g1>aUu;KgTQJuTQ0a?uFRrCTKce3r`t9D12(52yNBrok^X*Hx`pi*Gba`Ib{(;ue z`n;Iv`uxh|p#^#|(FOXI#lzc^*kH1-u|25|vD1#O>)nVXcal5F{rcrT_Bhjyf;HZWyTsk|aQFD_6^DTLDQOTbVIemrH>ULABc%_k6HG(^ zA^;KKgA!nC?~!WDG%xoa@zvv!#d^gf+~&CYBYyvWGcSLR%d*Fv*5ju!LX0v(?3^P^ ztgnX6+-?3kI(%B3WoCA4etXW@;wYP5oi0wz{Oo3j7gnD2OM zS?=j_Dr7fjagvcfV$SEjqb(COnn#Z2-xps`^0h|G@b&y>w8k*wv8fT$%5M3P1-vPT z*_xrQCMx|kNuS47)lZaB)5cBkZ>;Lk9R9451KsYik_SWBvpUXjob7luVccfI_YbBY z1IkhB3;ite_UFyb{Kt1>eC4hWZY}NoBiyeGZOuX-pMpONAbg8CN9lYAbB>Ra(>sW` z9YdyLTBE^Om;AD5YfX<6rjfI+^#tqT8qm|!DxTHKpUv*(_dnBPmp=3Mr@Q0{m4wRc zN98&85zM4M$Ldb2_W1%0{=JqeaqLizz14z!AUm?IA(FinLW3kbkV1P&cGOdot038) zGmQM{3?n^Tq-TrtZ1KZ9TYMI~Mq!NLLGZZ19d_?Wj}h%U89ut#vrN)9X`2#*YfTKg z(=30TpbklVA-)h_-hnS;8L(Pp8D9kvfCxYYxF`aQ3jY-MN%f@qDa(kUtvmRs#I8$D@<8YQ39)pheKS!si^_j=fK4_2Xq4`}anXG)Nj0&oBEi!7d6s z-vPNF6GQ=`08!xbDe#&)2YxFlMO9B7^fBH-w09~(503ZN-2mrkM&6r|qzCpJk6L+ruVf^XAbL>q*2TlS= zm843_2Cgt0ICK&~03ZMm0In1O)0qU&ccKt(Xcq7uvw(O1CJ*s2>Xm7TGvogDL;U|I4{f;w8r= z6W%Z*SWdwxQJE}~v7l8zDRy8XWhAdMBoS?4J}JX_c1$Leh2t0$5?z2nu9zCL&AG&E zlCageP@OdRxfvxprCCimgk+pH+WMel%v@C^T-4sRnpDSytBMzqOqI$d!vxbdX{U=1 zlG#?1?p%^CDBeDxzz9*COU?(bm|})ig+iudTIlL+)-L)KGGjXWjK5NdD)`D#$aY=| zoh++PN2y}uqSgwlv?w74U32TrPBAW3$WWQ}))mprmkA9hEGef23i-|?skqQyWglUl z%Eks(n9EKw&P(e|&N_$IdGC#7%%ef2ipV$%4s8>tv>C;D$6+Ej##9(&5PBlbvxIcO;N>A6NZ*op?q-yzw;TMhyJp)l`@@Au@!)a zR;N;SC9$ko%)zQuxtFb!?YQz)#-x?Rf65CJqt41@FRcs0^le1f3+_yFP-RlC8s=0C zed~Q0OVqlRLf;F#W-*4*FlKowK^Mji+@~_exNAPjy2?y2T=*E#=`8VBb+c3y7EQ6v zwo>SOxQ$ehMsg5>w6<_tVItSLz%H!MK9R-d))PW?Q3N;)_eFZfYa12}y*4GoNriQ>mC{{^DamY&k}PQq zkcIt06wR`<4BgyH!Re)lXrZV=3edp|$5k6ZxVMYkwq6ys)3R`(V0dYtR)R?-MIH=j z5KZu{SB2{=^P)tRTB}4BHbnG2l;W5*aHYPK@3ONHo~Xr2!>kjnXG*|`feBHS<`a^2 z3Y>x+wZb)72@Fy+tu;xbTcP<@3VmM`MmJ?`MV2xOjRHz2=X4fP%D$B7BF0w1bzBL> zKte1ks7?#G2KPR;UX>F5C79=0qZ_pkPFZ8Ea1Iq#kTN$$NY%0IpyCYoS6L*uKd2Lx zD-4c@S6UmT?hHIsJD3r&5Dk11s?X>|c)n+*FJ(H=$bgex#%eQaLh~$;{G&ottW<@01OxSsRS> zk)sQ88&R}1WCf)(pHQshRwSt3DI-*kkdx0KO~r_yv7zUL;$5wVftNy>qdrDUfe;PyeTlr};NvaFiB1}R=4k5)=` zT1&~K1KbfJz;+wK#hkRX2oSb5Usbx(03gt+iUDsz6bK+3zb!DgGNsx$D)hbPJ|`0b zBrO0O8?8rY@LVzK#x_JN+rb?@q-9;zu8(}qmS7Q46@bD-ZS7v7wpk( zv^DP#JDtVncx64X3TYq&Wo97VVp2~4ExN)JD{yeGIS`jsgqIaWV>t=IocmsiZhoy5-Qm`%FDnT{xz4iHhJ_U zH;CIdKvOANflSz95)%$blZXy&P!TM8>&=0sFe<@np}>8VcecW_(RG5LYC@TM%n-oO0FOuL?eJFs_H8ou{M$$ zk5Y(bzynGljo}h`4+2&bWVJEX=J%E%4ynSJg5MyAKtc;JTbPFN2FopPby?ma6%k01 z;ZDp$Yd}drM{9&l8J+E8ng!)7tVBM=kQhRcxnU#}Xemj9ET)a41?8+p)(qCdpHyxc zTlL6iWy%11?lWVnkQW*r5q>o=Vh|O*ZLKbDi*NaaLxh1#*cNyYGce6ST8=J9O0EzbF - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - + + - - + + - - - - - - - - - - - - - + - - - - - + + - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7d3b8deb9f2611a742f3df174e00532ea0c9b328 GIT binary patch literal 5837 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 X9>~&V;I1L2Vb%Ww!3Fege^>zkD|s+x literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_first/why3session.xml index 7b99c811e..464642bd2 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_last/why3session.xml index e896c8ea9..31df8031e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__insert/why3session.xml index 76678b6b9..22d1e7591 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50ceb1bc644f4bb103d645d6db6cff6e0b6ade60 GIT binary patch literal 569 zcmV-90>=FxiwFP!00000|Ls>zYa1~Tz3;E+y%aRk=nIm=_F!r#K9#*LBWaW@IJQ|U z4(_k7)-I)`Zb(8XP3^-9A-$P-``#e!mN}*UitdKk533!G1FZ_JbEYrjJ=2VqTRu*w zVLto-Z^re8$Fiq9jN3v>s>5LlHM*y9q*gn4OPW<)Y1F+FVf@cJzVXQ>jsh z7p)Bi(b1AuH|6$8rO!vPCvfl7kxi#Q|3s*h9X!7i7y07Qa~-;xPDF$Ai&g);Rrkv& z(Z}KD2pgiPkYyis@ld`>Sf#tFPhTF^{bv2ZW4|4~@_bsnc>ESTF7w63thZv;YwL9} z`oA{19mAPmN+m2m*s z=IB#4x~>XV(HX8F-Bfy6<)o}aWjrdy%4de;d4eXWAk$z%tQsUySwupSod$um - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__insert__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__insert__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_length/why3session.xml index c80639a94..8afe35997 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_length/why3session.xml @@ -3,283 +3,244 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4985223ccb2628989d63235bdd29b957afd7a073 GIT binary patch literal 4604 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_tag/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_tag/why3session.xml index 6fe9e0806..44edb2ebe 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_tag/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_tag/why3session.xml @@ -3,288 +3,257 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_tag/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_tag/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..56f3b6a0315cc34d353bc2843c90db0291067504 GIT binary patch literal 4836 zcmVM7hOko=cx?UE3HF)hd zHkGPMoW}Hi`u$V#-I8NlPM4jq8>lKv6h)rP?;KK;IRC}PKOf!KS(wfq|8P$;_c(Wd zxQFS~{m;`&a-ZG9bL#$C{^%)9-E{htzW@8z|DDhY8Mx}xL{8}E^0%0f&!3z0_51wK z>GSXIduryt{OUeA|LxnuH2rW-Dd64_l`j5#$`AjVPUjDQOs8Md^RxRcO{d}8<2?Oq zKArlPoYNC-JDonhJUmRlf1BaVQ+wARxSMMK^#%2ZIcjn9`BQuK^Zd!p9#d>j-_I5e z{@pz|fzBJZBl#2jN)lpi#!)#++ihwX}sDDCbKGjUd^hS)kV#!S3_)VNi{B3OS`P4712&~7_h8m-@aws zZ@wY*uG(4qyDc)C&GLN16amLCTR&O*>mRe<*4D|^2a1&i^5yk1bgNRjeM_>|+Fkpv zJWCI8ZKB(fTK*^*>+|=A*?byj&*AC0J0=N5o4Su&P+vOz&&J@UO zVN;#Wx&LtU;)6>=J5J`E{m1k@J;wAnpW@yxIQ)#)#ITEnFIK3z5x?5sy8(=sAn{57+b`414@FJ39W_~B)TBp5&D}C|t5Ujs%L_(L z))zJDe$-^UQM2T#UDPDYsA&g+W__+pNK!THj?wk4I6kVF(LM~nG-nO)%(0{iz z3%W0jwJGA~-yv1o^BrKOko7QbwEH8#0wv((hxH|r|IR2H4 zT=$KNFY4WIQ_Ak;p^Rvu8noR#Kfiqa-rCUOn!f7T8PzSWLDoHcoIbh7-%{9B`NB}z zVeC8?vp$&Q%DyC5ENoz-s?C{MxjQo}kYu*frF=C_#CkomJidBuo`~&X`BZux;_{hw z^?~_F93BL-xCoeUgv;!zz}&pTru!}XpUsO^>j^zQlUa8Nmv4;O*MHp2FphTR3bc2p zeBi6jE{9v^>j%}bag$k>ZOq6CmQI34NN%9ORrY2v^)|jw0|mPKY$O#sIme>Va6YoS zum#%CmAfaGmmW$Nehi&oInH{b<+99cUcGb0LB&DE!Mnx5a&?uxKcm9Ehf?_=?qu5& zYAQi0K`KG6mLT0iIJ;g5R|!xFPzms%2rw`&*p_`ODAdtKB|{~{)sUe%{H*3}Q7|Z@ znvzuTRPg*I;3?yP5t9n#35~nh0~M+;Bw4g_QF9L##;u_3%E%s{t)%ri6^vMWv)>vg}r zlJv-u8%rEZqip|W=dQ_KSyxFmia^_B<6H~ftmB-=G~3Hv7#VRf)f;Q`&swmvy8W38 zF*h18X7SOg8KYJ(jc?43P{ysz(s%H(Yf886gz@6NpPH2imZyZX;O1$<#Qmldy8Wed z?9?@3%ddpkvm3mzGOum==L)V0t_rR<1y}o`$b|JRp8W{~*m#$zvZ}JGvg+rusyB16 zYj1S>%kY`m_s^?Y)6Ha{6Q(CjZB0~cxUvab?<=*1x7OU_+Sc0#ph>TVnsf`Bw3nMd zrLkMGymE5VTSn(uFUp-wjSd%|ivOSC?P&Zw?a*Yx$uIeSq__9x6O~|h z0raG`8#hkSYXRuB&yJl!&u%V~_k6ADR^7c#zFft@J${KWZ<{j;Ts_m`%uGGw#Os>+HkeZ zEb=2iFmsF+)wr2OK;ii%?0)10$qi@yvk{xn>I*oPTBE2{q4m?Db!-|nl3JtZ3#;o^ z*R8JmGhFv#3CGU1WPESalGd9$Ra`V_sNlI7N37tf;92DiJ#RpP8vCEOt=y>GsNAUB z*x<(gM_DU4DmW@QDmV^;qsO`I8$R^o=dJN>5ix=<6K(*F)|Jg{7DU+>tlflb7RcTf zNvFtk@4F6j_uJKOi&k*DyZ2KNAGr5)-nXua4{a8<3Q}!o{mY{2spLI3tkSKGl2A^N zcK3$&gn<5K4wZNx$LA~YhKbj^7nh(1w|-ci-r4(Mb-XgAGUc6n)yH8&51&{?L!jQ{N33#O7I(dc)WpYf1;Vd%QJnE{7BtJWV87 z{6pw=16i`%+Em#7oK^PkKD*x8RM^UzB^WLao64HXnoF>zO9&*px~+B5T-FMpe`jSh z`Skv?yM5M5y76h>eb%l{@33}teAjQk{CYN0=?JEd`y~DlRL^>!v6s#lhbsH&8QjS4 zGHz3K+*jPTse0B%-KS44zWy9_oYr~ZU#_l6>_^`hz&pI~#g{!cd3rr>1XrM*1k@uP z@*M$n=amULIF`67mt@yR33iYYY)Of$YV$3_mfs+3`GsK14#SoWz?SvFw%IAf4@@V> zwHfcdHUX5cx6}9tk7iq>?mn1aX=EMRzIyki%(%aR250b8{=JUR3lyvctvw zNmF-qI~P(xQ$bTf^K(Gc_YU=1DisR1=L8iB6$+=12Ua3FIDv559`F5&w?zNsiW)$| z=CwObx+_hR`y3KG91;T@qD#OX29ekYQJLR9k3?_t%t;TvSf|%V1vOSx)bIIzdZ+#EscDq~O zWB$PJF(3VHgw;gC4gwZYze3=)yIUbpA#fZ77Fo@1CV(bQrE_K^IRSNhPzuGzB>GIBZgPs z9IF_(-R@QlR16%4fkUrUcJl*U6%9={?#R0Gn7`SF4IvHhm=;5eazp@N};;X{F; zn?S67U;V!N{Ri^6HV(!m0yP787u~H0_{aztl?v1x;5~G=0^pqh;LyGb{U_x_w9gl-|K4zS z>$G5<7FO4Y5mUIG*k z8YeRfu_oEfyrGUKqj}7MTCYQt!h0gMNu?&<&4i#p*cRYV7x~m*$~B25L7e4iEtvNASG4O&=63wvnZsRD2NEm#7Kj* zSx4z{V}VBGXwYF&1l35NgqA`?hA85K;lb>FdMnERH{T};8N!pJ4x6E))6Qg8aUy&ALqGfBV^%i%rqABW28}v z@@#^@J-v>Z5#pT@+9%tQXLx0Ewx$s@NA(jd$MK#AB4uk5ZmW!3<}pU2{WQ z*)v#u3>l_LVfQ*}?*lACX6BSpq4d3!g6!c3KA9-IgUL8}7fne@9i$^fb&{|R5#0Nf zMK(%tOAKW)qnF^h2#)5WAx;_rK;d%Fq}D1>57iK51mvTvAfzoto2>AQF}NBW*Je}x z55-4ZaoDz9oHd#`#w>vc!ncz$&PB<*$jK2SVB)0|Z-}MVMU@#$N)$)autjc^l|0%U zioCdJa%QPGU)CD(pkAQSg23R3RUAi4DcKkwbYM(Mn^>Y6q|s6{ZA^rv!{bXS)j&TW z9Oy{7VG^dD0|W3fFo+9RDXWmVY7Z7g0FVa?O#r_|s@ybLGL0Le-Mqku z5{w?A%ihC5In-22!R~D)$s1A_S?oq+FX4!ZL9@nlUWiH>YGL7;`N$|VNnk7yy2)8f z6*3S|O3}up#08@q5n4oJgb#o)fo~^bEo%uNSOX^bzy;tB4Uwz}ia~rt!PzsDqLkuC zmdY-t3`|6CJ@k^8cG@P`q(fYzzHPl|n1vJ-^qjL*J~;(x8E6W;R2l6nrDQ`Rg)Sm` zBUKFC_yo6fIY7>^7FF~ppdnbTvj{Md7Nx-$qY2F^B8a*Wbz4d|*}&|Bc0d)ZO2+J| zf_r-mxuh2@F@IogsW3<2p!j11cMti2_pFiLgX6~u`D{o zE(#&Ts|s@zVh5<@K~`i81+GPP8YBP;tfRV(X-YRp4N6SYxFO(007~>knxv&O$RCP7 zD$~T0K$H;djfQ5xCPWQ`z+|m+2p6T41(_5q0!|t-5(cCSh)T$LaBIX-C5yZ?Y5pI) KY=ot26#)Pk5sUx; literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value/why3session.xml index 05db6dd14..f5e11556c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value/why3session.xml @@ -3,343 +3,284 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - - + + - + - - - - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + + + + - + - - + + - + + + + + + + - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..177db6a382a1f4128fe85c9851ece1b4d3d8ccc3 GIT binary patch literal 5168 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 La_5Q~GSdG5KkL;; literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_first/why3session.xml index 5dc38034d..8d1ef227a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_last/why3session.xml index a4787cc8b..050c76fc1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value_empty/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value_empty/why3session.xml index a41a3772b..b9b2e7607 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value_empty/why3session.xml @@ -3,265 +3,226 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__set_value_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..76dc5abeac71d106d3fca23ed6d4dfd3ede8f377 GIT binary patch literal 4254 zcmV;P5Ml2hiwFP!00000|LvVgZzH)GhVS(&atn|_0PYKr4xj*Oq=CltCD2vi+9Skm zciZwHlV6{grNydJ$<}7KWbrUPvWi9W+n$d_vZ&c77yr0*-=<+Qz5U(YPu=azO(ys0 z`=7u4XH3V${rmngxsUGVAe z{N3HnB>iyrDNH6VqSD2`_xa|(lgaGn_sQg2dU$YO(_|9vZfEJgv&qCi=A7=)>|}EL zcylxPemBLH`?l2|Xic=AzM%dvLoIGLyKnD)nBBYSZHn#X&(lSRe{&Cu8ap!m`uy!D zQVAM)YJaTfJ?m72vTk-)z8I^(+gs(bGWXrhek)yz)7kXyc5DJ~FO6{NcXu<5lkfK_ zrT`7z-LJ0xSXI$&>C3Mx-K~@}ujLkM?-WH%%c9ketsVdNA<(h;yfW3{Mzqfw(N-hA zrV&e!R3l!r5r-76SB9&Ey>z=4RgL9B(;Jpt>TKG6Y-^oPr+M~dV;Jen`d_U5;~&$n zi?67QkKexi@${W{4=Io@I~AkrHPcS3btgz^4+2{?Z0%?5%!;GOs|~wU``E#u3MOV72tWV9J+ zixBUJ*XIRIAEy6HB{}S$7g(X)m(HL4%)l3XeJM3;DMve%(;YL~-#<7Mo8CBolb~G} zQlAx1lJ~BRp2Wr{<9=~}UD|&?qujWM*_bXG%F}!NrHkVX*~e_LPfv(aL08mK#a+eS zmEx|!m?L0_xJ>!o0Qlt)*I)Lx#BSfyk5KFDsP0%pzm`c)8!*+7yBTsllO6;6nftnh z&?iFuQPTE?2fIGtx^H)JJrnnGJ}82;e6m49g;9mkbsO@0VblzSdCQF#9)&7FF2eE7 zuV0lQ=Sh&x(*vIIf9X7_ZxUhn!TtG(m39i?=hH-2npB!xwINSVlLH<+7TWH`d6~g` zV;XG0PIY0Yw!u!n3_I0_U0LmVTlq|-U8UWt8?rz7SSR4maE7=}z+cvS;~8d4vym-z z=jNSuB&>CLputVK&P8}x!B)Xm!L|lAxdFCjRwJcGN{y74Bc(qC=%t?Clj6DLz!x8v zS0jM2fJY6_0&LIyJ%P@DcyRCzTz8ktMO6R%M%>=k+HJ$CQRgk7ZZB3FX5VgyHN1ju z*<3A4)S@eo?q;u@WEYzW_Q3%fT1Ye&HEu35Zs;L_GusRlecC|Tw)ArzQL@(zYl#ww zGw^cNI$h|Mj5G%{M=N070btr^se|7hTVIed+ZJRhWGZATWX=~dy@gdOwyvxm^iswg zN{a_MI;QQLt4CEef6Ze|*;-9I#>T3uRd?uGB|ARk_ue-dQ_>Ey>~acWuLbW{U(qA& zOvd1Zf!z{Y-M*~*`9lp3*!+*@B)ZUC5KAi#{RL7VB+3-p`@9?eT=ld4c)o zx{07}BDiWpUf33H+MAW78#|FI5h@WX5#A{gUfzVU8T_r~w#L40uP;9Kmw<+7GyJek zci1#pS#>Thet!L`tlGUt&Fs^3R{Ya?9XauRZ`!5uWWrNCKAv)Dg!yi8jPthGZ&+a?hgZS62)*PjsV+&MH` z_|i1~k8Rgi(KFg}X6+3Cu?qWA`!u*&8Z)|{dac`-o*XlB(9B>_!=XO9cDf!~FWCNA z(N@t`(RL)-=9@JcJC7(|I~1?-sPd@t=#6+ZI1JEFVdpkhFUL%62I9GlYQVF=$4riy zScx#O0!zniVDXi9R$tfSTm`beq=^RRGYsoXl%>fz4OZWwCwy@r@DOL&xqy~-NXrIM z`%^mGQSS+1%l4%$dk(kzE^+sHd+7aJfO}wdP4QB7NFZZSF-yH58#D7Me?Bsh2gd{z zP8CjP(b;zmr}FzMHGXUS*7&{5_&s`XG5BC$Uw9thv#sSf?aCk9caz`3190ENkrA!u zW_?R zVG(<8&#n8CXz`OYqK~37Yse4U^)zTbE{>Zu1PmS?!^Rsj78i!6Bi3OxlwvBaj-pkC z)lY}jt^=ndX?663VGZ3Hx;1ovM(Cbwpwas^a=!T!wk4Y9ra0-Kp@QdP0(d#<+zy;jjbf&a8uN}YFu1v)Qtyi5zEW?PdTYnk(}5$) zmoyOMs!lEEX8720F?^hL=fqELD^9Nxr^g+Ed&WfR9?rf(0=u50lerllG79#>X_$h( zMANG{KzR#KX$9(q0d??5cEO)LW_NYDch2tW`%0Hemr9p+M3>$s2w}H{`6*6qw_{;W zbZk4S(#N0Mj#|{w2e+dV*)Bu~aeha)BjBDryIqLA4sW+@g+DK`yx&9Iw`3N2%GB~| zN4ZP-j2R_ao^`speL~nZx4DifAG0~(HF}!aSQQ`q z=Gr$!Je#@>tZXoM?VELmbJvb3=jGhB7h(rjEe8&HZvipCW&RuDbYpdD=Oc{PUm)nL=^SfK|Dv>IYDv{orNJD$7SNfIH)+-7YFkr zS`h9B%?oyCZ_QxD^DPm-es53Nqa!gx59Z95Uk?S%yIt2llr&eRkk>)YVVlFZpyt5J z+LemgzAFbWZ{R$3Vx4|DyDpI*1H|YVclFa+YtTLF4T9^Y?q2(eFC8+wQ1^8d(w!{m zS#RagbvgKQ#jTs6>t^UZHbd{8J%x;olekU>qDb5U3-7cOh;?z%?V_sG&d|1H1=uD*)aJ0G@lrb@(D5x5q=)_`PIt z>-1oq9xRe}-(l_r`Dz>3P>H&|;QfeOX>i3f*oJ^!fWM51ihv6iw<6%m5wJK(r5FF3 zUnAsetY5acHP){<)(3YJE&(t<-e`yc{VNp%7cXwbK*d0Ri_qQ>80|N77`^x)@neU_ zk|5CEC$};Y?4>?4~ za|lsdMs;LaN9uh-DY9E38o6*WX=+HKDhcg);3m=_JVez5g;--aG8JcvX2&Sc$>Vj&mu_c zsZSy#>5b*WSRax$=#xYt(>P0P5L`y<(c?^66jHHlb@W^?S^8ufZ6jqSCTF?#T%q%k zCR#*hM8u>}h(hH&EADxs3D+RCh%%(aoXwoM%ta|ho0Nr?G-NHAmpQ{GHo!88%IpYB zrj%lh3xot4T;L=crKr%Ha$%JeL1gLM7J1{TvYtl=dm1PQxkaR;qcp-uYI9Ko6%CJu zpeZUG+7e6=VOWw$O2|PeZ|j0r$)J-!lg2panHDr?svHF5@IIGIDb+yRoN6u&jVTIU z3=^HQ%Bfi5r+6sU4G*4J;U)YQauQ{jjyk{)%)`Z0Q7Sc!mReaEvk+9kw@8K*a2N+O z8kj+sQnuj~N@7BCA|RKgS&N{VlQDR>vMcV#NP{s1ZfE#UCWH?WnQ7-aF(yeK=AKL& zTxU{bO+tz)X~p3yfn+9)B*m*sDb^?@Ig^ePDm4oM@e(8FJXvY7=56RO4#$Bj@#H1k zoe&GqqBlT^oQ;A3!h(k^s5LCB7~0;$>zN7^L7xmqWTU?tvV>p}+J;F| ze1e%KGiQ>{Bt)OldO}MQEo+jaR8F-0vW+2>GQk~Dgd+qv`bQ+CRwShV3Va9222O7Vt4=m2@VCy50~qXMGQ3q=^L#ER|( zP>*&X89JrmJ&{BN8N!o@6g>RAXjQ=Pg~e4~f=eYh0k{eTCm2pb6+f5CJ_X(blCK4^OA)hj!W{oG|D#8NPHfFWgD6h$4X0?;h}~|cthljE6otk2(XfJuSD=7R7xq337IMy$fq+%0?4UIU8W{P#(7jFwj~D( zjq!?TVr_I3fuo$&aA0ncK7qATN;J5yz?*Bccx{#2g - + - - - - + + + + - + - - - - - - - - + - + - + - - + + - - + + - + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__structural_valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__structural_valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..75779ecd70cd255aada847c923f279214c064304 GIT binary patch literal 1012 zcmV9pOz%7<#tZ)`e zzpR`4y8Bi)Z3=A`v#MR)>%!Xea{2pti;r!&PS+eHqP^PpYkBk`47xS;h}6WE8wzDsg}#sm?|Eo@+R98b*}QX^OdMP_q3h-A8J!^6lpiz7&vIq zld-amcH?xWi(VM0LEx5I-(YmhDDe%_EoYUU;O$%n1YF=eq@mbQpoQCgAYAjHefL9k z8Not-ZL;LE#Bj@|jQU1SmN&a_O51`erDy9Ikglrz$zBU$>2CVOVc)yfg4c7&x25SHb02B9?DntU;`M5UbN5R%d`%9s#j<4#Z*yVtFuo zuEN|g5VL%a6nhxH3UM8VUvokrhBzVMebM1VcUXF?^8AI$(_tu=X=f&f!(2v%KZSF4 z{b}A7=W=4s_LwuLF=x)eoIZj%^&IBZ4s)x%qdOtU2p0OAkcEyPE%X;;%T?=wqnqN) zhQEw0<0HUi9P5&t_?Qf|0s8}xivTh??=$QDLX iD({aJK>lB literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__successor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__successor/why3session.xml index 666f5d279..15c33c46a 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__successor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__successor/why3session.xml @@ -3,58 +3,47 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - - - - - - - + - - + + - - + + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__successor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__successor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..60ab2acbc0f95bf55b0f1a208691d922d6b73330 GIT binary patch literal 780 zcmV+n1M~bJiwFP!00000|Ls^yPuoBczWZ17C+z!i;E*0rk)rle`MR2&odruFr1l2E zzptGH#3QIc97t4ha3Xs=JM(?t%ucpU0n5!4@+_S}x}C#igQ1yUL)*Z-47cHTyCgV; zSx4)i!)1#t9~^BpuIO@6ZbNqg3#!V41)Kf@Cs3|JOABZTLx2R~?%L+rO$cRn9l|Ab z9h_4LxuIDKxNN(tHiSh>iLifm)%GuRi&<0F7K3qlokzTy7rH57`G*m{9*<5tes*zjLe&g3xmtC7lX@)={< zy6|2L8!YQGTY1?Lh@0P_RMH!KuPrK z8~?#sWfK#eWJ<}Q1(qcvW`q|GW0HpR-ilSuI7&uDWh_V*9c2sJ%ji;eE`#fhL}eXw z);X4i$XP2ExzLQ|n7|mo$a*9BIwPl)!(^3@mV~oOYLT^(nvx>vhp@2a9uGkBBBOwQvxP>pUIgFUS+9~>%quW&T%7^2j?uJ_ln8hkS5*ar{r&Sg_BIBB(k%K2!p#iIN@>!=8jV9}TM6M81RGw(? - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b4578e4a282528d841fd1319e279e6b8e2b6683d GIT binary patch literal 754 zcmVzPuwsNz2{f-TvRDzC;m9}Ko6)$9IITd$#?>mvSFKe z5%kyB*)PEo+JypQ)xE5;&hz+r#_x?2FOcHx1vafeM}ODhERYM`4fX-MI1b~Fe!+N# z?ZB(Y@n-@HW1vZJ#gmJ@3DcuuY4b{jI&vI+|v~fu3j_^_uD1ji)&HI$6PBBLZCcgymmd$ z(JyARJN%3>EfCj(fIX9Q=+SL{`=-5hF19z$%~EOblAUV;x88Z4bLY8>E-k%C!!380 zsl>~FY3eXv+RXBvAngGAS=P$&|iT0>n#* z-aEH%NjDJ{535I@mi)z`@P{4#tMtR6(9cgFi?R}vicG3ok{rS>9_PNYZNQFi>==Nq z)Pw<)c!FOx1$bUoS{&jwB|Z$)4^^?=ViWpd={W>b`6-{sPvRR|tXob|k$4Pn^sA#^ zeJK8i<5#=46{uk9zVagRF9p7%{xNE0&qke^q|=8YJ$Z>dH|cp`HET7#R#lp=e~~q0nQu^7 zYjf14W%O1{RV$^y*t#jaC_lk>lW7n}bCaVmMvzo!by={Hjn=jyJ%aKq&CkIUB!neV z3l@MvHJHF;L=G~6#C{;bg%Y_$rOJ|s6(ZE7fRY=uUV2C%nW53PCX$T-PpG}*qEsSL z=GxT2BdEw~C7EiIn^KaIkO*Vx3!M}#2}DB)RA!1iSXCM-DAzR;p~!{QwIyk-tVIH; kEYGb#&t6&7)>EAq(t;@&B{qdD#uVu6Hz@i-OHLO605LLe_W%F@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__take_buffer/why3session.xml index 6a9fc61c6..9fa9811a4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__take_buffer/why3session.xml @@ -3,130 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8447e54c0ac9f7baab45da3e70fb7cca94941fc1 GIT binary patch literal 1406 zcmV-^1%dh>iwFP!00000|Lt5&bK5o$z4KS})+-j@IOL#OvT3bE4O!3JB6G6Xr|)krlH$q z_t>sK#w9f!pN=2nx=r_`(CW)Tc5sKz0FIu*0W)}ZOz)vjB#+7=gg9ewJ)oSDaU$HUo;Z69UhKfI><*}R+GwcX>A z)@_>}J3cJCRol+i?cM!+-Yyq2MqW)pZsv0+&ep$ui1T~uQ4X69-mlh+)tZC$;Xuz# zJxoPkAKju4!%+a7h!sbY%X7%zD5xPPj3oAu;6SL|aKawOp+Vh_!w&`Nj?KvAYc4R@ zbM^lr?!33oPg(y0gW*sL!?7wPk5ZwoGPW|dGWLQP%cDMmRJV%<%3oOJcGDV9P`8cs zQ8WQH=#M?Yl;jX2Fei|l4U!%$IyY5ZtGK?QxHes-VWnZE;m_RTG@o6UE6OvB9hZjx zuy=odS{@9%+ArrL=M1W9*V}6sRPnkt@!HxJIhA@!eJb^o>ICX3<@nxDZdPlgI96xEbM2peetqcMYg`a6{I>w=kHPo$0`o(gh2LM?;mrB|ymh#y{`yjXemA%Esm0kpwdmy{Ef({Z{`qgPp0X$M(VV7bkK3cZaD}J>Q3awl7^|_Wu&MpHIaE!knou?2r`LpCr!XGFRzazP zQU&Eq1m#4%!f1%93RM-VDqOrOjA|2Ve^8a6D#4W~!I;LNb_7)ist%l;4(uK_esg=u z=2^n9c=)oRotk~SD|k3r*UCzk{Tt-MkC7x+!824l!pW@kVI>4XhQiv+-*63;L7R^oL=R#5aQ zglJ<9d|IL_XbfaU5U}|EdW{f5W0U|%1p(O?X@GnzHhTc66&tC>x@eS@%9$K=ByW*~ z)>3AGC`ycMq#IO8JL4gU=&Ux`YvF83$^s>46|s?NM9CsiCKLsXN-h8*h=Pj!G(un_ z`#K{jc}xivBrniY@XB&jjqye}@R-=hH6eMet#KqR=)izPjz40+P*6L|M!tb$yhoW5 z2v?FR+Lsc5C?u7WHhl;}WBHT}uK1v$XIqtZ06;HV;S6ZPWnXn`&jZ+degj5nq@1o~Mru1nB-ME}6SgoVfgzOx0%1&|NQ7#a|U}gF% z+LYOiQ81&x;0@`>m-FnHWN*dg5GZ?PJQrso!px}%B?394DU~96D^4|sKnX5iDS6Dy zEB-PHD_mkT%7c|}xD246=L*rWFdx8Lt5S@Pi`GlsmllL3fX*066kVj_EAYj9a7>dR zQ80eb9MKqSkxM*hK~6g0$UDV+NXf)(OoHAD8e$%xLR3;P@mz4EkjSFtkfD!#RHbbG M1(miSH)mP^03b-YU;qFB literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid/why3session.xml index e87c65949..fc2a9e976 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..993a7912aca9541bb2b78d92ef45a03510391709 GIT binary patch literal 601 zcmV-f0;c^RiwFP!00000|LvGdYuqpp$M60Wz4tPsx1c@jA)$fNQ}I=dUai5|ES5GT z-@bA-k8PUJhHTn}8iOtHU-SGSn<0wioZH=}JYG3h$4lqVQz`TfQMk&(b4!2EjxL0 z9v2E13jZaAtpcS^+fcU?jqZ}hA>KKDI4YMzbHVj!aBY8cB{hQ!r3 z^kH3>O$5+FS{+OzkQt;=HYrA4`H1lyelnf12pMz?LJ$!b%AmD|C+&kpRH2EWV@y&I z7$`^)ypFc1j2B8+>AeZ6iCBk{kV^%*Inp6|j9^kiAykyWLuw-aXCkhQ)|y*DEeJSj z&I~6eVze5p)=eZj0a9rU7C>sRq$dM9TgD>uF}9qVNOoB^<0z8MUZYMDJR&K@AWF%+ nU`?btnVOFbhRbMJGD?v#fn@>Q+RW8lC*A!3TovvADi#0$*&Zb7 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_context/why3session.xml index 682de9df2..675dab1c7 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_context/why3session.xml @@ -7,184 +7,176 @@ - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - - + + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c1928828c00c8d815d45de516b953502600e8a9 GIT binary patch literal 3864 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 aI)&lJdXu9@>r%fs&HfL89O<1vtpET4|8774 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_message/why3session.xml index 9a5197a09..63a8d0555 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_message/why3session.xml @@ -3,62 +3,51 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - + - + - + - - + + - - + + - + - + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..eb927a85d0e6fa26df3e56324a81f43ec284af1b GIT binary patch literal 974 zcmV;<12Oy`iwFP!00000|LvH|ZsRr-hWC1k?q|chNT9QDfet!A&~6HEg+uZ%BfxQ7 zi4HPvUsAR;aT;eF4+Y56Y;+@e^o#uY9g6WY_^)fYYhBZ>AE0Yt9l^y%_`BO8e1cVv zyUTp2@NN^oHvJdaU=?q2z0dFwzChpDZ3x(nE#DM%jI^Y?#%)YdHy!r4j!WWpPZ#M~ zAG@uK+YVOE1FTv<7LIKf@GHdoro#<%=$ZyRG>2msR*y{+R}W2dhkXyX*fgQVm2cd( z>+idK*Yz<~?Ki77?#gntcwQ`bzmE7An|-+cSs*&7{jiruFVVMxiRC$(yLqROU7|4Q zi#SI1ZST6$63IW~Xy3qSgK}=nM&vITkvVqSh=;yz~ctjK6S-`0ugSX0^yPm9hyH^R}d`p z=O#-zOH8+HDyVPfWVzafQ~E7vQ+T$Y0qLrJIvH}8|JL3v)&4BMjlx?LoaV=K*AxN? zErt=c!^l$oo<4mkPm@G`k0cpHyHPxH0Dlc6{2NHbGY4EWQ76tWY!Lk6N9O6YikFsl+1cfy-hDAmm0LLM(~BO`OMN=M)Mum@^+I}) zucenmAuS|21%iZn|07v^f1_W#-p z_-V*e@*j2zvJ}=gbF$E@M$7yNu$afXq$EBT@f{%V0GS3Li}QB#rbI|ZQ7MB$8EVtC zK`BvF!89krQfVdrLjRz&V#qD`JP3^lsXU0_sddP_(TWk3YLW9Qi69*)AuX+qPnQBv zSkNjs?p4A^s>CX5B$$9A*g6HXsI(R))v&3hRY9amyz&^NaT*u~=dEx7>!1WBS_0u9 zY^o$GhZ>3C7^p^{+9uj*>wpNwASeQr9zj|-{(1$8W6CO9Pk0A;7uJpcdz literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_next/why3session.xml index 4d6b465ff..571db7383 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_next/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_next/why3session.xml @@ -7,22 +7,14 @@ - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fb8626e58d00bb397f78c1002e475b5769efee90 GIT binary patch literal 320 zcmV-G0l)qqiwFP!00000|J9PaZUQk7Mf?4Ve8T#%3oa;VB9M^MM6{#X@i?($mX+;A z@b}pV6hRazNP&yd$hyAQKAyZo%I6)rV7F*5Egn39Z%-IKwt3vf&)74*V@N!=V|kzz zqtQcg!G|tiAbn%U1+MUf!CUAeTP9BF7^joBs4cGca_;=F27Nw49*K4-X^raL3C7yFXbdbnrGv8UWe z3@|Fo~f5WApZw}ydoH9?lnN%%|cNKqiaEpCT$j$v@}Xm z-B2kjbjX!>6B}8$Qd%^PHdSLPUP`-=iVQod7q!xagQzSTAxeR$jM3VWwUtHd$W>~| Sb - + - - - - - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cc095541f561511a6441e041c71c8017b306df92 GIT binary patch literal 332 zcmV-S0ki%eiwFP!00000|Ls(}Zo@DP-2D~(1U; z4vcJB8lXT5bfFI9i9C{m5D5WbwUhK;0JT2>9C)5_&j8YKPe45KKs;19VSilQ757&- zPE5F9fGs}nRME?U^%Eu@apH1K{^JtTUvA7}-&LS)F4MeL*{RJI={(?}E6@!moH`up z8pHSL$hg6N<`rH{!-uh+VgA68oBF6C@lFLj5BvIYdl|Zz-|kaywr>wQ(fU7vuD<-) zcXhw?o1fEzZm1CxeaglY+Z0;uTC1=q?Ny+}&b3ea)itd*=wehQ7_lJ~>x5O1;>8!A z#V#b(6mmAVHWVSJQ+CSaWK}fLkP&AuB-0S*BG$NUlVMsiDJIIQwJhu-;zF{GgeW1A eiWz;<+HsOZ* - + - + - + - + - + - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - + - - - - - - - - - + + - - + + - - + + - - + + - + - - - - - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - - - - - - - - - - - - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - - - - - - + - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..74cd5c1eee28b4d033443e1cd8e41ea1a8d83b72 GIT binary patch literal 6445 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__verify_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__verify_message/why3session.xml index c15938298..0923e9c4e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__verify_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__verify_message/why3session.xml @@ -7,73 +7,49 @@ - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__tlv__message__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..77d493cdff71126343aacca8a24549c8c5c10ad2 GIT binary patch literal 910 zcmV;919AKxiwFP!00000|LvMNbJ{=@fP4LlbZPfKiWD?V+@#8=-Pz-9!UTgO)|uqr z=ZP4Moq@z!8DDBNfZoMBK0PGLh5z8o+I4W{JBZHtgQ3%JPSEm$2FRFW_8U zuL}Gu&V}oop>uiBZAwd9J+HO2^jkyfzz}_)rCl)czy^Dujhiq8nn=G^{&ErBV)es! z3%@F;j27QtenSD`KX=#Q=YF|?KQH?O`fYhjd;cwK$$Z|x($L(P@H09ebX)AQ;tg=Y9uEev!^*!u1JA#e+Q0^wA%E&gDQ{#RN z2fGHFKRJf#zW*H#Rh4xt5bXd!DVBIR0Z^Ti@fkpA4M1uku=hTYA>&YBA4L^PM#4aC zFbA1AHRng?ao=Y1>AE%gbqiTA&boyw##jp%ni_$0Xr+GXLL=g)?fTa>jo0h5)2%l! z#wzXV_S^d(3f#e?ceiOquu&b#y^PdR_vqrZ2jWp=?ptmCA6NS3h!x(l{UUVQ%h?8` zYCc~4cvNi^Ln(1=KYeT;l(oH+_x&8k_b;cHT)S3O?@n5&I~^`GP~Q({~nlGnU%5r;B)WEcU`d_ z3~xX6b=Y#f1$i5sPOH&yqrBghz=&yx|sO z&@4rjIb|^ztt4Yw^2Ab>wzni2nU&Pq=xjhK83k9|2TO(EprzMqs~%@ETyG6dlEpg z0GeQ;0t%VNNTDNRkd^j62St)eSqo{n!6;;J$uO;c1=l(?og+kyD`A3$Q`6UWzuq0b^sr81pRv0D*SGlmGw# literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__available_space/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__available_space/why3session.xml index 3773c2f95..a3799bf2f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__available_space/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__available_space/why3session.xml @@ -3,36 +3,25 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__available_space/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__available_space/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a3840c2cc529c8c573900b1382ffe88e2fed2f6f GIT binary patch literal 365 zcmV-z0h0b7iwFP!00000|Lu{>YUD5wMfd)S?1z9#mLI*CZAc)?;B9dwm3joW+eqrr z{r9mu4@k&jG7!jOv?yfz_}&9m?%>Zersz1%k4O=7K^Q$A(ot}OG0XFH8=tTQS5BY8 zl}t-HbN+)xD*VPH#^`yLQyFMb7vz5X`F^Xrdk0)HUnRaz5OL;&c`x{d>!BXBqs^ln zILU$}ju{^OI#U==%tya4dlc*wCT4e-%WBL#BA1oQ%NPs$m|e?4^8F`#COuNTPvW-1I-mElIpM$?L;+Iu6Rw+roaj zsrkSDAHDvn>Kec|=tAh6X~bwJc4wTHR{0((T+wY^)mD1jTiW?niJ_LzdligZUn(K1 zR!IFFwChbnJ8fLkwq%VcV@*?wR#w+WQ?o+4f@*r*g`R{=4f4U%#N?T7yEr`o LrtB0`#RUKW%wD%c literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__byte_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__byte_size/why3session.xml index b9c35e907..12fe2f40b 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__byte_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__byte_size/why3session.xml @@ -7,32 +7,21 @@ - + - + - + - - + + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__byte_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__byte_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f1bddf454ae2db5699cd99cd126d386ddcd3a4c1 GIT binary patch literal 417 zcmV;S0bc$eiwFP!00000|Lv7OYaB5U#rypf>4QQ4r7c`sbL7CJGTVxgW^@tktrx9q z&fnhJm^g;m7(2PbUsm$<(6Oz<3f++dUSM{>%Cuoz)W5JxSh9FRqLvQgs*`4 zu05=XJi5p?e_Cy#myBMm#`1*J`1}QucSAoV^MB|5Md>X0X2VA|7Qt{RhzK@alh z)`NaRq+Um)-$JC$N&5eiw0o-gIacRbog`M9(`Rh+S-!#NM$b9>Sk5{jQbcslS|AgG z?HRg609I*17~&WHO?L{7&}bB>J_)ItKA>P4le5HnWKG065imHZ6n9QBCJYH3d&h$0 zJgA=5PNI{VE2CGXWtt^pWw2UH#kCA%qi!PENm4PG*e4RgB%4wsCYV5y%xPn66RGY2 LMAA^S`U(I5nkmr} literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__context/why3session.xml index 6c7013838..09d0b79d3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__context/why3session.xml @@ -7,34 +7,30 @@ - + - - + + - + - - + + - + - - - - - - + + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e5dea8fab0c1ff0534cf87ece6b5b84111eea261 GIT binary patch literal 716 zcmV;-0yF&|iwFP!00000|LvIDirX*{hVT6pz3W9ONU{zVbPKszx-Z~cF_K29X`BSx zf!(+7B-sO-HErF<(6WZ0;P}taufu!{g7~n7wh3{6^9J+qj_0M*x!A(46#FqYXbXl)ET+_3Qn4DyWw3Pm1`{N?R@t0jXz6;{Q z@8uN_8sedCAI>8`e+ihJ*qt~~P|D%K_1|HS#jxOD!NG!q_lyH*wyuNi8sT%z1HYSK z)MDSm8c*AQcB|!GcAm(&cp~%jM9#_+nUyDUKAy-Kcp~TH$+dCEO{o%UmUB_525O#n z;$%rZz*6!{$uA}UeoDR;88)kcH@6GF=xb{IwxOXOX{3=k(&U`3)9ie+a5_4p3zZJ5H)hiJwW8E9@Am@_0X*$+=mTYh|yC`+HXX)v6vFhow}P zQe8^*pD)#4_7z!XUJwpe!|K25367cbUVx0Q035YG;=Y{%)m4=E7MF~rkNR; zW@ccTnU87L#yy!9g((wSIsnmgZ4&rEgZ4TBCSF3&ANaSb@X{h3lM18KQSoGxEQRtO ztz_C%f<&x97ElU~l{9FCWuf9WN)Av)hU7;gQSeHKQYBjkm6)%*wwhN#G2sIM4;6{Z zq9TbEk}DA0>S%?QA_e4Du_%%O63L=6iatteBW1-bGAmQi8og3Bl{}J2(dAt;a}GR03&Q0DBl9RL9SVqT{J literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__copy/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__copy/why3session.xml index 0253590b4..adec73d41 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__copy/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__copy/why3session.xml @@ -3,155 +3,147 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - + - + - - - - + - - - + + - - - - + - - + + - - + + - + - - + + - + - - - - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__copy/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__copy/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ed5f04e9e79caf3da28478fc3f75c42334b2d100 GIT binary patch literal 2369 zcmV-H3BL9piwFP!00000|Lt7MZsR%<-Rmo6KezykZvxW;WD`t)pzmhjtx$Y*8*nGN zw$kX#*H2M?#IfZ(ZXCBAa}mL&N@TI>oI{Ex(_LfeeqD_*KHT7sacJ+Rw|8mUJzySB zXB|$EF8xQq+uY)GiVq`(-EBKfcj)hPPSduX+in#0kCw~dda}z`E1$+UKXE$7o38kZ z|DE0^yu`^Y%|DjQWs`o~br0?AJKm)Rzu5nCmEs{~f@ z6pMJ0SATwejPH2i-KG!ik2IU%x77Edrhl*L$MH=&#TyFlB;9=LzK_&M790$3jPw?abcN9|!l97*YatpXlo}#l3K_ zC)K(hjl_7}-G46!NIrtVhD2?ycYLSb!DR)@KIf`6K}VOMeXw~XuPdP|UVel6kGp3B zIu+pYUtiXW{_KbUMWEl+m67bLugL$q$cK3v_yW7{1V2B}{I>$G0`72t+so*z_6V7Z z|BC;E3hrZc-X2Kh(34=(6gOQW( zBI!WtpvpG77+K6fY>T< zRp6??y(DnWDsm%$k-MU=BR4YF?+jbjgj3Q47!U8{s)H5h>!!S1t3u=}71$jd=>;LA4*zL;n5t7qqKux0-$ z(Rm^&o07A2^Lzy7&4fO*;_xF>oKGh>@9WU|I)PpgN?)xNibbKQQc|U)O3CMwlJb87 z{#cUyk@d?Wy;6s&3RM-VDttawpeevM*S}V>SF%^Ke>$@7m;xNtF~YBBb`s>&4xM&2 zLr0#WqdP`k0rU9*bHJ^^`eU~S>wON%=LY?gJl9weR}oiFl2-y$0-O>7^dSjgKJ;jn zIq1=owS}`?&gEZ0#E&DaswXXr*yM%fWy2Ak9KVr}HVF(WcjQ@x| z)0OdiX8h3;evR4lUrtVx@2hRao8$X__edXbe20Mne&2hfE8mZ1gg^8E52wlVI<8lq z9|6yge_V$;oF5Cz>u`RmG(Ym;{291Cq5RdOAT0JtEl+lt&~KF5d<)pJI^E@ft$j1* zgU>O2w5DuzNPqM>rYb8(yMJM0C+=BqPlDTyfiBE5WQqfO6Dw=$h6TZSVKmxanf7HC8x+U$Ra46D7m%S2wi-LM6c@Rbl(A-2x4^RfQMP)2yK$b9oYy|Zy>fn$< zscmM7f|+arDY)_(`??gh$c-{u%aE83T0*kM^FZAJr!l!=r5i_2X7q~jM5rJ`bc7wv zozW5vmOO)LC?rfM7a52Y6nDuwml@BRg2qYoij{2$2^1q_6b9oBCr=Vk3Y`Y@%*FyN zaE;-Dz(h`vYVsTqM8O2LN{CYqa=|De8I*OB6qPHaU>m|jCMPtH1Rfo1v4SRgr8wuo zbEPDK3r%zkW6;?FIaUD3c_Rn`mRT7#amXh$+CK+Rzh@GpFw; zqy-sm^1MWq%LbW3Ll9JuI0};@QP6Wpi2#oTi(;i3?M1edX+}UK=Vi(f6@h`SiO^E= z$aNE}62(hd$dMotgiQ&Q<2Hoo3ZA)X7-j}CL=^>-PP(8ug*-dWH9-nX9=UBekMvM5 zCR0x-!lV;95z;_sVvO(mNVq2`2xh&@MAA&?AUt?Z4U-BaP^B)x8WJACm_Tc!5#%>& zu7Wc%P - + - - - - + + + + - + - + - - + + - - - + + - - + + - - + + + - - + + - - + + - + - - + + - - - + + - - + + - + - - + + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__equal/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__equal/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..319e0546cb2fd98891d0ad2876f92b3a95e604e9 GIT binary patch literal 1142 zcmV-+1d00}iwFP!00000|LvJgZ{s!)hVS|ny%!5`_)VZG;7id3f}RRpi6J@M2vBU- zk{3yTeMhzv#&W&H%Pz-m`4u-EE=Mdl zBL2PE68?exK>MH5#}mddIXTu?PSZYV+|cEEypF>KuBjP6;~B1TyohTyLmQreRoZZm<4xdv!@yY#qb@)u%t{=N)9Iw|j#F(x}{#uWl7}u+AInpL_x?74n zT<`k0>uFooF-}Q++2CcIs2{mH@un0p4(q-fW9_If!xZ9FMoudm{?W=qHou=C*S701 z^~57E(@uchs5o^0?hY6D+Zm3lxS{n+qp96y7;l3q-HoJK@b@n zxZrI7XBU5QE@`#uBj3HRQ6CN|#^tu}Zxp!c42MFULC?<7(^%YUNszsmcq7U29f-*L4dZdcpz?bQ~~Wrc^mLE~kO)aCmB=KQY+*;GWTkY@ z$VRRqVM8Lc-h>bcgV4gM8oZFgx&o7tZxlH2RVi7l%6wUrWFUt+*`xPUOra6d6IWW3 zDM|tcP?-WtSD6{3U6@!AjRjJqgA}d;)|3gFG?}hpaYR>vdoSz6^)*1 z1-c1b&dH#V_vk4*A+#kfLH40?NhT}PSnE>o;9cRmmQ-w!)>@weY0I~XpR8>2A9_me Ia)vPg0Mkt^egFUf literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_condition/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_condition/why3session.xml deleted file mode 100644 index a48425dc1..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_condition/why3session.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursor/why3session.xml index f6beb1d1a..066ee55a5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursor/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursor/why3session.xml @@ -7,32 +7,20 @@ - + - - + + - + - + - - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursor/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursor/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..65d2092195151238ff5194ec8bda7abbf1479cf4 GIT binary patch literal 415 zcmV;Q0bu?giwFP!00000|Lv7MkJ~T|hIjvpZe8_dNgi&vCAjQ`SAi0#R;ZmAvT|tt zedVMn?juW#0$mIPG$g(z9}0S5!1Dpd6x@^vQ-DIf*r!ucp zQg|B2^V`U;F9B<)+-1yOT!$;irR}O22bjyJ5d(V^YAJJ%iLZi+Dc_^wk5XOg+`|&9 zu$DR$Xs(OTaQacWH`Q*4yM5flQ_ucT%2ky0%Zx!&;i zVb{<&m9v|Fz(h^iJhXXe^U%W{D(^A=7e!N^mj||=<7Vv5*#E*(4QP}gjbbuVXIo<> zx1EQeJL6R__6vV$8!ICN^ei$mN-Dw8654=K2#uh16|shdFyvz^fVJERLSZFXCQ(JE zS+|Hp(^;=ICvBzfAXv+c^@^ibV1*VJk!&~#jD*@NZ=`9_dsf@Wzys?LI#org`3)b@ J>MbG*008iD$CUs8 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursorPredicate/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursorPredicate/why3session.xml index ea4479cc6..f1ba336e3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursorPredicate/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursorPredicate/why3session.xml @@ -7,20 +7,12 @@ - + - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursorPredicate/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursorPredicate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7b5838d25075f7fc7ee34eb5a0388b26f7cbbb4f GIT binary patch literal 270 zcmV+p0rCDHiwFP!00000|LsySZo@DP-2I9^fwE%D9x`+(+P%n1oG7Xl;3S452hH#6 zCMXIN9XhmI7J?uTcf13E0A{|{9H%$tCCtnL6)zck=9qK}EK4rO%zVPMDD#{(APrQW zu*EU^ga=GT@thaMc4vgXO-Rh8{lM2FXPuE%K81fRUn;7u*fLM4a!5sTx!kcc5C29@ zD|I*@uusD2a6(Qv)XVDX?rQYQZln9Tp1HhY)~4PP`XQlukK5z@eXNb`A|Xa^ECuV) z0!FNQ>d0FX*WH;%+sI&gIM)SreK4S|H!}9xj;b<}YgZ68Vnupq-8vZhF~*H={Xm;x UCEid7ZUwc?JFx;OPCf(x05QXT0ssI2 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursors/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursors/why3session.xml index c9abf6548..5099c21a1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursors/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursors/why3session.xml @@ -7,27 +7,27 @@ - + - + - - + + - - + + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursors/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_cursors/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2555d16f4c21cc48c3eba4e921f7d88e2d6dce1a GIT binary patch literal 335 zcmV-V0kHlbiwFP!00000|ILs+ZX+=aM*BHMj-bDhM#V1R#>ia2t?&&+CIZIxK$3yv z_A3|LFSc<&fCceB@_~KDFEZ%&RQW(wqq|n< - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f027616803b81229761016adb036c855d2d26715 GIT binary patch literal 750 zcmV(l)~{>4SyEoEzu>sU^@O~t_-VXrc!8^JdmQ%H zFR&VEy8k73Xg8bbYuKhVyO+|(Mq2@HH>>6J*nZo|F7ze7!|67UZS$91f9BR% zHELU#JZrBH%e0@vLSG2og`#<}R-JVpk-5D3K6==}7hElCUQ3T1_IJ)YkPC6S&Lgg` z8@^q@-YRxqKHKxcEa2jR9@WoHstDZL}`bYiD|8M=y0kdzwm|3y@ z;XHV9-aq%?Ici=oYRtT7pQ2%Rp>w=X|FtN2j-P$w2WG|khX?JG^G?W(=OB8)AcA?( zK5gsnBI$V7!RyoX98UX&lbsc7apTn~+wq)EFPKhtUbIi#ySsQg-i7cAMP16nFLNur zKanh)>6J3i8|7zng`=3uFT!5t@&`AUo6Ru|gGx-slh7 z4s5hfwKd&RsVW8{6AH72=91JZL8-q3MdKi~qFT|8J(p6!x@e3Gk%DPaKxT-POmXZu zQeg!tC^Ds`UT2(ENkA}I(2zVvZV{cQ2wWhUpqf!KPklKd9*I)$;G*^v9H*-K1|e2i zP%{X~4PFY2Do|Kkm8x~kLGzk@ND3*ifc)U4hEnzDoAt^!nJQoxl?k8>lYqit4a)x& z5UOTXLzN9$>7^pF4!#qQL(!tNtwDjc99flQs;6oc2M#uL3DSTKwe?6 - + - - - - + + + + - - + + - - + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b15995f509c6bd56db30ea5daf37637d7e6072f1 GIT binary patch literal 653 zcmV;80&@KyiwFP!00000|Ls=GZrd;ryz47^Zcumm!@I(I_wBO zK|9jnak?#F`9!n`E@;!I8#i7;PX(;t3fd;Pj;>R!YPp9Tcd@F)ZH*Q5kS-l=yU?U& z+ts{g`>FGpr5`8|(l~C1dG^~(adBKLPrroNdjj{cJKjlJ*-RI*2GZ6I)I->9HaGAd zK0wO!>2{dIKLhoFF1nU7d&c%k>-~#p31?rN^m3QP^OWisfxBr#j z9s9OP2kiJ)#JC%>v2Kxw!{xTxhdj;xr6v$--@^lo4Wd-6@Dk##wkZN;J$CW>>AVZoKd`sCcK$^qv;Oy9Z zpNGzWmy$1|;TNBtw|rhYXnf9Rb}IRt_vmsyvs20ENx@=1vs20ENx@=1v)7u>&~$Eq zZcX{XpVeh8kpKMKc0Uu&9+d@m{kJfthe!X(oaeQACUc*($NZV*&$bPox>NPG{Qt@F z7lqL>AnFP#V^K;QjWsbyQB{WV3e-FPxhg0s!;D5IM5QYZpwa4*SH=j=y!9Ex3Qdt4 zZmjk`XwPEMfrPiH1u$bvn?a(G6}LhJD-}inuPAs!WGYEg1n*@A$s%emtpID37NoV2 zstl!7K2$aeu2=@Cf)f)=Xv-pMUr7~o3{1r`HyV)$GpH=A(L&{pkYVt;oQei6WEshm n&^%<2E-=^jS+mw2G(=&&#?o34SjGrc?k)HM5b|c>J`ex^nqE4+ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_size/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_size/why3session.xml index c7d61053b..7c56e10d0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_size/why3session.xml @@ -3,54 +3,43 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_size/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__field_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b6cf15bad449db64e500a6b182093ef77bb9dc35 GIT binary patch literal 735 zcmV<50wDb#iwFP!00000|Ls{lZ`&{s-T5oJ6(~@EJc?gKhAu$^1f2@6#F0EY0vyGV zS%O+qF=6kY(tRe0;}yJki|+ruzo3>*(v|7TX$|4)Y@6_jXNqj*Ary zxBX=cR$%Pzwt^X5FS~ocy22%~eDMv>`hKIhz_S^TynJDI<6Bx{OVN8w=pV0bUfg-V zPD}3-b~tbG+WTD7BKf#(S2wNq%a#&FT9qHA#cH{zy8*GnIdwaB8E=}7?mGX_>*_^M z!`uq#89(po-r}N8z9}spAH1f@o)mmi4SLnYM!fN;CeC~QQ?TC}Y}p4JHZdQMYA^(Q zTBHBR8m;;@DmP1YJgUhd*i&jvsdaLxg>Mw45M0xs%}ibHPl%r3kk);gt3J)EO|~B< zf?~hSHxaCcg?C7IIt1+_xYHqMAHkgtLHh{q^f$D3_Jc%AY7#Zwqa!S+nRiz|`GdZE z*UUCuyqMEoy+$0_Y!0zq9Kmd+QfMlLex=Q@ZhVW)obVHV#_nU?bTboewC^0_w@&iX z2K3CF@6T1lUTp>bWGmu?jD8#USB+&9#J5??D2Q(}ms2MG>~(zFI;X93+B#2&_Hj-T zSlxf}Kd%J7oaoz1sVjD-cIbnZhpJ@kMai=x;E`4*&;Do`X_@jg1I8!?AuM6$JP2zz z7YcI)Ap;MXa`+&=3eGB0kraX<64`=Olr&E&IfDk2#)8@rM4%IZtT<{Jq|i_)ZXIb< zra~QL0RfYs07B3z24|8Hpn{4?Nk9syNfeM|qOjCCrX-OE2NiIoO(e)!8VuGHP{ojQ z9VIuUMR~3wI4d0|sY&Y?bu1vo$jM4j;puX6)=FF2OE8*LhM;mPAk9LMvI - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_checksum/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_checksum/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..795cf7e0f686402b0bc5eb471785bc4978414858 GIT binary patch literal 389 zcmV;00eb!)iwFP!00000|J9VeZtE}%g?B$iA3>CC{R|zl6gNP}i>w4KQms+PF=V+& z-@a~>4h=4P6CefJg^-{_isvJwvL=2RXxl~XhG)th4TWOa)89M`-BCZuVfhv+*^cD} zr$-v4B4R?sL(Hk)BhEY`G8KBrv_(vv^o()N(=H=EQ$Gvhn1wg$o*tx7miSTNi!yOH z6xkO%R+<*!H1=IN)SuqEjrE#tX}O`}!}h)1i>#e%hh>z3Whftp;-kc;Y2JP^2=`~2 z`v;>Fe^-SC*P?aI-{@oREtMT+885Q^AC{*eV59G@#}%#$R-b@{Uq^QJV_(2Bsk58= z?%(FCIj_p9Tr}&7q9*6TCZ*Unjfz&ANFpk4p;Qs;@H4$h}&S%t(AVj^(M83#qdIA<4;u4?Ur6;ReNySfFoj$BGwx52U{zlcnw jTdPv?QG - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_destination_port/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_destination_port/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..df44ea86f2ab8edf0c1acc23f18aa72f3df99d80 GIT binary patch literal 389 zcmV;00eb!)iwFP!00000|J9ViYQr!LhVOZbJ%Z)Lc6`{Om$AZ*qgSC=$`(kI;JBlG z`?>3SSQ#UQ4z`Q2;n#2dpRm)K_%P763)l^B6gwIcg|w&VxD$GyewNerxD>LT(gEjJ znxr6NLd4S=+kTI@;|Y-|(MzN)V%tg27>)IIzAmg+Px~;(l{)W3@k%B2V$91H&E)v0jDvhFG1mH zVaRV-UF5teG`JPD&-%@|_MXy+QKqY6FJyWN1UCBNc6{Ncfb|7n__u^tfBt3U$t`a3 zw|}Fb=Dtd+bk*#OHaNxE!z=5ZGF}0M#y7g9)>-BK9Xy)C*HYOKoLB%~S*po7RT{39 z7!AJ8BDG9ZiPcu}9Y!=*L&mV^5=iR?%9?Bz>7p#Xt2`65 - + - - - - + + + + - + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - - - + - - - + + - - + + - + - - - - - + + - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + - - + + + + + - + - - + + - - - - + - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + + - + - - + + - + + + + - - - - - + + - + - - + + + - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7a8404e6d652b79095fb130fc131d68b98fe18a0 GIT binary patch literal 3257 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_first/why3session.xml index 6ecf6285a..1ac6c5143 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9574470871068f5cf588d7578cc5a95c14a0dad4 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(Ix{=KT~r<6H`-jb0cFP?@d02em-Vqo3?B* ZF!c8{G7C2NVxZtB$Z*#@qdF330sv(=7b5@w literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_last/why3session.xml index f4bb50293..7d0c3520e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b2f46066c2d556be74452b74e7a7b437d48444d2 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(ZyLr>Cibr5qX8CGt!ycr2J0RTw@7N`IK literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract/why3session.xml index b820e5a96..48ffb9b37 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..753494ba6508f32bf5c5c101f4903af14051cae6 GIT binary patch literal 703 zcmV;w0zmyAiwFP!00000|LvDgYuqpp#qa(Uz4cHEGx{$`4(_2e5OOMeH6zU^F>H3j zu9G(X^c`<#+OSDWplQ?4i!IFa%zHn{wtPZ|HB~qwzFyJ!Sch?SMVpaU6RlgLkDE)O z_q5!~&2T>4qeWtx=w5Xv=NHrUusx#-=}x|NJ0Kpf=qGgQit752F6D?(RI-Ttb zKB24cP7WWmQZ4p>-zkl&VMD7^q4PEWU?Tkk-lwOneL!zD$_~qLi=_tJ-yt*noXqfd zX7%7uyJ0xqX^!WzM@Mo_-0wGE zn7zik;W1qXH^}E{Lv>oNbrr&rn!Z8H1cyix8S`3vw}|8$G5vz4%N@y3e@E?OI1b-pne ziLroxg&)v$)fYx;Og?6dAnbhcfwOOhAe5vk=txX8wG@_=nOg}+6ueZ19DTK-BGVa@ z37WW+y|ii@LCR>8(ejalt17ZxYQQ$M3ZXgY*hI9=_!h}xFbGaXu1nZFMTo7~EKpDc zyeaBis})1D$ak4)Xhpf^77SBK8pNF0G7 - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6f17a0454f4ea18a4bfbf09747b27f9d14ed0f89 GIT binary patch literal 703 zcmV;w0zmyAiwFP!00000|LvDgYuqpp#qatQz4cHEqtPErkR04YX&~fO_G)INQDWHa zhFvFZ`sq8~(6nKbmO#^{pu`5xJPTL(nR;FjhtUh*TeRVF2tOCt9C$jyrQ@ChNjo!O|4>Mu_e(`R;Sb1 zZowyX_1($ggI0>O{oi*=<7(K@>Qv}_U4Jl<{sHgP)2@9$Z#Bve%W#XOMAzRTGyI&) z@OQd;aH!R6Jl<)J=Vgyh+P@zumgrwprn?RnaJT-#zNoN=52RIpFDmChs+1 z7hm9B;obC@E~6jh^R%HdE$nUsJp-=xF<|i*U^V*<+9hqL|6HGjYyYgaaR0z7V;}90 zugpEL`(Ka#_M_R~e&}?jQLJ@Lm6Oo6jKTmdHy&PZ*o?4FN-J zSSX-)|H^)_-Y|Nu9WX)kg2a{^aS^IXpo?Ht1;#OQbrr3P=v%~`O0eEmz>0xGRS}vD zq2$Oegi1C-0;-X1Oty2rw8$!QCZcN;-VA)I_x+F&k}sATv@MKluU{tE1pcjL17OSB>9>pBtl9&)69n1$4tHp$x0G0 z%q3}EASU+MWJV5#sU!)mr6|dfaCEUy6|opJLC&+v8qZzHnIZ#8%(aOFnfH-TtR18o lf<=Q}j({%MQku3xoC*LcLC!fL%$>2$d<8VlHmnd2001hXTnzvK literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract__3/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract__3/why3session.xml index 4f8f8ddcf..102ffa56c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract__3/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract__3/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract__3/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__extract__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6f17a0454f4ea18a4bfbf09747b27f9d14ed0f89 GIT binary patch literal 703 zcmV;w0zmyAiwFP!00000|LvDgYuqpp#qatQz4cHEqtPErkR04YX&~fO_G)INQDWHa zhFvFZ`sq8~(6nKbmO#^{pu`5xJPTL(nR;FjhtUh*TeRVF2tOCt9C$jyrQ@ChNjo!O|4>Mu_e(`R;Sb1 zZowyX_1($ggI0>O{oi*=<7(K@>Qv}_U4Jl<{sHgP)2@9$Z#Bve%W#XOMAzRTGyI&) z@OQd;aH!R6Jl<)J=Vgyh+P@zumgrwprn?RnaJT-#zNoN=52RIpFDmChs+1 z7hm9B;obC@E~6jh^R%HdE$nUsJp-=xF<|i*U^V*<+9hqL|6HGjYyYgaaR0z7V;}90 zugpEL`(Ka#_M_R~e&}?jQLJ@Lm6Oo6jKTmdHy&PZ*o?4FN-J zSSX-)|H^)_-Y|Nu9WX)kg2a{^aS^IXpo?Ht1;#OQbrr3P=v%~`O0eEmz>0xGRS}vD zq2$Oegi1C-0;-X1Oty2rw8$!QCZcN;-VA)I_x+F&k}sATv@MKluU{tE1pcjL17OSB>9>pBtl9&)69n1$4tHp$x0G0 z%q3}EASU+MWJV5#sU!)mr6|dfaCEUy6|opJLC&+v8qZzHnIZ#8%(aOFnfH-TtR18o lf<=Q}j({%MQku3xoC*LcLC!fL%$>2$d<8VlHmnd2001hXTnzvK literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__offset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__offset/why3session.xml index 3c65a598c..23db76a3c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__offset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__offset/why3session.xml @@ -7,24 +7,16 @@ - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..43eef99bf909d433e92c53a515a0b2aa04d43123 GIT binary patch literal 238 zcmVNriG ziamx|Z{ccwfz3AQPPp7w|L^2N$8)~6^E=L3pik|D^rlN^#`qz4=CJwo=0&RT&{F*^ z&&%=lQ9u5nz>% literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_length/why3session.xml index 5d01ec02c..5241898c4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_length/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cd4c7ff38b6536a7fe7bdfc424ab94eba5aec79d GIT binary patch literal 386 zcmV-|0e$`-iwFP!00000|J9VuY9lcagzxhd`w03OX{19AzJv|rxcJ(Xq?R)<9uFEh zIB&m`wR2b#j13MX7a>7)sq1T@`h@g0V%taR$5)gdV@0e7{3(0JBZire+xMm6?Nr}r ze!;{IkU&JowdCPIv`-UJLdB+FOO$&a62*O)cZKK`!=8zz!f7p@vEhos@x$PPP27!@ z50y?%^CFz5p|3~(`MukypYVX?hCUsS|JuDN+O=^KPdp|b>qnr0$4!0tFP?n9GTJAE z&eGi#mAn_LQ~g?J51ZTStL)4m6Kw?N?C9>nzd67e2M5;09Tn8J2mtfo3*!kANw@I6nGvXrBjq8F~ gth^Rl#;jTuqOw*Xb245lvxwT}FMlJ}h*Smu0LKi${Qv*} literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload/why3session.xml new file mode 100644 index 000000000..30a5ac9b4 --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload/why3session.xml @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ad64cdae520e674dbd2e97f390553dd187128712 GIT binary patch literal 1698 zcmV;T23`3diwFP!00000|Lt2#Z`(K!zUx=)c^3sZd=uClaw#@Iu)QpN6^5@?faAEb zTr~UZcl5CHvfHF}vUbWGY>66?GsExuhN9x`5<~a(0^`jBubNOdi!azVxaj(3{HI+f ze2?>08V~!ADqStRn|k#Lm#OM5{>C%(*Vpqpea1G0y2gn0=CjT7uXVkS%es!(;l~!Q z>N;F6y7aZHYroDpwPd$i&YP~zO`6Bmj8Vg4J)hUh>xK;5VbITbHiO~l52$ z?|pYc4tLjeo0d=XckrtY>vnbBlCK?hY3p-rR-s+t$J9MH__4p$!{~WX0X`hPi;O0u znR2`8+I8sGEzavNIB#N~`=GWHHq9C}e)xOacyh48XU;)x+7F&QGV^HmX7K)iS%UvRP0t0)9JhE8FMyZFo{#ge z%XdoKjE~pH!#^-KU+~=w0t6f2{Bdt&w5zAf9w^Nsrmr)20ocHyar0WRftRCKkE4g| z5;OTC>^de;K@p>Gpz3ZUV+_NmUpMovS=8OlGOehx-gNY}>?ko)745xQr%{&k+Nl8}vwltj%-DTV zv}Y>XevXcc#*3nzw4zm8h|b&u&5Lal3{!mhlURKf3E>-+xF;f0>#dCN(~*%o5y?Ff zjnZ-=N>X+|pRObO*O7cn(gW#8b-zZ<+{OI{I0^d0hTZq*KegV{|8&@YCm^{eph*u- zg#P8x=ty6G+*<*RN?hvy5hy^Z|GzH%U$OpA0x$$UK$vq*J&CL_mr0U*#hZ*qcy~6Zkq_Y{o4(5|E zj86}fLeTg7i*MF6cyz0PC{zH!T z?^RPsD>`{$cU6%0=P-cAv%dL+LJ+${5GND@-yH%!$`B?Ikb_YDL23|8u)B1MO!f-Z zNN&2h2ucx@BMYGj$`eAUkQP@hEU1y7ZM^X`1dLgM_Oj~M4=*P<*YjxB^=Vlh!wP6-L#F_j(Y>={oo zgYqE;pBb6{27hr?*(A7BLNUh#1BFS^VK#~hWn&V(6{~_{GDaAO zE_~lrr8QUDaBr=*2Dwcca+F%AY$Ww($w)lSC?p<@%T6-m$Y+k0A~D9+n{1n+<@iCDG$~P(OdC~MO2=q6SB~NI>aQS)`?(Xl?85kE6Tc!2uQOV$Tg>J z_K8VyGg0p#`7olatVWjzP>$@ZHJ-5`v`@e@O;gUph=eNeAq0alXHF4Xx{gW);}hr3 z4cP)+CEJ%@@WF7_rOI8@e35NMLrpa~(G8hR_rz07pC^`VEB^o+6&H0{}` s1X{U1UtBz~FUg%!fyhYoqohSN5-7vQO3nl%=&fY+AL9aYl$KKf06~jM#Q*>R literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload__2/why3session.xml new file mode 100644 index 000000000..a5c1a71bb --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload__2/why3session.xml @@ -0,0 +1,160 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_payload__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..bdb4d62849d8e0e5a0e85abccb1f8095883de58d GIT binary patch literal 3124 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_source_port/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_source_port/why3session.xml index b35705253..a581e3e36 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_source_port/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_source_port/why3session.xml @@ -3,39 +3,28 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - - - - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_source_port/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__get_source_port/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..292c782395f2b251fa7beffed5e3b423432e99e4 GIT binary patch literal 388 zcmV-~0ek)*iwFP!00000|J9UDYvV8whVT9r{RxuwVd>CAE@cZnF1ZdP&8TZ|Y$MAh z{r6Rx^w6+$6G)*8LP+q=$NLOYc|>|0ao0!a#}~{!js;`c9mnTNg{^Dl>PqkP1BtQC4XUf^+tVGS64p{x{BZ7IND@+zze0Dckmpt^6P1ZhrDpsPnqG zzwiEezMA%?Y|2#=Z@i&|!FD>bLv$VcE+{8hi53;Q_D=pX4QpW~`Q(XMh1QZY)Ln_HQacl=(ndXo1CO1LT6Mkf`|^~bn^yR?ap&(1^@sX&%Gu9 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize/why3session.xml index 591fd486a..5581ab0a1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize/why3session.xml @@ -3,183 +3,168 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - - - + + - + - - - - - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f924efc4a3558a57d2fee0c9e2ca8f0af3456e06 GIT binary patch literal 1954 zcmV;T2VM9diwFP!00000|Ls~$Z`()`z4KS>ZGjyO&{h2nj2H05*Z{$v7P=DEUkS0Y z?2+go*i1r~Zn4>aptkK6?e)!&blt_an|+~qN3;Indzi?HnjrmWewXQrri*-kS`Rz!gRO>FH~eth#l%eHRsF9g zcy-m}>)ZZYyZB7ExuJQEZA&%7c3!4mSI2PIP5W-v_TO&vqHV*sp8wtU^R~Uc>1KVN zw_j*_m-*v-b9Bq(xub5C#O$UI6mD*&ZT|DSDE>IRn@-p5{hKZ*_S`-7wU>A^Tl914 zX59M5NOm9!&p|pAQ8)zB{yh%*WwbM~_uX~N)B7a&tlP}zpES+0PyOc!M)6X>U%g@E z`w^#Kr_euWN{gN$MNn2bX_UR(Li)18wimw3v@f4Q`3>XSk7#VF?a2v$7)Wqpl-|VR zgL7=>H2ah%_TvhbQAFD%H6rvYmK~0Mqkquv6B{AA=q`WEmqT`q>?8FzZDpqoUC+@e zf1TLBAd4`NMm%B-GlKrQpg#iSKT_%D_Xv$V`~vZhOuPvuo=yE?0%FC9UvdJwIN_Kl zNm;VH!HOTre?#Q&KhjYP=d6XTagS7=H`NyvxO=>q!VM}$($ALkKQ>5r4-k!%pEc!6 zb|=j0$n<$LT{*U3y)z!H8QDH-wlC=VCNX(&EbR9|HA6iv%FmnW{^Q1e5>5aS@b%5jip?#HyL8*O ziF*1pr|adI`uw$Tm%6D9xyL5p&^GQxT(c36t>B@pgu7Dme4WrrsK>XrPHtUlwZ+f0 zSbhBzm_Kffu6f;21y_3-1-_b7;IFcZzt9%)azkif)og2Z0;WoUYB$r4*9ki6jmmwv zsCHeHyDs9ci;wE0FVsybOmn-qrI_!({EdDeTEOd?8(3-U604$LPM<8+JWcECdR-6~ zv>Z!2SS}W7!38+WO3rT;+U!8 z1h()vM1S?+c(lRYPcU|6`(U14A%fl8_rZ+*H~Qb}`yUK8KztJhcuIpnd3CZPL_Ef9 z9#ev)+u(XR3qSeciw7)c!M~8N9xV3JR|op)P^6F5aYKxUBbZivF@c;x&<g>LI5 zmO(EfHBQ7}l1UkL)+z-9Dix8vMC)=y`WyU9>c*&oQi-fhj!K)5e6raAh!B(n;W$b( zNkNRJWJgho68X<+5)Q~)LqbUo!iI`4m;tTQJ_n~t%n)Ld!8t^mOzm&KmNI0+d0XR> z(jscYK!8Pf5kvx8gH#haZG#2)CgaH!ih)NFiuZ{}u003o{aV@!0-uW&0aPfc5ea+- zUC+F7RwG0XG7Wn0R`KnHoFyM~(rCQ38eB0!1`e|Owe-r}naI;3I1MEsG8#;s5?X*y zg;7d{gWL(bJ6%hVohzt>Q!1Afe6g6wieyT%!iCI1z5!jxWSx?fj-<;$Vm2-p?|jx- z0tbO;G7Gk3#b1j^nAjF1*^q;k6g4DUqo7enMpdNGthxricWOF89SNEjQvFTwDkMyW zZosM>RE^S6^T483hGhtaTMP;lyHd8=KxGJZL)Nkb$7OXXVgojcYmFJPQAbOaA!I?P z!Xr-snT?>lv5rkhShg|lw)pCzX!ndFksW(Ir04=C$je@o8cbwynd0TrY#p~HGb^$B zrjbS46m+t>pmzom`dUKhn^Gt-LCm3(;6O%WLDw=YvX~?)+fp>9M8k!_cb32-Gr}aU zPj(Syqe-grD4{7@dl{sVPzsAS8|^4FR1pN%jH`G_Y!o9+PAkn=O36wMk;{j&l)yZR oWt423mQfov6mE)jCoCkvF3%H8X5MtQ5~-U11GQg&2LM|D0OU}}aR2}S literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize__2/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize__2/why3session.xml index 9d189f038..751d7f820 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize__2/why3session.xml @@ -3,200 +3,185 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - - - - - - - - - + + - - - - + - - - - - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..36f10904173de1ecbdb035b2affcb704b305a868 GIT binary patch literal 2534 zcmVQF0tRQ5-*$c0x>#ElVY`SoN=;NLfyMW$U_`*EhF6V!+K=y!-pjf5$K; zS2p~b+MCAL&Gd(zHFnzCiJiChKePL2FYRO=`_23^U<@`jv+d34vU3=-F(1=yPh@Le zFHU%N+QnFo*=2qgV|sa6#hbhKS3Uo3?_y?y)@^kU(?wd*5OzZa7U7Xjo z`_J+Z=%)BDNfp}l|E z3+r3#-nO|He>XkFoLKwTIF3VP>nL zh6b8No#tpc{GyMv>q+kEgtzq!2rv75eNCxOw2;qE>S*-2si#AROe@G10w z@xff;Fu!)A@}NK&Ee$9+vR^M2wEVI-INDA;Upu+vQ{d?0>0-Z~bg*Bxi2lM2wsZsN z20z$qegIvlI5!H9uHg2AF92_^R@Th9T0^Etz5Rw*5~I~pU$M|*P|cRi@5r@)fdf36(q&w51Ys%S=80b5C> zm*Xpf`K)W%w&e7~>K2LsD&8~_FKh52VwrHkkX76j1{Kq5gH*`+&;m6MDuAMKc>|y-m1sB-ME|`4ua1S1$V1_+d@$*Gb^s3d> zb~K^|M<<(*Z%vnh8F{s|%JbRA+cu6td|P&m8}qwK)7GJx``NsEmWVHRrY258zmwT; ze{=Jze}(>yKFSr(^10}j)r)6%Ii$gz__K2r91%e5Jpshu9YFhfPyqBM0D`>;G>8Me z83$?z2l6!>sHZrPepQpp?xEnQ;Hco}t#C910LnKOAZ24p#}vkt3{|3ehNL#$U`leD zuCHhD8b8+|rW&-M2pg>Tl{%$tEdrOTht{&QR?Kuk%9WioyZ6M9X7B!3+^&Zg=(9pU z`h4^-$Uk@$fb1y&`HKXkYXltjVSs_~Dg@b63i9)(;JdC0-yMQSU|@x<(w(m*>kVDK zw!$flDU2zM`E41~G2pOUTm=CI0R;hPj(~kfS&F|De<}X+E>^BLLYi%mn}i00jW& z4uJOR)vqc`9hW*Tb^LqR@hNT=R`$ieje@fV(RF!w)wBo9Ax4L+Kt_k(!5AIkMrgrj z!RH6YXa8IKQtqYPOSyl7a^I^st4Bio8#mdqd8#%GzI#lW%FVjpR`!<#RL27q973uB zssgH)ifb{SC}1dHC}1dHSOvr57?BTH{kdtjR;XM3hWFu~#qxRR^~a-o8kl{WU3d+DV6Y!g8nmVVj9{lZbhYe@|TAvZnnW2a9Sp_5G%$~>VgsosB{kOA=B&KE&`g2PhrWodBsC0~{XTP+Q$ zW32}kKcp0e8)c?&#@INonF8#<4R`?@2NU37z1h8&`Y-ig>i<2b4Y2dPVSfUwU;Iny zm(nk#zisKmhT4ahi~nRxhW#n9IsqsQC=4hJI57k05CjGounz)OzAh=Z1JGhXvOiD*$ zff+C|Tk$G5MUymKV=A%55YU0dsEEQE^q})gY}ppE!ltO4BqE_qBZ@^Zz?OtVe_hH} zvNFUu?eRoV%up^kVJZ=6oQ=Wh5VMu4tmPg|@S5{T@dFh)Depq|iiBQYy7JUWEW&{L z1m~O;sL>n`EJqfBb&)WY0FKOJUP>N>)hw8ZXiET=#DFE95ke}YHq~4U?t&xSIFoq5 zB9O`e5Ggv)0G2*_3nJl6%!cHxL}W#0bDk9EA;*i-%3z1WD~bi80*1{cojgWFQlcV= z952eMoK=jD!m-Pwh1LXPCp@0W5{9eui&u;X>WLsWVi{u~nWxk%htX#=KaZZRM1{3X zML;v6DbPJbiPteG<3lDKgDtHnrYjm`9F9~ag_7}x;|ElV#pU5PWQY_K w?2N!N2o`k;I&?j%N}!6+b?qfytprCOiNSb)@CKWAU5~o@KNTGx%#DQr017wP?*IS* literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload/why3session.xml index b6813e811..cad95faf8 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload/why3session.xml @@ -3,250 +3,188 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - - - - - - + + - - + + - - - + + - + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..47643119d2cf2e54b6ee0f13ebcf39386d691d33 GIT binary patch literal 3325 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload_private/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload_private/why3session.xml index f394712d8..55fd5035f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload_private/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload_private/why3session.xml @@ -3,427 +3,216 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + - - - + + - - - + + - - - + + - + - - - - + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload_private/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialize_payload_private/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fe3c85ca516dfb83594631edf7fb033e638fb9b8 GIT binary patch literal 3993 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 - + - + - - - - - - + + - - + + - - - - - - + + - + - + - + - + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialized/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__initialized/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4cec2d6b3ee3d36380e80adacaa5360487d848d7 GIT binary patch literal 913 zcmV;C18)2uiwFP!00000|LvH|Zrd;rMfduO?u!5|A(-Ik@(wvXCf$9(57@126V})SXDxcP+h-H!*VbP7wY45Q zyl8M?ty?X-aNSwE2yKfO!OpSmD7szG>(0hH%zcZlyDs^s-`f1S;<0W{1VYZ>|D-X>} zgkIc*yz*tB$#BN8G|jS3pKY@KYO%P%_s{g#r)S+&LknQ{W_}U6=jJ-dwRe~-VoU5L4f14 z@$X2Pk5R|(6#EowT}{7&N_8r=-aD0V%l}s%v+hexJBe*h6!fhgA1*$Wnr8H@ROuKt z+cpnJk}@Cf^Df`JPxRW0rqaAFI z#$|D8v@_Ey_xm1ChIZySv?BmKcdy)5A&oBFt?h&5T?$GYzD?euxa{wmx38ycXm5#{ za7IV7-PLsHeuTe8&tIL$HrqB|ilIGhOS^PTVDk`xizgD;+#~QoZ1%L&BL+WptNxL} zgKYjNgw+nhoR29ij&;G}2P{v{HtyhW={9v%fD=<^MY1UN|CRM1E5xpQ+S4zmk7{{L zRCC_5x+pi)7}^JgHSOgwtvP!L*PK6**Gb|Kz@9!EVCu!0ET-bzSA?)b#+||yCjo}Z zb6LJ(F01KrIqPO`y!eN_nELF$dSXm{0j9`|EFg<6B4f-ITK)bD5Q}_hk}A211>95K$UA&IcYp&5?mE!4!o$a50aU4(v#nUhRcmmPDw2_ zRx;Q0E~<)xRL1F^mAl+K8WICklo5tJupk&JN|J)|%#gm0hKq`WQNe@8LMh}bI>Sht nf^^2g2Szg^5IHTQGCBtrLatGw(=k$zd0NmfQ5f4gzaRhrg?!2j literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__message_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__message_last/why3session.xml index 3c3713462..045e46085 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__message_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__message_last/why3session.xml @@ -2,32 +2,21 @@ - - + + - - - - + + + + - - + + - - - - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__message_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__message_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d90a52285f3f66c6c3d741d4e800cec1edf94da4 GIT binary patch literal 288 zcmV+*0pI=~iwFP!00000|J9K(Zo@DPMR%Q|N02PriiZqYiUtTe6li=MBKV4NmRox*N{&;$z~D@+-nN)46yJ7z?ktf;SqqwA - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__present/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__present/why3session.xml index ddb83a44b..a7aff7982 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__present/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__present/why3session.xml @@ -7,25 +7,17 @@ - + - + - - - - - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__present/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__present/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..988442c50447ac7298c8c357184d3a19a6e71778 GIT binary patch literal 371 zcmV-(0gV11iwFP!00000|Lv5)N&_(vhVT0nK0+qh-6V$|dJ%Ub8yaVVaT;kwPO+vh=Kh*Og|NH!jlf$q8?Bri_^mLqeN;OpWkx za}rx|f5^RQt4acC*eVo28kk6tXCG{7FW{;yYN(fJSl6g4Q?XY@ zn7|sApsi7roJ68PYk(LnSe6(hDrps0H4_Mp71WbR7Ca3xmP^AzTWL&X$|aPV%OJ4y Rwwgq$cmnk+AtD+H008g(uCD+9 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset/why3session.xml index 863256d53..6e7db89bb 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset/why3session.xml @@ -3,96 +3,73 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a382d551a8a2d232fb691d04f94005410bcbfc77 GIT binary patch literal 1169 zcmV;C1aA8uiwFP!00000|Ls~!Z{tP`zUx=?)^As3?o_E_jDa9&xXcH+v) zV$)w=N={Nct9otAd37g1WMxcoI3&N1oKd;3OuJBVWYMAw(yk@gmm6ogSzFB|4RjN7~#_qOPf^7;-gOOA|T-&_( z)--o<)ie=1yl!#XG~xE9OW(St@pn0=w#oB$-O=o3Hd)mI2TgiQ6CA7R(Hym(H)y-R@~D&(k6fV;1Ax za(TbG!sdhj>xJ3{zU|rC20g_|d*Xkpu8{-~=STo~?gW5?G5{u~fY_S?z(;Zb;0H+n z{8<(N1U9?+etIY=SW*z==Pf?_KH$eLYMIt+yiS|NvC~3C&vjJ7n*Il`uiJD@e>XAZ z2CQX-8cN*peBQzn90({lBck{YqQ)#3ffN)>y&k5{UDx~Wss{COa5I*+g#-!-6cRXz z1V&4$-H)ak%!!a7qB-)xaM!MH+ciD8oyrC;YS01Bu?>SE-h~5y0uJQQNl?5p3G!zw zD4wz4(M++21y9x0$GhsbbEyV5AY^Pi^(Is>p8til-Z#(-YkerzI^)4BmuEY9<>DOZ z;e1NF_-M)o$bILvn8%v4poaeHa(7UU4T`ZrJ~jwXgZLHa3-pUb0mP6tU;c&{)0Q#O zl>vIwmbVdye0mt}O$&DO-LR78h925o&WTp<0GvwF#pDJ2H8_0U&B@TeQ}6V_#!>;F zOs)QN8$up=+*16k&MECdX%GJI?Ll>>PT(9$L?N5WWCNpYb95~(Z1X-A^YUynnE-a0 z%_%wx{0saG{9nDkxFTnwT@ONW4Q>zkq|#j2(9GWNfA9d#mH=F zBi*3&=q)lyLZVXrN`w!fa?+5wPDvOAq*qIqIVT}m@hohXz-<(n=NOpMf{`<EF%e#pL`C6XH8tnB^Bw+gw}y42Q-_rz2T?#b z?>x<>xhGfAiu(w&N?=xwLp01VR5qySl2OuuMf#P! + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fbe047ab928ae6321c6e91922941c5c32b3c5816 GIT binary patch literal 1801 zcmV+k2ln_MiwFP!00000|Lt5$Z{s);zUx=aZ4ZqGSbP)M9C9&cfX18_z6!-xMp!#> z%SzDMU%w^UamQ)76IYqVqRi1sm937$0wO*@U{eeZaQC+YT4F z?(jeDeZme_8hTw#}zK`;y@UEQGC7qKFqZtxqoju!GLjAJ20BsuC}D{ZreFDJ(1joekL1O?LxL{ zQ)~iuX%6zkj(_OGdbMb}IyURjt_MaEyT;t4Mcg!UjQ7js^q$PhKX-!OkGqBdw@IR-msk+n|bRFac^L1X(W4xeV z;|2Ya7gTr-hu!p0c&YGG;id1zOJfAU;cEb#mTc3!#n~L(82s(Yx7S@-l0-l1=B7YdZ?pJ*Tlc{Ml6yw7@THSslxE>op5-rzRvaW+ zzDKm!OfE zA&Ei~zc5Ku{XQc*v7Rb4QfQ>m$Ys+=PXLr=C)F1P{{{aA|Cf#b`S!7O!EwQH!SMy- z_)ND0b=|D%<=sPyySVqD62pOnkysx)%QCIkc#}5%X3ui#nVyY?;nm+ai>|q?yT?^p zlcOFxdRz4@MP@!fC^P4L2>R284S<2vt-M++c;*3%% zlv1IT3Wtf}EQP{3w1`4V-<6aKCtWBfoq3OEG70S0qEnO<3Mdp%DBzMPU{?S<{W`tC zx4^f+_tKuyoK65w7ys=)fGF@U@GtPcH29MvtNmTnovmfluxuI@e3wnb{Y}GHnBw{@ z<;3;$r-hr_k_peNMz=U7X%W+{d9mv{P0e7>*Pj;kh&b1OIe7U{d16Gq$y4QDkK}6(6B$XKd1ODW)(!p7-q?d;A7!}x@xp&G+49-WST~phX%j1qqo-M=3;BT1W^SgbfCS@ge2p5VT|@ zWGkjYB@fA_AVL-(!DTD6i9uVQbMFFIF&a;Q*-BDuUNi0wzr>OgaTG z6^mMULqbLkQlg3;Rn(Re1r=GySW3e3=pAb2z3%-0vJ%k=T0aQr;S#_ICNpPVTTgN^ z_fo1#Fmr4XbT5*Xb}nKw!q zous1VreyJChBDL;tT)+au9$;f%2t`6kPQ$XC~rYB1>iJghmTVBXEu5%S81k{56n~I zMoIynENP8i39Gqeq0cS4=@%&^rVN - + - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset_dependent_fields/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__reset_dependent_fields/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5fccf5d9ac52a809c21f5757a572f585a9917008 GIT binary patch literal 8725 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

    n#bV{e3GR?LqT9!P(Fm1~n4{Zn;Z&^yI7 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 YF)ZDt)j7tO`05E8m~%Mn-H3wpKgM*ZG5`Po literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_checksum/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_checksum/why3session.xml index feb34037b..1997ea614 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_checksum/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_checksum/why3session.xml @@ -3,339 +3,284 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - - - + - - - + + - - + + - - - + + - + - - - - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_checksum/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_checksum/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6c3cf1746875f4b17ef281e61f6524bc81cce287 GIT binary patch literal 5194 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 - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_destination_port/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_destination_port/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..76b57e7882b8bea350982ebe429825795e6e1163 GIT binary patch literal 4699 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value/why3session.xml index 5c85bae7b..1db672aea 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value/why3session.xml @@ -3,446 +3,431 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - - - + + - - + + - - - - - - - - - - + - - + + - - - - + - - - - + - - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + + + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..52b3dffe9c9803115f94ec4910b9df4483603527 GIT binary patch literal 8162 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 E4~l+IbpQYW literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_first/why3session.xml index 901d5a4b6..17a800188 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_last/why3session.xml index e1d570f28..8ec05641f 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert/why3session.xml index 7d89ed234..4f4fe76fa 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert/why3session.xml @@ -3,50 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2f7fc0b747e847a899f49d71a49589186b3990ef GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYa1~Tz3;E+y%h8@`U2;$J(wCwPGzslXhupF9NVlF z2lv-kYtzzFHzaK+P3_Adv~M(T-W#;LWr4h3;oU&}u-f4`;Huy{XZ$qYC!FJQn~uvV zEQW93&A8sAvFtGqwZidWGvYCN8}G%hqNg?JFDaq#3k-< z+4m>8&zp3&Df@nVi<{J3;}v-l3%oi}tyA-#9!xbmIX@q@%0-*Uw3#6fJA8+4vDBS+7rqGv%b-!6Zq_N))pVQ*7d-3^I_*@p(7rS1MT`w-! z#p?gu>UJo9aF>6*8`|G|dAEOk(ApRKcy3Gk_-~x~1rM0FXEdixklIU+3MH}hila7^ ztrHNev=H!({2)ccHlvcxWX9@5jL2FF0g^Eb)MzS7)T4y3PH7D`WhUn|+aM7@B^Kaa8Yv({%>vb|II2W`D5P%~k6JiDF#zyO;b(TEKm{Br##B78HWhx1(AZUa(ItP;t zNu@YDNM0f6sD#$eyRn22UO3G0NMQ*(0l

    - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert__2/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - - + + + + - - + + - + - - - - + - - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert__3/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__insert__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f87aa9ab6d79450f4fbb8def17b7c4d3e5bf54b6 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYui8&z3W%>UJ5h&ISbA~J(wCwPDNKS`;`bB+sGRS z_t$r2)6!BmByA{7?aQ#N-ssJ|H>_4=!EwLhyCL+$YRBWitHSG?`O|oxc+SghIxeTM z7`}lw<9d_EvgbUE+rmq(;jqM--Sar|z5_1neoPyVT)6L#$RD;2X;XN1R>>y{N8a(W z?@!h~Z_?eS?ECF4Z&Gv3SAha7`04~(C+0srm^eF}pO0GQqRnI4%s37^e#dXQ)T~3J z0ZqU_yiBW`a{DCi^O5WcwRiGZO(#EoS5PN9eEuk2=Zi(pwrF-W>0{L5V%EQJ*8OsN z(fi@%2pa-a$g=mlaGRXCQK+IP8 z3KETx!A3=-fxub{A_uRO5}F87!dyYJQCd4MwTebkWpY7igASZA&T2f+sYd5uq}3sd zAi*)S1j>{dlg^wxR*-J8ukERbOsK(mVoHuY8lzo|8li$rqcAen{-Y0MkW6$rN3DPr zDFabekZppJz%o+p%NRCfpmrZCb - + - - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__offset/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_field_value__offset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ab4e6acfe94a4852d27e5e2b03cdec5d99022b45 GIT binary patch literal 204 zcmV;-05ks|iwFP!00000|CNqAZo@DTM0=hh7YM+QNbVLc(gaE4D!njTE@J@}V@OH> z-#)Sp*NK~*Dc(Hn9y=ki?g5=nPV2c}4mhd7 z*!mgmQ@7=c>8s#b=$e=P=BCHofBRncx1aC%nBSD_Lr4^@5*O}LDK4uGk|jBCwNLIX zn3|EZhC;#ljs(tobU`JhnAla>Ap1Wk@}Pw%#2VAUZUA?6NLkdgwU%{*y!i#zrF5`{ G0RRA?Gh!tG literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_length/why3session.xml index 71eee1662..4c0ff92b0 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_length/why3session.xml @@ -3,318 +3,271 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - + + - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2b716d2352761ff831f68bfc9cba6b987b66446d GIT binary patch literal 4971 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 - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - - - - + + - - - + + - - + + - - - + + - - + + - + - - + + - - - + + - - - + + - - + + - + - + - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - + + - - + + - - - - - - - - - - - - - + - - - - - + + - + - - + + - + - + - - - + + + + + - - + + - + - + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..756a8e5d8885c134826a0062d1fa8fa98080b5dc GIT binary patch literal 5510 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_first/why3session.xml index fdc0090a8..2056c1f4e 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_last/why3session.xml index bc5993408..46576ceb5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload_empty/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload_empty/why3session.xml index 0f63f3617..79a74fe34 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload_empty/why3session.xml @@ -3,291 +3,244 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_payload_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0c170a13d0f623f0d7bb6deb54dec2fb59354c45 GIT binary patch literal 4507 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_source_port/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_source_port/why3session.xml index 0cd0f3ae4..5981404e4 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_source_port/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_source_port/why3session.xml @@ -3,276 +3,245 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_source_port/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__set_source_port/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..bcfda15459f0954c7bf1a1d28a527f2b9f361abd GIT binary patch literal 4410 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 Ay8r+H literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__structural_valid_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__structural_valid_message/why3session.xml deleted file mode 100644 index eaeca43f2..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__structural_valid_message/why3session.xml +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__successor/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__successor/why3session.xml deleted file mode 100644 index 51169f813..000000000 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__successor/why3session.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__sufficient_buffer_length/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__sufficient_buffer_length/why3session.xml index f30f9254a..ac6aa6ac6 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__sufficient_buffer_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__sufficient_buffer_length/why3session.xml @@ -3,52 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - - - - - - - - + + - - + + - - + + - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__sufficient_buffer_length/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__sufficient_buffer_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a08c504ddfc0e25a80b8ee18685983bcb6bdf4d1 GIT binary patch literal 704 zcmV;x0zds9iwFP!00000|Ls>zZ`&{oz57?}ykda9WgT|trC5O;2VVu6qFMuvrg3;HT7-`tK_^Mb{C7;JyiDvpBYap%tKs|)b zYIO_W;RmGbB;74@7zn+G0RH|t#P-JfP3XN3kl=EFmG`lsHuyk2b%DC%v;Pfw-%@v( z>pcI;{~i0bNn7mrCd0TH@;UH}hB#bOdZo2|;8M* z9p`;&Fn9bDIhf2=?rdt@a&FwmU3>DbZoSXZBl)>&&JU|Duk0rk@Izy)4DwGqY9Ae` zI+lO0%U`^FznMCiA7}6K82C4Q`Qc38N&A=QFF%|CJd;=)!F*q5@CzgsZx(!SuNH+= znj{)svf4!@gOeOJGAofd*;0JtzibhmbWylkhY+}m&VXY|qjj2durg#2D^S;@0IWh` zG!lyjgGPtWMy_n&86;i@s*Q^ngtRIe1~m~{47nkdv!w~jW{@m$7&VU;BA1bjHB6Bc ztd1xtL~ACHDoS#O>N-bjNd$p)Fg2^KwWSVq8FdEf!j)xEx$ilUP_7onSzbm`K}$&j mSq7OxGONHuEl~)8rc_#zRSMAwZ7pMSp8f(B+ZPs}69534>`Siz literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__take_buffer/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__take_buffer/why3session.xml index 4b1ae7b8b..177e756d3 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__take_buffer/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__take_buffer/why3session.xml @@ -3,130 +3,103 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__take_buffer/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__take_buffer/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c9f317dfe81540b45c131822d02670e1a8d1a43e GIT binary patch literal 1419 zcmV;61$6o!iwFP!00000|Lt5$j~Y1;zWZ0~ZLfYm4mofcZKP=Tvf^r$%XWg68CYnd z%)j4i9tlZil7a4>0J1cq5tPgI`o6BV&2(?!%~ZqRt4;Zf-l^@ow~!wn;C_a2_V5u_ zGkEAA##LGVe*e!@P4!g59n9Bd|Jo0EZk+f$P)x;??_|Fl_GW6Q;;z4%DZjg8<$l>c z#`OnS7S_?n@B!8_ZE7v6FNPe{o$7%&+l3Q6c+#dfQ=v%NdO4qUvChgouSqMc3dRVT zzS+O7>ikoTo4kxMLkI6ya33Qs9=h_Wi}Aj!*YLi?IjlRf=V08inw^5}Yue1_-RvQD zkIS--F+Fy4S$3-!XY2T|na|^LF(b{ZsgOH|PSvv?A3wr;Q+h2Y`h%O*da+tl*xsEw zbXO8n-j_(X=mT+{21>??f=MO1&EYUz+q{q}exypAs_S4-I8t(QWcQZ%ZC$#v^D_A! z6Qu1a9K3_W=>6cY(fvh=dzJJi;cR5+=kqS+$%&bS$zh!?iU|R{sJy{aBDbD z-9Famfkmh-5!n%ZlG`8&GXnMOH0i(vR1{M7a7pgJ`#g zSGhIp_AMK(FCN#o0qch9t7`ZzwUszv(+p>v#$K%}XofM1GngKB2!P$CkwYVgMh=Y}zU>`G zP+}XkG-_$oa#_?eR`)PmN27;E4~-sfh8~7B4y|Kol+Y;Q#wcM>tI&FcMhJ}%E|m}t z`;$LB-?H0)*e*0aFKDOcSnekFGaKj|=x+@4!W zbOtFI!I-auGEB>OvFR^VqIx|4w%4u7qvJkb{qNQv9Qc|1^l0Ivn;e}`9%yWTM0qld zcy_;^Vl0C+L8}s~323>}Tw7Bxd#h8~+a$Go3 zH6$9VI0@O83Hh27fUqXX%B>Y#7gW`u%TlHs1PM9jQ?bsF9m*){wK0aPq8$iVN_NVV zkY_0sWhH1uf4UY+^EhL)6cj9xO+Q^=u3{kP(Rd0yip;b2L8B-ldu4eaalv1vD$8I3 z&)Ej;6Kcn;5{_fA8Byib8zlq_psOf}Q@MoVD>>?=LQQ!`haOWeC10qkB+9tNU??F1 z6Uk8IyqD-8X_5NW2=ziKZiLc02;`bhIn6Jva|Mgyg(^(;h!B=lYm+w$A*jH8u2~r>v5*2cN(I|j zpKvT_7d*KPPHN+k3LcEgwzt+x@~oHgOk|;a&D=`w6!5) literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_context/why3session.xml new file mode 100644 index 000000000..e0c70f80f --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_context/why3session.xml @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..01ab47e25aa4a2ed9f5298536e9e0d9a24a6c91a GIT binary patch literal 3135 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_structure/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_structure/why3session.xml new file mode 100644 index 000000000..808041b2b --- /dev/null +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_structure/why3session.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_structure/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__to_structure/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e84f3e5287058627d095fe77712e85b1ca5b3c0f GIT binary patch literal 1259 zcmV@PI{cJ&{U+zK z;)kz~CLWhmLx7E&M#sGAMGsD`hCV;8SYZ}+^y~}>AS>-*#cwDZiaC6i^0dWsQJwrCiH+@xWd_{>6sIZ&Lpoa(>$hm zKg51TlXZ(#8`9{Z^`j&2zi9NZYP&_-oE!)!#rl^5VLf1XG!!3_dh$56Hb6MetJ`7b z{f+J@aaA$EC2HW$k+2Hg=gq~7^enJh8=%@;R-z0y(7fKhzVWBK&C}=2X_>Iu8J`n)Fw(ji} zLTGD%SH$9iC2V71_hSK2!x$X;^C%q8UErB`tW)kCiJvOQDe;qM&Z~c;D_5$_nJU9i zl^NJJ{)9ra_x4K!d3Yo!Y$$9fZ1|1XQ0-#4Y!}Pa_79k+ZP!y?(`CGc@gBy!*Vhgh zJa<=5@!^s|HbDnogStF;zz+bSYLII{$Sa@awwd;h2r*QblZcQ{AY!K|5Tz(RqbR|d zs&pl2?3bm(kGM5whhNUN8gOfB)L;&zVMmG#Pj7LN8*E#Ac!lot5t~j^jE~K{aO_1K zgQr3E%9BnZ*{?;i>cm$NfGjceEAumpImwhn4I~)V)Eqch{><< z4s%kNRhad5nKe1{3xmno-yc<#cNPqn%qF9<*NPd-66ZoXFOtpd5BM8wrLAM=vH)Xk zG$?}MfZ2giQkaw@S+R;)W=v$HX-df2Wq^zvvLfOGK zcnO{(8HoybHh?@zt~mz{S<@UYf$$1>5}u4?<-vK$6H`_ilcnQ9$>1OcAFcOhFj7@E zG=&oq9M>sW&Yg}@3&tc^O$#FkBCL>b`;eC+8YidRe z#&NH+Macq_A?d*dwxWg*fJgGRGUx+CAzWZWdF^OMMMkbNmiB}|J-I;{h17I4f_5SU z_bCl7XI0Effz&)&9iuYZ8J9Inplzl-@WGn^6($}%M3yOvG>IgSlCM0|i~~(<2P<9) z1`vI)kQvhfC6_Uik@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid/why3session.xml index 18a30d5bf..6df9aaa48 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid/why3session.xml @@ -7,37 +7,33 @@ - + - - - - - - + + - - + + - + - + - + - - + + - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..408dcca67b22dc1a159a3b1f488e04f88c420d4c GIT binary patch literal 597 zcmV-b0;>HViwFP!00000|LvGdYuqpp$M60Wz4xN$NQU;XhlB=7PsLX;8jVtevsr9y zNWOjLY+h~CHfc8PLXE*5@L%)%A%qYUh7fk|F%Op^Y||!$gauDWJPRTBJfuL|aXKGE z7;q{fY(`F<{D`MqaAdk&{|hg4zAk)Om+l-*RXA;izU!z&_%1@~C#nJWo@*zLPcU7r@vNuNuP<=yab4y=_<7ti9^)|a&YWM5Xyvu5 z$HWbvZOT=czTk!%d}jH%A8&{BDieCiXl8!C^DH~rspG!^ll)(4DswC3&BAKU!TPy7 zH_B@D4;Q`b48H9&$<@oIeNE!`1@EnO@~(I0X!XJ&Kf>i}B&v^UuN8^=bkzYed7rO3 zdUYxn78e%(J&UymQyI5Zwj&PV0*5}`2EN}mmko4*_Q0U6hrEfa!-ds_)q`fWoP1ia zT(CSeEc^14O?36U6TuzLt1>^!rn}JnhjgzF;(|y1c*C=|L3hx(=a>25t`YWlJ@l~9 zu4z>A%9w=UOjc+jRFg=VB%GDPn>X@{b(5}rg)KrBB*BvQ z*40q4rt7Q7G=NE)Hd6#`(2*vJ(J5n@Z363T71@TtwUDxxzDgKfZnL!DROFVVx1x%m jVU!p}^geoaMkvc7QljL5l~5U~$TeR99K5RlPZj_Ge6c8v literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_context/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_context/why3session.xml index c960ba47a..81f60d0f1 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_context/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_context/why3session.xml @@ -7,228 +7,220 @@ - + - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_context/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c99d6b1210147319ff7c5e96835e3a2d7fb2cff3 GIT binary patch literal 4528 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 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_next/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_next/why3session.xml index 9e3024625..0826cee8d 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_next/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_next/why3session.xml @@ -7,22 +7,14 @@ - + - + - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_next/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_next/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e5bdbbc1990175a7326d2b23b4439353b5f3b083 GIT binary patch literal 317 zcmV-D0mA+tiwFP!00000|J9K@Zo@DTM0=egN8neM3KwaD7;qW5U5v<;BS4k~k}~Yu zM;{wO0v9Qq!YmdGVs>Wvn6_}~yhYvm4g96Up>fo7CxixFny&E?2F4rO$V)qwJ6bsz z-4$ni=+lMbCwk7X#tCiXsSoVgag4_>Pu`+7Snt%*HS-xK(vbr92<(X9LAM&}_DnSR zp2#C%A8;V58*V+hA&k!SBZesUZIc#7#Gcb1E#0w8d`@(AjlZ1aPVR)Wuj8gMg~6pE zpr!el4-Ij4f%+ss%xqe@h4tj%jF ztXHKI<%@h*8RrEwBr7GIuM4Y9UanXbMwbp1cod0Du&BI1T?t)rZFF9hRuyb>;Z<&> PpPjw{h$9B@;sgKygAtIE literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_value/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_value/why3session.xml index 72e9e7d83..e8ba6c48c 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_value/why3session.xml @@ -7,41 +7,33 @@ - + - - - - - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_value/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__valid_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..79e24fbed32240baf58d143922e1e619c3fcf217 GIT binary patch literal 506 zcmVfc&zam zha<mYovb3^Rk9{ z6q_y5%ZU3v$9{aqxyP}t_wdVnWZdAe@H#yW9q*_55|vG(`-Z46x zi*wbhtar0qw>j^n{TEBy_kI2Jt~Y}-(*M=F|7sRIBlq8b8(+=cXRvtlx9e7WrXx?n zXsNVtMC1b?B-BBnH%5dEALK*m04!ugPZlg`X(1&x2_*`KAoU3(IvaBGt{qvY1TGg{ z7<}=F;1z|`K&lf~TlU2iGVd56pHi$yU+(5e1tVjm%MlcCw0!r;NXA1@kW;}sR z=aF;pp{>Ed#VByad$z)<#wH}+K(=$z_>>$%4xp65(3VK-IXE;j6>1>pk}95+gF?hb wvjf)%=D - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - + - + - - - - - + + - - + + - - + + - - - + + - + - - + + - - + + - - + + - - + + - - - - - - - - - - - + - - - - - + + - - + + - - + + - - + + - + - - - - - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - - - - - - - - - + - - + + + + + - - + + - - + + - - + + - + - - - - - - - - + + - - - - - - - - - - + - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__verify/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__verify/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9a674deea9e8a7d4d6fb532780d562075c893c59 GIT binary patch literal 7859 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ιYo0!kJ2dEgP zAGWE;iPPs2PKjYOVZm_d0)HHOtkC`3F8 zIY6}vt{fU?Hj0G(v)dKsoPvXH?f(?4HyPH#8VJKoXT@}Ke6!EI=}7! z2Qf^CZ4kbQ($GV8Om<0`x}uhjm>@5jH8*0r1vg9(DS>cnzcG$Bj)xYYIt)$8a3e^k zh_migo9{;AG6-^*0nR3O*al0`L8PYENMB%fbzwLg#~JlGpsu;1M9s!*3=Is<1{>i( zF_QLcRg@Ng!#U)?PpKK_w}?maS8 zy&@yuWmX%V}Rr#vk@YQ*Sb@p6q*O9`g_ajK%^n4QR zW;!~UEtv%DEFeSEudLSiHibH{xWJzvQ_;?WUkFxg(z3sH_|HTU^-Z*2--#I!QR|_g GApQrm>;mlo literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__verify_message/why3session.xml b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__verify_message/why3session.xml index 96faa5886..5d93f78b5 100644 --- a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__verify_message/why3session.xml +++ b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__verify_message/why3session.xml @@ -7,81 +7,57 @@ - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__verify_message/why3shapes.gz b/tests/spark/proof/sessions/ada___ada___rflx__udp__datagram__verify_message/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..934ce981dd450f3c25e16d1ceb71aeabf2e44dd1 GIT binary patch literal 1060 zcmV+<1l#)`iwFP!00000|LvMfliD~C$M60Wd)up8Zyol)h1$97Y0Fnv>$Rc605P6a z^6k^G17WfS$yfq56JK0BT7NbD_({kf9`Fww)?J@A*r(8S7_mEC`@Hr zr^m;x3+vU8J`G*xpK?xpmlyqZXrVRpVyPwWmGp@cyjJSqjye(HuN8TAM3P4Qyu!yt z=oYJw*e`H3&}fqU{qa2+F#NlJN;t>mHvRi@ccF<}(ZbGwmbYv^Z_?vt_}p#Z;U+c1 z!(Zf>U$2*4`YN7x&o=*cbISA$GCe#j272RKAfLiO zGvhGy`w6#0kBe1`&m%8P=UV%9j<1*5=&0|1r7IZ>v(iMl!aUE$C;7DKTn&*5&b$mt znabXsORawn4TnOT-=9f^5qJTmvfNgn(g6bil;QClpy9x-KmvdwjufNdIR99bRARx= zk20dvf|5-d7i*7!xZr5Agj*L*dq!)yj#>;DjSCtW_Jie-wF|`<>>X4=yBTD@_ zjn8EQoMptZ=;qT(cg>ZKC{gJ+$Fv-39q5o2t8k=aT5#ouI;3I`RcLn2QBZ|6USF=l zu}+o^SLJnRN@+a46JOR&4UuwZzKKd9kk69z$jP%LJ(k@3NA?5F85z;?<3Y>iX>Qgj zWsUL{`lM{XFd7->I;C*CQ0mXkd*#>NJD;P(2?f5#k%L|c}o0m_E6$x#CdhF zUN+ju;Uyhb+FH{N{;lz5Y!Q|WFUCc^>X~3M!D52N+k{17rhd8I#9iV${ePJdaX&;< zI0LvHAf^M32@pR&AZ~xaabG;#y@9Gdyilco>OH$qr+v;ox^OtZ{(kSwhS^Z{f&AS2f}#$pj?6%i^3DnxPZ_ZYkc4$nitMtAMrlBmS+ERuR=f#OX(tuW eK2b^)GtO!U6hP2c@wEGaAet{?-S8d^Hvj - + - - - - + + + + - - - - - - - - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_1/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_1/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b01983c05edb3b303d531fd8d9653c33dbfe82d6 GIT binary patch literal 2866 zcmV-23(fQ&iwFP!00000|Lt8(ZyU)Gz0a@6Er(!%uIg_fdr*LNVqkL#9A1g)FRc(+ za;VW_{qIvvacq4IrBOt3NV#Fdq%}3uJyq{L&eRio`j3>pUeV`^xV*UfomLlg)zfmh z%3uEc`9BLm{c=ftzgjMPI;T&o+e{zm@+RNCt^a)J^5-x8*X7M`^d)!w$l(^S+2_%o z9GVN=UiKV%(O=Nzl5TEp`Cu2$W}&9cuo{mpXyvdn+$k}3 zQf_h|#aMcGTrNDCa^X5{xIJz1wFUbtrHkL`C;AK3q;T3J@E=E)`Rcs?Z6SaCescZw z=FKJ>ccr~o&L`7)hyvKu{N?=`3J#5epT}VkB{Ts15CEW`nDji8Z}oT4H1hulweNqe z#l7iQ7gy(W7ku{V)4x9c?cbk%S$_QI+24Oz=%`-|iXv)G#6mCBhp}R+EyWx%aSIE% zz4)p<%VqxWw=ys6-Dvz;hvS!TTg+yQx!YnkH92b3!UNd8aMk+| zxI?~Qb-mo6I|g03PMh4}2j%W=aNM+d!Ew!l}}*UEsez4nDrScgJ#f-{{xq_x|bksJG&dp|{eQ*O>R-nKz-c z1uzA3aECeI+>6mR0f?7T=NE47?$$dc{Yh}XHE0gQ`O$U>$W03o?gp%{-#6m05jPug zB6eq2kHdEvchR+KE#B7R-Is#wvO^2opz$c*_^jsOAUZgzIylG<9$I%`9^q-d^42Tg zqwqX!IfHuGa|S*0-QSyZ1zr#qIB{iZO_0_E*^jD>G{OgIn7dLy4MubFl1hGZFmY z6Znl!;O}j8!$!B+=%#{remyySCwn)o)n?~3J7-^Z&Q8C}x(yMJ(k!3V9UO!QN0kQ$ z>A^#556mS#&D3e8&i+iDkuOJ!hfV^{-8FoZu)qt-0w*smtz&Z}%5u6Lo3Zc4i(@ej z8vPsn8~yj&upL<&K^%ia(74~Y-?)D$vu27hfbtc&M!7&7ZD8Ow)8k&Mk^hRh`_b=S zflft$nn$yL0ovjTpx$&k`OUi3$*FSn=i9VKR{0Ws-u2ZcyLf29F-m%v z?h3p~SKtLmK_+3WxtnlEVJUA*nIA{+ZT6|zG z^=aNr^Jezu&5ZZ~kDhlc=YHVrn{)+U5EeLjWoZqXqY;)Ljb2p*iz51Mr_%v(g z0OGU74^YF(C~C7Zin_Nrff`muQJa-f)YPR3jzCLh@B?%TEaG|Zecq%g@Peqo$*W3h&K!-X zoN9As#1By4A33~B9c-6804Ktaza5;Bq3!om|U>Vs+7G9ii5BtGFmF5N^lm7P9nM> zgJa~GXb=MjNgmFllR9LtiwFv&)yVr8AT2fKI-Kf?5;18}N=PxV5=#$SMX-rvO@^}>W#*#QDB1DR3)hnmuY)E&fECIc298QWgj90{sw`M@ATV*9Hp$zR zv1FNwi0dfZ#iE5#%7hAG<%-7Q&?cP=CW&qxmxAg`F%WM+(yVV54TF`zSoaCuV^Z!+J#7DQiqBOaKxp3YVOCrn^C>u5zm#;`Lflq>>hmXaFfI_dbw3RSTX zG!r0j2D}1S0bXp9HOhC$;v<}}-WJXj8Np@AGE>Mdpmk8GFFLKgRGdzRbL7K`gurUS zla*c@60Sx;=TiudCz?}o5E*_vJhMbQFNDdujwrF?DoZCkY9@O?2c828unHC~62q}Z zNk+8SIigd>M;!qqZz&W44~wie^&BPVo~eN)7>TkZD&9FKLzWttrCgLY$XgP@OelSP79GabwV*))={=&Fj-x55v&46K@P0o z!Dt4oi@{VBO4ns0JWDN$r?(7MklM4xfznA9%O_Q%e3uk!b}*R{#l#IBg7n2j7R@3x zU&mBM6&>*gYg6Z?WEW7f2I7M2ySR|j6Wo(M#$Xc$E;!NCq{wTxqQURRdWM*wMBNb&O zo+icrGiweh+fni9ef&&p~u^B5VLEMkRA QTcdpUKMLABPC&c>0FWYcQ~&?~ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13/why3session.xml index 24970e70f..6259fb8eb 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13/why3session.xml @@ -3,260 +3,217 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..cdd2e9df2c1203d1be87a500183cdba7dd0c82f7 GIT binary patch literal 3757 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 L&DCe(lz`xWKOj$D literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13__extract_u13/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13__extract_u13/why3session.xml index 2d264b21b..11c632bb4 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13__extract_u13/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13__extract_u13/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13__extract_u13/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_13__extract_u13/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4e3285b35bb3a6c0a6505af3dcf0f237df700299 GIT binary patch literal 703 zcmV;w0zmyAiwFP!00000|LvDgYurc>#qa$oa@#`)RQ3M``=A^`492HruA;iD+7XOr z%#7@8_S0`^%qB5oCm7b7!~}t8nn%@pzivsb3p#DN!5Q(V4P8xboHn<#n`krBws-n- zcO&$U)_b`dF1H7?NK7+5s5WwSJ%1YaALv@l#lPK7h^Je6L$7K6W4i0r&^2tC*0Q;r zKO71^qpL4YP9L?>91cI;DNUPkN1IEbt1W+JBL4#3=jW|`LT@z60n7LqON(x}M`rvs zneoT0>dC2gLwA1AoG)e1F8Z$@$+hTTRHpk5R&c-n3SU&%(?`;(zZaGBzITneIDbhA zZ`MNd_U&{@ecJ8kl|7qgoz%h9K*j5^-Zs>Bi$C>7C(CV|KW@kC?MK;-`{{2vOzQJI z95-LtqsE8fIo(7*%3t%2+PuQU2KouO;#0ud?|{|pcWBqNpMP_G9n*0?93stbVQ{t l%fg^FqK>puW02yS($AKN(UaC{vH3;i%s(I9Hc=1{008dCVR!%l literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_1__extract_u1/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_1__extract_u1/why3session.xml index 0d27d7bbd..ba16d062b 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_1__extract_u1/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_1__extract_u1/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_1__extract_u1/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_1__extract_u1/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..723dd203228b88484f6a9a3b93bd630cc4ef2f2a GIT binary patch literal 695 zcmV;o0!aNIiwFP!00000|Ls;wYa1~TzVEN-t%nlO=q+##+e2v}Kfl3ckMjW+wc?NEHRCs& zt@wU8{_Ma4794OVy5Y;K;jUX<;1xG#4{Q@G{S6-B7aTtK_gn<>M4a*be7IQG+oPyQ zA;-@tAp`BZ>%@NEEpdL%c)2J~G{g_DeAsX82_A`+btv7RP{^BhBbV;QT)KDZ=;V0h zJ6%Ig$Eqi1^`H0S?Ex9u6fjjA^wWcC-EOO*?tn~gDi@EV?!)nSJ!2deU;A^c{c<%- z^+`X-M;Y{_1U&2V4S~>&@?t{V>b6eP)B$4)w|IxE1NvA<;gZi|x(> zzuo&4rj?AJyF9jUdi`x*cdLJd?{B>|r2zO`v!mo?_soht5Oap=$!ViL!FRBYDp6}= zvqf^jyTBDxAmS29kf{htHOZn^)f8PEa43{Hu=Oz%7c=Xe1*97XkerQ%lSy7z@3b$* zYsjIhSo2uP2*@jrIsrM>%9_Nej3uz_6y; - + - - - - + + + + - - + + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - + + - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - + + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_62/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_62/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..29c2091c0c47c8201f888c0176a4417d9aa41a7d GIT binary patch literal 5467 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_62__extract_u62/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_62__extract_u62/why3session.xml index 9c50197ca..82925479e 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_62__extract_u62/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_62__extract_u62/why3session.xml @@ -3,64 +3,49 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_62__extract_u62/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_62__extract_u62/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..94c6ecfc98faa8954e83ca20877ed34765de0dde GIT binary patch literal 658 zcmV;D0&V>tiwFP!00000|J{~PPa821#qa(Uz4cHb*&f?7mXgC>sv;pyRj#YCJ%*J+ zg2Do&pT6E8pfpeksT9a%Wvzbld-KNsj(MIb>q9O#D?S@?Kdi2JGw^EUb*=n;b1D3l zmltw7oIX#mh6|7UB(3D^e7xx|PWfEa@txX?%W%a9{DsHQ!>v{hHk(Yml-0?2x}ES9 zT|GFNKWim}>E7Nc537E|s}td~b@|N%eE{#{>&`vngI3Bmmi|7L9H4uYO#k;}`nT!o zY~Iv@J=!uy)3k@j^~0Cc1cTeFnjSk?=*RjCvscB=pQ*O_+p9Vsdv9e<&iARpyE|iH z4~LO2m*c_?SvP9gr>kt5&Sb2a;@R}+$Ln=}zP^@Ce=+=&?a#K6yIs|V-BH{QkN7gU zUVe-l&f~&tSI#>K)Vw57`|cC%o>{uP3I4uycki)xZ+l}3Q%;wM6 zPWO*rY~2grq7VG*EizS$PvlDsIu;webDRXSE+vzu0P@LvGoXMFJZp^F=1d-}l+2ZK z1!+NXXp~l(Av+EnB8oval2J2fhyl?-unn>*riKNQ0G3TCu2|2L0(a`sa9_YeRh#uC80us zHF_j%b%TP6Xb>@34y~Pqb&EsDVJZPCr!qmPN~$Rc8)GdcU0bglRfwFUBwIB#h!i>k z5O6U=Hl>Da6MG*^v^EqSbAzI)$ztGSthTNQ>K39A;S$*-@L@7;v?9=!h;nP5pg{2^ saSPu&Y}Nr_qKrz;A=V6c+0Gn?>r2qf` literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_64/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_64/why3session.xml index c7827be51..de3f6fd24 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_64/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_64/why3session.xml @@ -3,382 +3,299 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - + + - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - + + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_64/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_64/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7d0c267d9a52212bb5ed68c1ed1432bbbaf4a382 GIT binary patch literal 5453 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 - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_64__extract_u64/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_64__extract_u64/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a4a8554453b2e957b81560e88c270e537a5a498d GIT binary patch literal 544 zcmV+*0^j`~iwFP!00000|J{~LOI$$^h4=j{vdba})m{CBnZ@0N2*FjzcBrnd(g7Vs zCxZVzb(Q#tV;~SC&gOEV&#m*F)Aw~mORfxuG;TI@w&vA(b4{0P+HC1umA+m65c*7~ zS8{hcA9iRx4cgL9wUe`p?ak`ygf7G#{c>B-SYOiteWLBh^_>^z$et^m%I0``ay#%9 zsUAp{FQPE|>Fr5ry;)t-=2+4yd8K)=Btp420>TPy) zu{5_Fzs>^>kM!M#F~hw{^OWE_?C{@{q{|ng8sDBIe9CSCXYzf{_MH6ju0G@5d3R6u zPxSQri)#80@7-xTz4+Ce{_&T4`pbWk2mPyUtn&;QhIl1kB=-)|pnz`>VuYgd!GH0= z^^_#!4A_z{V*s+|j-7RMin)QQzyWBl(fSD8%JU(WuA+@{@HzssiGmx$BTJzq-D9@) zgc63vP}8uBOFm8r_hQANW(w52M<5Cdhzs_bL8u+2o-S&YnGi%1DrBrt`JITa0s%wNXp+*@=d)G|8*PJ*fU_`sbM9t+v-CA!x#@=#=-r^{UBxa0~y3Un@ iYu05b$!kk7aAv7QN&}0pWG&#V^6n>W0MDmX3jhF|+82@l literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8/why3session.xml index cddf3db9b..82fa17f6b 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8/why3session.xml @@ -3,397 +3,314 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - + + - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1179250a955b82351f174b80e74408812bf6de10 GIT binary patch literal 5600 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 BfE@q; literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8__extract_u8/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8__extract_u8/why3session.xml index a53e69b99..86ec6c9b4 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8__extract_u8/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8__extract_u8/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8__extract_u8/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_extract_modular_integer_8__extract_u8/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..938659d370270b22ee8bf67cad7dcf7ba2d89073 GIT binary patch literal 692 zcmV;l0!#fLiwFP!00000|LvB|Yuqpp#qa(rdh4MSG}7n`l7o9F4TPM^Ud>1|N)4Oc zuE`h<~o=Y^=k$x}?oWtBKaF(bvs| z&}Uk1b=dk@o=hB^AyB!dZm-LZ7(DZ)1^3oen6D?(RI(^%% z_l%)#f*d}Sq&nzdJSUB-VMD7^p|dsL&hYA!PtUvd0e#deJ1E0Vz2N#gT!ue#8D8Xx z9vseY$2-aKyz0?O`^WoeP<%s$?gm(xJN65BLro9wud3xZihP*geP;ffsxnV+pBxU}IAx zmnz4axwU!u$c$b^uA`JOBnwva_|Ui+$_|aQ5s4#P6=4?%o2B9{1(br-Wb2(v25q5O zcgcNcAh1)9ru~|0EI!m4t1S*p1e!&mGp59Z9<1b6fupp9&`=yOw - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1/why3session.xml index 54bdb2e0f..9559261d9 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1/why3session.xml @@ -3,440 +3,429 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5ecf3dab32e3671a448c986bfcc7962605ee5d59 GIT binary patch literal 9501 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 XaR4sZp3D3D?j>+KDo$V_0SNeCO9OfJ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13/why3session.xml index 6383a6830..d3624af80 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13/why3session.xml @@ -3,312 +3,301 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c0bf0d63e0523b731fccaeae382f68e686357c7e GIT binary patch literal 7695 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13__insert_u13/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13__insert_u13/why3session.xml index 201575a49..0696f6821 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13__insert_u13/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13__insert_u13/why3session.xml @@ -3,53 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - - - - - + - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13__insert_u13/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_13__insert_u13/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..02aca151c9fe57115b827b747fcec915634ba286 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYa1~Tz3;E+y%aS17C49P!PHQ4DtlcVC7iad!0UY)4c$@xzYrkWkh&qu9t(dIF2W|)Q@zQeazYSy7q z0!2U`mw9zlZl6^9d?b4U_f8$zbn4@GggV*5^GETTFBU!9qS@7?kJXEdS^vIS_si*^ z_ruK*Hjt>0WgmBRC|@KFAlpGpI?Q~WpRD6>-E_6;(}eQ z{?Dy$hw=w^`PaLl{mqwm`_~7peX)<{wzQA`#+hI6(DU|;=Ct8xj0;{lX>|%f;2dhJ zwU1tS7vmfF0HVPdg>Zs`wt=&?*-CQRDd(*5tf`_z!z7Z^IsrSEyv`nsNJf!~ZaR=F zNH)@DEu%LUvP@QL!!mNz$PP1;5*4JHWH1m5uo?|XzCbI3|Y?tl_Csl2d!O!4Mo73YNX}0klmjgOOV2 zWQEkSf?N})-fXD6IVfpUreGvdC7QfZW;)3?)S55_7tT?08a*lqbh6#h2{%t K!Rh-}5dZ*4Zyp^0 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1__insert_u1/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1__insert_u1/why3session.xml index ead9b0aca..7d559bd97 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1__insert_u1/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1__insert_u1/why3session.xml @@ -3,53 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - - - - - + - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1__insert_u1/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_1__insert_u1/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..66b52d79dc366aa32e916ca05bc1fdd217ccee9f GIT binary patch literal 570 zcmV-A0>%9wiwFP!00000|Ls>zi`y^|z3W%>UJClOB*-4zLujDvsrYI}Bh9WMn*>Lj zCH?gsC#AGBU3QnHbemu-g#2da&3i(&>jLtA1$P7X!)gcP0ILdXBKR`i7ns9xTaMFd zSPVbFn{mA*QcsNWINB1y}uhN8~R{hp=gQc2uPk#1-sd z+4m>8&qcZ0)P29bg-sFHaD@To0-7A$2UE>X&Cf@zdeP=FZDx>%9ejZIP&w+* zC@Q`JEX(Sq-ae`H`6%`T?wvWZ>CES!2z9zs&)&6mu-zyI{bgY=U)4F-i)L4aXbpl=a4!?1*!aOB$mp&L#$F zfw4i~xCAN_6u_j7^qk&C6|FRZK}G;FEsq!pNk*sIfj!(vdt; z0;eTO?WxG(njjhEM9z>yOc`v_R(T`2RgFzxbPU`mgBsD;td)-mz z!=!;1i0C6YurfOp$d`iLQ{x?H%Qi#?1>s`|rAV8+a(*f-vm|99QLv3n#Goj?0ob5Z In?w-+04TQ?iU0rr literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2/why3session.xml index 0e566f0c3..bb44927bf 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2/why3session.xml @@ -3,332 +3,321 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b398719182e9ab02caa944c610e1ecf6d11e5f33 GIT binary patch literal 7269 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 RgF6W1a)!%K3m{~qe*qO@>kj|` literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2__insert_u2/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2__insert_u2/why3session.xml index 3fdd6e302..dd8f1b1fb 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2__insert_u2/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2__insert_u2/why3session.xml @@ -3,53 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - - - - - + - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2__insert_u2/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_2__insert_u2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..aa9a9f66f3e79f1b98582bac86e8b1ce138b20a4 GIT binary patch literal 571 zcmV-B0>u3viwFP!00000|Ls>zYa1~Tz3;E+y%eO;H#mpw!PHQ4Dtlc zABUSGY#>n~%RcVtkiJq#fV2Aay#8y zXaol;zmuP&Xtd5bP@s%#vW(gTd5FdnYtraUMTy2|Rst}F6bLz)j50$~)+e@B>Qq6{ z7y*eAX`_j40%R7Ft>^57lB8_~sYYnwvlljFVhvG6o3ady8GJAyLIvr@xthE>JxdWK z - + - - - - + + + + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_64/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_64/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a60bd91c2e83ea358d07e76941f115d173db1502 GIT binary patch literal 5875 zcmV?|>{iFSv%-g}ji#%M6|Kh*DzPsx>E|`0F z7go9VxM1x&{Q2$cpW)lh1jqmqKwGSj;clYFBQa;hg-jnh$XZ+mX{nzHjfBWYD z;&~d*d46?{vpuyw)GY%I)@Sg-J6oUE-YmMFh`XmJFHr&VMS(f{&&g!}^2vR&AAkMK z%lTV){bWA@9v)zPFnrE`|MIyGan;|>&Kwu9eL!*C-+tkLw~NIOKYn4{cpkUZ*m-Z>CBPmqwZ#k|&cd9n9sdpY9 z^_LP-UxK#5!1)ftKaru;C2fK3j+0>+PCyKgAhsIBkp^LTE4@ss zUJIQ=D|i}QT`*nG9Cw^SRvUL9ojf-KS%ahGjSbGq{RoE8>86ZMJ&y+|AaHh>e!T0CeU(T|Vy2 zXpfTisMQ|zv`0yM)M}4L+Qa3LoKLG>N1a0}cp6--iUaNsSex3fg~+}cQsX#L*q z{?Kp(8?z7$Ps4>hGkRPbGtK~LA_JiG_SDY+D18b%5F8zMca-1V(M-8f22U$@ciSSW zB~%trEuZevxtupHEuZpug01+pCq_RnF&g4&=l~YNP=lYsY_0C48sYC!BrGnv8Q_qlhsq_ZnAzvRWvf9s(jYBn;|yB$I_Ml)!PDSs)!zU9fOQkwwGdhN78ng2fLy<)yFWB+ zXk!+F;c2+AXGM>1W5yYPoX7xVdVAT=0A#zXlf$n#9(Q#zzpIloWhXOuTDhy+7Evvs zvVdy&bXU&hym4vyl*bcn#iu8YOdRFa-*rKd*Hlgm5l0$TN2>Kt0Z)8J}V7;t~U+SGq7MAn@pM*|0-*6;1^4-L1l zF$=-)G+fw2qsO%|;}AeigaE4hg`$24pxW)78VF7uw|6SPy;C#grZRk5xxL$#Q7xjf zglYkGpVsBPb7=vU=M!uNs68|Kd706GPeTi^6owWnocP{>9{-^LYNSb(Xs9wYREdVF zrJ*`cLuGQfx+F@ayW?aah7%Nnt1z}=Q}-M;t0&LhX5Bt5S{4H6Gw>E)FTP1#t-yg7U&_yhfd$a(H+A>NhAn-} zLNYuJ81}g69r&1W44@}s0G-}m_hSIv?(6hGdHT4o)A@a!o~b*X0o2NU-L{Zw8I?s; zOQ`!YFXz2WOQ<}cU@JoHY0({|MFT($O~67d8qk%z@EwHoJ;+`yjzp>x7Ig-TI$=?_ zSkxE(v=fu#)+Lo{-5n=GGn~K~T*b2$+q?H|xO(#34cG01qh&dOnSMt@vwu;_B6wxA^kPOXp;fP?&Y=}N4X#$@0rv;2Z4KB$WZhYMG_U|>{r2wu*l-IU zvyco=1BN{~dSD+j&H>Cs4q(#Tn|=;p+6|r=D9#)=cqYHWGc)yOGJsmS!P^#6Eu*rC zY6*3p=H!lrDpZe%a}U$f%BMxvzUSwQ@5oQEV5b~Kx(pgjzxC^ zrv+!N7R>NkH?dl?CHwU{p z*v*04&B1OCc5|?sgC*Y}NZi2g28B4dapB;FADTo^%NNS>g<8PS8NeK`VH?8q6f;d2 z>eAC3VyI;d-Ig(whYZ~WG6}sGh1ZAlrjVhQGL)qZwV0tZm{}l}1)NE@2tCIc>LSz} zXs9I(%_hz0BSfCV>?epe-I&nIo?vWy`)51Qk(Eb>Ke%(Mz2;M$#31TWLjwj4UihI5 zI=kPQvE4bY+7IMU2cmNh=Vut4o1iCswmL&`z0YCq>tp8yDp>-a!Done>1RU@4<&N; zP-gsTqII8a|JIB4lY6_1w8i-7Cv9VY`uoFL-`ogPd3WbC4wO8-DAVv9x0auHiF;-w&H8!q-b?EYDHKM7j) zU1B$_8Y}F2)wrY@*Q&<#RO6CrT&o&4QjJ~y1)U}Q>UD+;zbNsGPM^KZFBwNhes#B% zcDdV1-#NdM_qeF2G&0c(I!?iWUxODOj$jM4xH-eJ@zo`W4g7#x|2@%10L4vg&UsA8 zgb8{2>?}+iZZqw=+f2LMZKfX^69YYsL9yGMTicxR7mMA*7mHnzjq880*tJ_cH;{!p zZt-0Ho1$*T?N{A(-xR$yq*_L05!Djv-kgj{h%%?oP9dsKD03i`=?G=c5UK@Ko=>n9 zpcds*7w|OD(nI)|mHE`r2`ogF#kUimz}2`CN3e1URxSf8mztw%Tbw)J;+)A*>ym<; z?v9gT8BV|quAm>*xX)r!~yU6&cH$rqHL>e&?qFdZnXJM?@PUm0@o`z$qe((4ZNOmJ% zc7bKov5ZE~&tngN8j(+6)V_!-5<=KMxD? z4GXe|g=4NX&I01FY#0EdySusQ#{uz$x4lNB&ESP&BJlS7I1-3wHcMid!_>-9;P$9W zq?!O#;?%vFnDZW{fX_Eu)`_Z!IijM6BRtGHS71!-I}dTpB6?0bVh4ZUZFMWv_?s5)YlqyTBD>j z8fy&~lW-Bp`Ym=I$lxhSwk|4oAeL=x-ImjAn+R&?0qBbT+yk-UCKhKo8J-dhd-`;T z7AF%C&{RY~ozQ3y5m4IE(NI#>|j(yA}8_+x%InB0-nT8%fUa@C;AU14jah8+eDZ#KOOm}Q?GI4;M ziUVXPI5~&|WZJdKp|oVXYm*bZHo4*+u8CD^cWpQ4Rl?N-trD#6(8pY|F$q=^tb#3J zwdYGeEnhmZ2TNh+bcJ-`>rw3=pD?J+u`*=`JDG!>>|iGo?Bs<$Doq}17o{n6?`S#L z;S}xQO5Cl93ZB)P_50^;%~qyQ3nKzGsWlRC&2LYsPHQS@P4%^=I<2XsH8s|nTu#Cz zAnUi-c_4$QB-y&C;DK1Sv2|Ncvuz@%p$AY`?B^bc4L7kk%gOMRVA#{AJG3~Nh(Jw6 z1gaC78bkyt?da4{QmWn2sfit(T5&I>#HzJBx|{PV;c9|b308OPV=md41gi;F!IrSv zv!|P8PsQtA&3iTP)%-rHd4=;R;tic1!UufF?pjtX@rQT7nGe|*_en{UQSe=U*!3a% z(fp54@OhvWh48iUrGZA2P*F*Z5Uvz;)p)9!N|^tE|1nqu?JNY3bxk$aWg~;H8(mdo zghfNdqeM~ava-4fQkqbUQZ|Z(gs2L2(tE7>1A1x4h;{|MXj|Zjhf$qf0X}K8Y?W6C9_Rn2yqSy<6^4oE9I4n zr$W|B83OV}l$J1Foh?FHmbG+E6S!P!;lX=RIVTm?%At?5=?cD5EBQjCR5f~C8Bosf zlvP@lzO0Z3fhaWx6-UWJ z+qzM@sTc$$ucHc1l(o`^xzSj8SU^w(@f=fC8^e=bRkmTd2)>+BI1IK?hqKp(RRE<8 zwQIN+G)8(Oo#E>%EuURUapJ-7d|AnTtgd-F;-8FP2TgU!0x}j$Qy#9-7A}Z@zIIr# zQcQ`U`Rt{UEH+W0JItyp$VsbBT^Yd#F}iVruY-aW5?O^Jz88w3GMa2?LQtAd*h?sR zLdv@IwLmE0pkyelbk5XDlHfTim2IN_n#Rp05rd6i@u zFtt?Ba5cC9TGS*(T`FFQ!%Xnp^ZJ*HsIgVhXc!K>SgemYwPf94CL9+>W58M;8eS7a ze2R<`$&=65$BP*uLacjUnNssyH!OJ~o+|H*14ovZu{xYRK|z%^Tv(N0dSGJ$ku;^2 zCJwh%ZR02`ytTI0tZEWX?U+`vQjL)flLqNf{X~Uo8dq{bdp=cLm6nAl8&;(?f*0#B z_aqC}skbFBT z7@MYIFh)N5iqFvrD_J?H3}ACOdlN@769_OESF^C|Dku|-1QU4uEyPi_;Du%$l?{Wn z0#=qs)+9+Ts7g`;hgo$+$<>bNm~>9oEOj2+Se^wHpjJF7k*GZPr3*$Gz6fLpYVfil z?F`-h6piMxws>2bS26pl|NxNx8|7B0?8DJm}M%Ej|>#310J4vNVw z<26buB=e7Zj(5b3gx{?8TJprZ$kkegs6r_V0xnd+^KTkHeO_lSHS(GfOO>na;k{I0 zxDh#)Oby7MlZ0!i64*fHS>%m4oIS&yYh4nHM%RqF2qi978`&5FYb8=nnxf>j1FlFX z*e)^uxN~sdfWQUBW#A&nr7aX`ql1uqIKkSig^lYk16w(+6@3`x3hskmC=&%Jd8r%l zR-vjvH0UZWf!L@-p-LdI%xpoDDhRg+~chFE76+lczm)08fF zBVrhzzS1l%;cCIlFY1O1qztmwvC@=bi@?o^t3cO+uaLWoVGVMd1FDD{@8O8HC`pm3 zP07qfXwU;g78#1dBQ`A0IEs61ZFph8$)>UnfQ<&5nv$!n(YE9c5c|L2Yh(>tey!oN zaj~%wGMSh=)?-s2Tmlq|yCK&f!!A%@)>N)$Fd1Gb?!A11aTFFj&%Ahy$C@{AMoGRj zV4DOD$MEgC*^Q?d5~E@my_Y8&pg+(gT=!AfhzNG{oDalwU#OP>388E4f%@&B>S Jxqyrl0RRMgDQW-! literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_64__insert_u64/why3session.xml b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_64__insert_u64/why3session.xml index 36c17b57e..270b5a9f2 100644 --- a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_64__insert_u64/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_64__insert_u64/why3session.xml @@ -3,53 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - - - - - + - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_64__insert_u64/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__builtin_types_tests__test_insert_modular_integer_64__insert_u64/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..61c6fc5077b96e3e2b68f326101d3eddf2823d70 GIT binary patch literal 564 zcmV-40?Yj$iwFP!00000|Ls>zYa1~Tz3W%>UJ8;%pO75(VrnQkmAx*b(WqH)Y_nDz z++Sa7#g6&K5n{qKnH}A7_?lv;KXvZddgL z7)iFx)sXgdY~0jq%HhQvhI+RdwwpVihTZs;m&et!!>_{Oy1Y8u^?K}jaly`3|L0bB zV|~^w{{2?yp83J<{`!b@FZRRS)$ZY^oBab1v*_N?gbFB8xx@%YS%Xx_I!!7=r08TJ zc&9!pDU1%r8qZ{tBuR#X&l(w>q->>}QBq(a<3pyv!9&*C74XFd$`IN@pa#+cV>E$4 zlD1?xC!--oS7foVKsLI8Kp3#(*&$N0GDtQd=Fmc8mRh-KAR{~`kg_DOOfg!UlgDhl z=hhZ<@eO2!QC^prlyfp_NvMm`3V~I~uAO*p=L7>g7roC3IBKg47ax?5SRk6jp@F<; z38MiCk{$Vyk}nJvG=o&xg&7n?GKx!NV&$zXK{q|IDe9pKXc1;kQG5d{eq@_U5dZ+f C{u4w1 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range/why3session.xml deleted file mode 100644 index 4b32c9f61..000000000 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__extract/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__extract/why3session.xml index 81d9c74c5..6d9360c85 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..06e3a8e56b44d9fc0fb10c8257738942f2d38361 GIT binary patch literal 702 zcmV;v0zv&BiwFP!00000|LvAdYurc>hVS|nd)q?@banNYz&>aXVGYKoWv-&Sy2=rZ zXUvT3eEj+?joBo|c7h>}W3v|_wO+cO_f<)%GdkwN?u6Q>4P8t;PMd4mO|+S5t4jau zu7uvvdM`Jp%i$g^P@|ddRd;f6Ie!}W@99#yv;V3cQJb#mExn=n&*`QXLtx-SYuTL7 z?++V3A=Ous;|Ea~VR(L0nl|H(Hs?YY+x87ac>(P6)9!slZ_Uafmhnq0oN&06%=rCe z#^-seN5@tT!s$VCx@>!LrZ3-8;PkpY-6mMM+x1uQs>~ig;MVwFmCxJkW^*BbO%AWt zLi6^o>6~=h?dO$0nPywGlZl;)*JHhAuyPBZvC+|T80Qb$@pAh?cH@5fEQdvVpNG4} zSN`6@r*xIVC?Dq?@w|dV|NI8A!eesvKgiXr-z2-H{rrEdPZI0!J2mj|!1v;Avfq9$ z@8o*-*D-wgV-EL^1H&(vaRv+fp$T*N$y4(1$oc=P{^@$J%M}qq2~s3xXf7k<3ZkBR zj5XCi;BN?BfaX&n!0KB~1+|xyAlA&TsA@Eo>r!()NuM|%F_DP(fvF~mu`epUiF}tz zmY9HSK`E#U*;af-Qr~M;HW79hgG-1xI^RlBUn8a1039=FkYJ+FVa_2C3uwp+#j*1t zVdm6O)#*YWyB0A8SDBK>$lMACyXmk>plGdUqSU3@JWvv2!jb}39W$z}5p*XvrL? - + - - - - + + + + - - + + - + - - - - - - - - + - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2328f93256a544a711ee3528c58eb12bef5ce135 GIT binary patch literal 572 zcmV-C0>k|uiwFP!00000|Ls>zYa1~Tz3;E+y%eO;H#mpw!PHQ4Dtlc>!bOWfhI z?@w}{H+;7#`+j?i8*Z-giad!0UY)4c!ThI%sb(kV=c87+X!DphGfcw{-{D&{lL;0#<)emP==*z>p->e^a?6<>bUL0mGKEDc|%i{WC*XyzC#Ra=q z{hwRi4&@Kd@~>w@`G(!|kfO0Rff6?AOqy7m2noSElbm+WTUSw{(d4x^)=?nPKbrpqEQ9D#3L6!moT1puMRgh``qKgR0bMPSsl_dx1j17!I0Zrv}W1TS=y$tn9 z39L+(Owe_c0207gkZDA8XqBjpnb~TUjnOLQgx(}6jjbTt2*Bi=BNiUnm|#&za5}4~ zLQZTd$TjGpN@5^e;%Ie>APottg(TF%=?e0V5JsmeqxVQ0ARCq%f + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__to_index/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__to_index/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7c191c63b85dafa464e3795922fee1e1b717e1ca GIT binary patch literal 120 zcmb2|=3oGW|DV0L_-^ws`{3iV@{ISHvp#+2&uDw=oboxN?dfw$r}MneN)H}QEnnXf z?=zZytp<)P;aPc(o~bp3Zb^<>;?o0Xt(;gntFWuFvvFak>!g*1lV-ZkYOUPl8r4-e XY3a&|O$*x@3%eNRSMCex2U-XKgwQew literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__to_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__to_length/why3session.xml new file mode 100644 index 000000000..b05a71c4d --- /dev/null +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__to_length/why3session.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__to_length/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__to_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a5313725602563b6059f1ab6b95a81c5bcc623bd GIT binary patch literal 120 zcmb2|=3oGW|DV0L_-^ws`{3iV@{ISHvp#+2&uDw=oboxN?dfw$r}Mn$S#KUqEnnXf z?=zZytp<)P;aPc(o~bp3Zb^<>;?o0Xt(;gntFWuFvvFak>!g*1lV-ZkYOUPl8r4-e XY3a&|O$*x@3%eK=Z`?k&A7~)}l8G{^ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract/why3session.xml index ff0cdc66c..e7af9da8c 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract/why3session.xml @@ -4,472 +4,539 @@ - + - - - - - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - + + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + - - + + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - + + - - + + - - + + + - - + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + + + + + + + + + + - + + + + + + + + + + + + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - - - + + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - - + + - - - + + + - - + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + + + + - + + + + + + + + + + + + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + + + + + + + + - - - + + + - + - - - + + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f0d2a1e027596761b213781237ea4db10a069aa1 GIT binary patch literal 9299 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

    -rDc7#8IhFE!OZc^C2Hw^583_D3E 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 C_f4z- literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d/why3session.xml index bdbcd852d..b0e5cf178 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d/why3session.xml @@ -4,118 +4,102 @@ - + - - - - - - - - - - - - - + + + + + - + - + - - + + - - + + - - + + - - + + - - + + - + - - - + + + - + - - - + + + - + - - + + - - + + - - - + + + - - + + - - - - - - + + - - - + + + - - - + + + - - + + - - - + + + - - + + - - + + - - - + + + - - - - - - - + + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..fb02c7dab0607cd9c59c71009b0003526d17e063 GIT binary patch literal 1686 zcmV;H25I>piwFP!00000|LvPgZ`(!?$M5_Uz4cH8*qMC;bpc(18ZdGSbTwvQiBP{_ zD{0bC-&snDsF;#1M~Yty*rv!G?G9)E{~t+{q}j#kHC=qjbe1nZ%s*11IUUnqM>I=c zqBy4X^@7f4@pN|anXYGaF{jUT_9>s<%>K*t{`ym-)sN)DPg_Lyd$=?(p{>UFS(5qOAm?qhb5@|V$Mzqj6Z z|5QK5J%b-m?VbAHGBsU3znXtNz4=I2xf`o)Q^IRe0$23UqhT?On(&qggKfN_pRNH% zCXFLaJ-MTA$CxRcaD4`)TqVT?oQmis-xjw9n2OQPPblBe`%hPASsXy4@PM-6P9l~2 z6Y0SzY-Vd_d#YxeKd!afVXQgpg*uClB5L#P7}ng< z+|t~#{r+e_7lR5k12qFR1MU0|Gkvn>3#VUT%(Y9b_J8bV%NJbB)1Z8%;H2V+)4GIkk4GOOU z3Y7v=y|QwHBYxCs1_uCM9q@*H7m-X8xzjLGKn2pF#5 zK^P(z&R2EuZ5ywQF+@)NBGeB<{fZ&Ib6i|4ZX3uw35LiaL)2D=s1b&!#*oI4Z44Rk zfDf^p+3D%Y!gwQl+c$62ty#1WnXp&H;BZCW4>7PKW7G&Z2HY4RhMfhA(7IgRZG#nL zK-2(OdJM)*2HbE^(!hODqaN!vBRmRd@ByHaJAp>+4>WLa(y0C|cf0nMdm}<4LLFk2ag1ZF-CASE~9ZR8V8W*DFU#B1Z;u? zJPk$8W9dagpCN8jPhV|>q-J| zJ@m70NKEz$jLA+!nQX+%q_Jkjn#o$)Ylr~3mX6$z{Mw}-=(X<*-j{&>g$Y=`F#+SR zOze(#4*CmS2)t2E6jMboEfmMNM|DVn=e{7F(zHe!2F-mZ&D12{ph{*@`$ zYu8ND8$)E1)W5;sXuD`)aGbP|hy|r}&RZ#%NH($RgXJjEk&Hx1DIcUJ3{0+xte295ROf^z zi^5CGokFAOtRn$IGq4| z_C6VvDQlsv3>;)T8#1xvuo&sMPp2SpC4{iqTi%_Tlk12pmxQAzJqe&i%;;FJvS zS@2nLHzAc^>->T06a=(^t8J}xtVgM=@>2Wgiqt%DHA;7dS1cz|LQx#W6-j}L4bH3N zqwk{(&ohtW0@qa}p;fTni-anhpvffav$vgh&Z^?7vI+zb$r+P)D!8yb|GCf0bv}zg zF&p7ESg6txCLsrv1TOhhqkM;g3se+mKrD33CR!6&c{!;hO{q~RI$H$BLNf5aait0d zi@b}z))83)H43^q`#c2rRD_@$ohv~m5hZ)5DAVhmYtPbloR#t37R}xWrufLtK$e^c zwe~2xY{^M5Sto6hkqXiHSc-LAZS8ce1gb7T;b}$y_N-;IsT71Snm6ghb5=Ehnybp( gLB$iLbWUiZS4OdtbW|W?==(C=|4hRju)SUY00de)9smFU literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d__es/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d__es/why3session.xml index cfe289085..c643c1458 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d__es/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d__es/why3session.xml @@ -7,18 +7,14 @@ - + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d__es/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract__d__es/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e64cef6486bd2c85e90869d75a2d0c283ce1e1f4 GIT binary patch literal 142 zcmV;90CE2xiwFP!00000|2>R54gxU@M0=ltBlwdzaX~?Y-~zNLaU9Vgt;9Cm9#$)D zHPV|mv) - + - - - - - + + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - - + + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - - + + + - - + + - + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - + + + - + - - + + - - + + - + - - + + - + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract_intermediate/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract_intermediate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7765abb6d963d2134874b47aa1401ced964834da GIT binary patch literal 3294 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 c3)Ci)g;<5jh9e)c@=MY1e+8f7BCWOn0J - + - - - - - + + + + + - + - - + + - - - - - - - - - + + - - - + + + - - + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract_remaining/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_extract_remaining/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a67b354bebd4f8172e72ecaeb71e1d32144dddf8 GIT binary patch literal 3425 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 D1I>Cn literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert/why3session.xml index c72f10dfb..8a6b0c124 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert/why3session.xml @@ -5,554 +5,589 @@ - + - - - - + + + + + + + - - - - - - - + - - + + + + + - + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - - - + + + - - + + - - - - + + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - + - - - + + + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + + + + - - - - + + + + - - + + - - + + - + - - + + - - + + - - - + + - - - + + + + + + + + + + + - + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + + + + - - - - + + + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + + + + - - + + - - + + - + - - + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + + - + + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - - - + + + + - - - - + + + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7027ab8b7acb3709b8c53aa4b42314a9f65455ff GIT binary patch literal 12074 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 - + - - - - + + + + - - - - - - + + - + - + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert__read/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert__read/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3755f6e0fc9337c85d7292f98ea17e9f6006c0b4 GIT binary patch literal 514 zcmV+d0{#6TiwFP!00000|Ls;yYa1~Tz3W%>4-_=g=nLY)UQ7)+mc1?`X_PEDYqQ># z`rlV;x5lM0Bn@p-lZzNuPcv`c8?l;J^kG4L{+i^fr@SBNp-;YaBN=`L+67^DEIG&J1|9 z`nTp#s?}E~|91&rF#ms3{^sIcXf7GkJj5T7>XPj&81s3iC3tJm`!b1+u z-G7zli=ea(lDx{&QXy@5DLg9JCwf2;vurL5>OQrIa)2*g2pB5J zifoXKL1ihjUA@~w=1vw#W57J8uoQg{d*f3 - + - - - - + + + + - - - - - - + + - + - + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert__write/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__u64_insert__write/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9c5bd9e8651afc5dd5d37383a12fc7ada9ccd4fd GIT binary patch literal 584 zcmV-O0=NAiiwFP!00000|LvF0irX*{#_xWLzCb~v|AO6uFQI`w7GKR+8tobqCpd0t z-oCQK2B)=mvxJ3hHa^J0{zjhB?;C-;C4RfdI{fx*S!38YxUPM7q&Gv9ny-{lE;KV9w;?3X{xp)|rc4{`5bsPL`x4R+JgJY+nC*tx;J^I=Q=D@uc z_wMM9Ene6M{92e^I^D@;yyugcXDOcx`Ro&A0`bc&a53QjvM)z)m&ZBWNM9l8yZb{y zg&4EGaUXMs5%}xjUf3bGLfo*w(C%lB;uJBAR`A!!G&0nix2`C=8?#G zWmyu53=kBrq*dB*E4c=xQIjCA(i055NM_M7DYXNY*7lKObP&*SLrN-2R}!fVi8&`p znV__jeSi$kvOr!a9Z4pU&Z+?5q(D^(VYQW{nbshJAsJK%E{ROW!1=UTis8{kFQ~7d W8MKTsbOMsdW`6)M&tR}&5C8xa^dgx6 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__unreachable_bit_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__unreachable_bit_length/why3session.xml deleted file mode 100644 index 291a2a29f..000000000 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_18_range__types__unreachable_bit_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum/why3session.xml deleted file mode 100644 index c6d1ea3dd..000000000 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__extract/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__extract/why3session.xml index a775358a3..c9de761d9 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c0b61d96e86936ae3aeed800c273312fd413bf3c GIT binary patch literal 698 zcmV;r0!95FiwFP!00000|Ls;wYui8&zUx=?)D>lr#hL6 z8rYK!=47NjKCSORk}dwQGHpAUscrok98}opGik-&LFL@`E-^>vhm`PY&NwVT_h(r9 z)q0re<9?8fvgnHv@Vv{{1w?N2C*E)}p1R>?*pjxsrG3T0C#jJp8Oa_QOIwJJ}zJhHy zLJkZzs-%3V)eX#YlFEb25=#vf4(Yjdev1@@WLwCTB3Yc%5?zz8F%eRONgLnrsB4 z1>_p66tocuF_h4=Ge+4|Btr-Wyc3XbV$zwMHtZl|5i&(bpNy$WC2wGq3ytRxy>JAr ztuoa)r##nUm7?UW9+_f;0u+5i9m literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__insert/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__insert/why3session.xml index 28a891c01..42772f491 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__insert/why3session.xml @@ -3,53 +3,42 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - - - - - - - - + - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..20b42b94032ddcb45dc378a418742327aed844f6 GIT binary patch literal 571 zcmV-B0>u3viwFP!00000|Ls>zYa1~Tz3;E+y%aS17C49P!PHQ4DtlcfC^HHl@w0TUM8Kz-}@9-^_nspeI zKogM1C9iJE?UQ<+k7Q5a-l-#-PJR52P$xTh{!zTn7mJ>4(d=r{$Lht!tbgCE`{h*V z{cv-H4J0aL*~c9n+E)#$emI*#Umn)|X8pipza2jF;;?)1`BnH_7S|WMUXNWbF4)ED z|J>?!D1UI5f4v*p-+XzufBm4fFZS`=miF=AIP(i0dfuMVIc>7hR#^&^(b~wQI0tk} zkdYF=m^bhNM56_;PaqXx_StLFTs<*51R;%qTv4L2k|8suOhHD$Mro%EMxk@Eima<3 z*`y3AWyzYYQ(A%|VjCz#zf> z78M0qX$(1Olv04IAk+959e81#k3m+1R9Ope^i){}pDM^UWRpYAf<$tfeWo@f{=4fs5*2)SB%@<%d J_AOQs003Nb732T_ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_index/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_index/why3session.xml new file mode 100644 index 000000000..ebf59e517 --- /dev/null +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_index/why3session.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_index/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_index/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..44b49ea93cc65c57717e5160209dd5961955551f GIT binary patch literal 120 zcmb2|=3oGW|DV0L_-^ws`{3iV@{ISHvp#+2&uDw=oboxN?dfw$r}MneN)H}QEnnXf z?=zZytp<)P;aPc(o~bp3Zb^<>;?tM5Mt1E?owRXd=A@O0MXL(4x;!Usbe&YWsc_cD Xoii7fl%O&C literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_length/why3session.xml new file mode 100644 index 000000000..34193b096 --- /dev/null +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_length/why3session.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_length/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__to_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..55fe64ed5edf66205322d27f2555a0e9cbdad0b1 GIT binary patch literal 190 zcmV;v073sBiwFP!00000|EQN4~#T>Cr{UDY72I*08F5H)T$5>FO?}+_)6Ra>?$<3OzQEcJ595{do-kJbm s+r}8sINj#=iBy*0eB(Khjjb5y7pW - + - - - - - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - + + + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - + - - + + - - + + - - + + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - - + + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + + + + + + + + + + + + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - - - + + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - - + + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + + + + + + + + + + + + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - - + + + - + - - + + - - - + + + + + + + + + + - + - - - + + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..425a5ab571aa2df090b49337dc5203e3325829c9 GIT binary patch literal 8984 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 - + - - - - - - - - - - - - - + + + + + - + - + - - + + - - + + - - + + - - + + - - + + - + - - - + + + - + - - - + + + - + - - + + - - + + - - - + + + - - + + - - - - - - + + - - - + + + - - - + + + - - + + - - - + + + - - + + - - - - - - - + + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract__d/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract__d/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8d9d0e221b5e4f5b9af04ff4d96611abcfd578c9 GIT binary patch literal 1577 zcmV+^2G;o>iwFP!00000|LvShZyPrd$M5_Uz4cH8;P6eLF0hxN0*ssjU4`K*5$YFY zB~AM2J6ze>b-j`wl@iP0C9BoWlEdNu|05->gUgG>3NJonJj)j!)*mt98fW;&2`H#kBm4Z}7LF)zJteP#5Ra#_}TNFO$iByZYGi zslJa#20x?PPilY1)UbShwf?%e{)ktZO;xuk;b&0-RrL3haWRbQ=$#0o_vnp&x<(x7 z8b_LXGQ-<7W)7!RpHV4?q^N*%9$j~PxYxm)Pd0vv`5NDUx;o4J02+m7lubNIq;h{E zJ-9~Yfi?P^YCoxi9aA$BsUVTgsTQ-Q+oszWuiJOM^7yRjx9Rs7^*e}ER*}}qznO~& zBu8kXZlXSRQ4fNJoeGBui9^$P)A&o(_+&-5rExNsm}kuv%@(iS7T;8gSC@b1RTOho zHK{h5RMVPN4{P$-UW2jO#7?t`3A2f2wq~}MYPR){wN_iknzLT1v+yJeZEn}F=9cD` z=9b;RkM?shsz5VPGf*?olfN+2r+fb3^c{?O=Ob489=qA{720yF_G9#DTRfXfU%gA! z>EM~!ySDT-Q#Dile^ZUs{{0=+7Ov*8SMM>}QNF=5yk2jjX?~`PeU8_EZ8eSRFVB`E z>6?C6S`WjoS!QJ5QRrp^TMt918@9Q&UbY*r*lDlWhrIG%SiC*>dfa~PYq)sHxY+Ue za_=+{6Eu+1G!PRskVi=aF{XjsNdq}S1KDWMXmDT}uquMGT-}&`41xxQ289NNp8^V% z0&_jsyFs8qph4iLgTOb_n>xbvi&F1>-1z`oA%$55a4mH|v+~ErFO>8}mOvVSa^yKjyU-?O2!Q3B| zEpQBQfgeH_@eI1iC(%Xik1lX8S(9>K{ zlU&fp$^|v%g5JpmJ;4RtxNz)Tn5IFu@67^?zYo|8BDyCrq}vLVuF-|)(v9M!-nmB(>4T_60iiIq^amhsCbkWF_wP14! z&Vr6EISSIudC=UNWFwT~tC`7%qNE_p zFglRVWN=FJoH0gp20=okV1$~JVUrwVABsIvmfh#DoCib@v~ZAv<;z_l;|AZjU0KNWqCie)TR zK?;x|80~Ggit_}DXNuFj&z=Osoi|$o;-mGN63_`nmN921s{90JQJP>K^6cpqZ3JSJRCTY6lO={w1tEY5 zATv`94W2@q$1Yrg<}5#=l7DMYgPaNh8+S2 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract__d__es/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract__d__es/why3session.xml index f4bc7c689..fe858b688 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract__d__es/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract__d__es/why3session.xml @@ -7,18 +7,14 @@ - + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract__d__es/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract__d__es/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e64cef6486bd2c85e90869d75a2d0c283ce1e1f4 GIT binary patch literal 142 zcmV;90CE2xiwFP!00000|2>R54gxU@M0=ltBlwdzaX~?Y-~zNLaU9Vgt;9Cm9#$)D zHPV|mv) - + - - - - - + + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - - + + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - - + + + - - + + - + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - + + + - + - - + + - - + + - + - - + + - + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract_intermediate/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract_intermediate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7765abb6d963d2134874b47aa1401ced964834da GIT binary patch literal 3294 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 c3)Ci)g;<5jh9e)c@=MY1e+8f7BCWOn0J - + - - - - - + + + + + - + - - + + - - - - - - - - - + + - - - + + + - - + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract_remaining/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_extract_remaining/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a67b354bebd4f8172e72ecaeb71e1d32144dddf8 GIT binary patch literal 3425 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 D1I>Cn literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert/why3session.xml index 1836472d5..910e1d667 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert/why3session.xml @@ -5,531 +5,566 @@ - + - - - - + + + + + + + - - - - - - - + - - + + + + + - + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - - - + + + - - + + - - - - + + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - + - - - + + + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - + + + + - - - - + + + + - - + + - - + + - + - - + + - - + + - - - + + - - - + + + + + + + + + + + + + + + + + + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + - - - - + + + + - - - - + + - - + + - - - - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + + - + + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - - - + + + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a87f14e9a89256d4ca2b999560134b2398bbf10c GIT binary patch literal 11692 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert__read/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert__read/why3session.xml index 99888e50a..8f162422e 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert__read/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert__read/why3session.xml @@ -3,46 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - - - + + - + - + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert__read/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert__read/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2eb7bbf7c71dfa52471d795c8befd12bc9cb4c06 GIT binary patch literal 514 zcmV+d0{#6TiwFP!00000|LvCDYTG~%h41$%`T~WS{a=U+x-m86vglUK>`x+aWFxDk ze*3QM*0?l=q@itUa0bYtF9qKUfhsQl^CVc9%9d(~7{Colc*g~pzSX?97U#?P6SwBF_8 zbRL!>KWwLcx4Wlp7Ss>jNW)#Gbsp}f`&PENqQxV9TethTKb`;9+|v72&(g;k>E#>bmqT8i=J-bZ4-&sw9R0QGocWdT$Fl%l zE&tXWTD9ux@P9}6g7g13@i!O0h2~N)&9hQ!{_)?pna=$FxW>8GUU1&6&XR%=jzocrMyR{vr0~53`Qb)TV_vI zIBQ+qwv;vyQ}T)<7YdaKQB - + - - - - + + + + - - - - - - + + - + - + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert__write/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__u64_insert__write/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6c3ee04d6b51a0b11d1a26afa7d1a4c8fe53e480 GIT binary patch literal 585 zcmV-P0=E4hiwFP!00000|LvFGYTGar#_#o-4rxVeO5Z=)pM(os z?dUM=hY3COWlf3~8LhY7zT7?GmNKlHvc=|+a7E2y_f+r#mUusrXu%i%yy(*{VDUMR zvHM)b9@!WAdEt>E;KV9w;?3X{xp)|rc4{`5bsPL`x4R+JgJY+nC*tx;J^I=PbKqW! zdv|ol7BB1rel1Kdo$h2aKJ!V;vy{(;eD;kpf%xSXxESz%*_R`@%i|nwq_2?l-Tk4U zLX278xR1HR2>kVMFYJ(8A#T`TXm_}z-#;|=e75)VIYZ=ca!1}>g+KCcRQB^98eoN+ zNdwqS9&R|1GjAKX;JW#6w#%XjAb>?~S%pF{rGvr9(DE3V=Kc$OcbWG#awi<1=GHNW z+$#Zro4_e(CX9GjWRi0U^b!1!$l)8`cm6O}kdhJ{l$I5EaNJl(W3uMVGsZS(Pks_ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__unreachable_bit_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__unreachable_bit_length/why3session.xml deleted file mode 100644 index dc17d55a1..000000000 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__unreachable_bit_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular/why3session.xml deleted file mode 100644 index 4f54eeccc..000000000 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__extract/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__extract/why3session.xml index 93b5ee0e2..2687b1f82 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__extract/why3session.xml @@ -3,67 +3,52 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - - - - - - - - - - - - + + + + + - - + + - - - + + - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__extract/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7530e086bb036558828dbd104c0aeb414ee290d9 GIT binary patch literal 699 zcmV;s0z~~EiwFP!00000|Ls;yPuoBcz57@6)3JyMA#^tDY7EEo-H3t1G52 zG+*=Gc3hso0u>tQNp!;(m&0whKBr4=PJd;aQ0cGfh(6KqvA@fe!DPsR=Dau?&Nl(~ z$m)T~^jRudL;Lznsb6#}TAVRmEXyMj;T>=v_8WUbMv#PBxg6G3@baegBe7c88^Do54(N=bynriJd;9R`?y1&TZ}@b7X!<3a{o&!}4=~ zMzvq9hZ!FCgWQx&pOt{;UAoR7=|+CSjV9yL4L8f~a(Tn6Zr%Uj%}x29+uh_dd@}I~ zT{+Y7_hChOn8Buh-hi#}5?}ETzKZlaXXmsY{@c12TidtP!0j{V#jdlD&&wTOcYhu2 z{U5V^dK_r~!Hm<2+0RXw?O&df+ZWFN5BUA{UXw#C!A9`lLsg1XwT?-bjFlYt_yN9x zX#y8x!N@bMqKlC&)ntreKR#8c|_1imfAZDXOY%_9}@k)LB5-04b+k2qmUW zmf34q(cgcQnmtejm=8Mki0?dlQd)vXuYbgWaq0*V2h%lNObi35&DdqXNiL**JpYXt|1zI7>DSBi{h%W1v*H znzXT8H9DsfbaKu*6@2nB7R89HQ;{;&I-;Nn#Yi=jlfyupWC+DYB@w-;MwE_)0c?yW hRVpbfMV1)4NO^P&1pqL5S4Na>egcXCp - + - - - - + + + + - - + + - + - - - - - - - - + - - + + - - + + - - + + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__insert/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..139692d9cc93d8ebe8d8e8c8066e782b35f484e6 GIT binary patch literal 570 zcmV-A0>%9wiwFP!00000|Ls>zYa1~Tz3;E+y%a{HZ*UIVgQ=n9RQ9@zq*1cq*k-Lb zxWB$yo0gWkA!$QtYF`GidZRb<-k{wr3rhPH-3_rHRy!I8S`}L7OrOSkra3LQd|Xap zF?<7W#`T8BvZp+Z+d@mK;jk1nyQguaeFs$5{m2_iRH*Nd$R8dZ(x&k2tddU@E@(%~ zzCT&}yy3e|+4tL9+HiACSJ6dS(A5dH4(C5@Oq`vVpO0GQqRnI4%qR^zdPi@m)T~3J zQK%@Qqb09y%I%Z5&quN+)ZWQsHJ$wUT|pgo;`yU^oi7$W+oIXkq>oXHi&_7^S@+B7 zp!dVg5jI4qkYyis@jzcStoqSx3VnH4_nY+tkNtM|%!|X*i_fpZ=d!rI*!6nsdU3%n zR{!T#w?p}ZyZr0j(EjGjyZ!5f*1p)sb6eWSf8+Eo>QM9cjOMg4d>BPf{zIZ13O>aVUp2e^4_7W z90?~n+h}kcG}pEQ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__to_index/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__to_index/why3session.xml new file mode 100644 index 000000000..6dc2c254e --- /dev/null +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__to_index/why3session.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__to_index/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__to_index/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2009c2431b54288ddcc6da9e48a8a7a8f6c62ef8 GIT binary patch literal 194 zcmV;z06qU7iwFP!00000|DBGpP6IIzM0wqOp(F7xRX z#}?4XykfjGct7LzXK2av&)#2L_q%_74IIsDl%h+al=9?cS=9DEF*zvRq(=&i8fS_^ wQbd@HCT3Hwjf;>~xlK>9C(18}zf=JL0Q)0d!T + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__to_length/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__to_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5a0b0492fca0d8da988e0e7c3460e4990d388867 GIT binary patch literal 195 zcmV;!06hO6iwFP!00000|DBGpZUQk7M0bVBxpucym^|fd}vbtE%nl6YC5)lmbpn^q_kx`SeKvq&*W1MC%e~MIGc{kWjy`L z(VVnC&eHcLwVh@C7%FRe+55z`*}nPJ3HlH)#vu^bB1k2~5{=Y`Oo+G&U*JkojNloV xm=P2PL`^jt5`$*ALf(nzTnQjS@TKNmpt{SJjC?LWF<+s<{R6kBeZy1%006y - - - + + + + - - - - - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - + + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + - - - + + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + + + + + + + + + + + + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + - - - + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + - - - + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + - + + + + + + + + + + + + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + + + + + - - - + + + + + + - + - - - + + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5074c480bcada0bb34c269eb713c0954f6f5f19b GIT binary patch literal 9389 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 dB%DyzNlGKeAjm;9lY{>m%fezub1wq{@Lx$HR - + - - - - - - - - - - - - - + + + + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - - + + - - + + - + - + - - + + - - - - - - + + - + - + - + - + - - + + - - + + - + - + - - + + - + - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract__d/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract__d/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b58169209517d9deb642c9609515c34f0d1cc034 GIT binary patch literal 1584 zcmV-02G98)iwFP!00000|LvT~Zrex@hVOiexy@k^psTui1I7dB5{v;Or$ASsdP{`y z23yG_^Yl}s?1)Jyd5M*HX~PypcB#9%`u{&tqHSKDE-v`=UE$+$`fl}}Gq3oN|2p7h z{*=@q=g+5nvP_HR=|{d;^682{^6`hVxLp2M`0d4q!ms)G^6F{-F!2%?dcAEl_Cs$8 zKH!rx>Ff8U+m877b+PNa|JX)d28ll{_q z+xgKj#w~;IQSCeRzhh~-a&o@EY0Ldg3&QKFf7-I zBeTYlrk>LA^*Lq^M^c|rDK|+;0p}|D+4bhT0p@D5^CK>o{Px57aZ!8FDBPoLcqftS zhZE`EHLCZl(fd^UP6O;%nvqCRL^_vR95&rH-9CEVz8RFK4x4_PexIU#HzL)&Nc+ma znqvZyBQ#MrQ9pH2Zv+cF6%G>;hof-%2(i`72IZnk`ewj8VdDSEV>Jey0O zy-Vq6oZmC6TbXst7&Lx zK3tBZZ-=YWezUooWk&`cg|07P`^_fQZ!U9P-|W_2anoLLH+kh-SiIi*`MBNfYq)sK zxY+Uj^1*3<6Ex7%G{6ZO=qE`79MeGWq=BBGfo?QtG}to@x?Tizd2wa-F$fwI8Wb87 zUIY|+3e3&M-VFi`0u2H$4gz0HZ~Gap&K4KtoZm?iiv_zf{;+pi;F zyn}mTh+aFN`pxw**_mR9o`-d47>9-pLk8#gwAp-bApa;BqQ?xOoeZG~hEQWjW5_Os zjCdfY*maJQ-(qpJw%^2@hvu#7wd?jV86FfgINs5>0}b4fG&F&a5j{qr5r4rtwBK&- zxxofCp!xu~avDrq4WwbOyn)*Shkn(~M))PT!F%9F-w8MLaJYfJ^M;1Mb$4I=t$X7_ z<3i)Y3*y4&nqbj~N-A?dcZ~>*2#p9Yg$UCOm`z+A%zg$JW)BOA*_|jd+lrJ~69D`=Fy?n?yvDt)~zeSK5GCr);*hVYSK9Y*I8sismXs zvn@q)bBaGm=Git(&vqeu_T7KF>be*Zyiq>8RAK^6Mb(he8RM(*&iw{|qwNSiVfEhH zpa`;}syK&$ChJHkl0>O4Ge`MO9&{`@Xq8;nxuBGoZNSub)yWahp<+d_QgLU4#eyI^ zI;x^sf^_GzjFpr%5F=z)w2RiVLrKo`qe~EVRaauR8VCsj0l4H{iqTt@Z2}`frc(h` zuq6fWs-qCBG=)lm6mR8E?Fy7RTqQNN984wyjK$BI)|LS!eo8bY@80- z*J7eqHn>uTLitWojbv05^J&s1g3`|GP>W8%q@X1zbkYT&6xy<98CVD809s|VrFh5v zaG*MXicv-9YAq@j$(L$I$^{%ou6^bJolm~9qa1-O1XamsDL7crIz-mcM`4$kT#4FY z@UbeB6d0L=gA5SKhapOLruY~`lKz=7$-Ik_1QVC+C|Z~MDC#J?T14Wqb|sU{i-REy zGL|ecmVSz0I-`@bt`Zia;xwef90R>=R8GGrHDj{xUzONpf4Z`*GKtIc`k(#|gdD*4V0|*eCW;ru!e{72TMTS^xl}rX3Xk literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract__d__es/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract__d__es/why3session.xml index 662879e21..2d10c56c3 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract__d__es/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract__d__es/why3session.xml @@ -7,18 +7,14 @@ - + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract__d__es/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract__d__es/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e64cef6486bd2c85e90869d75a2d0c283ce1e1f4 GIT binary patch literal 142 zcmV;90CE2xiwFP!00000|2>R54gxU@M0=ltBlwdzaX~?Y-~zNLaU9Vgt;9Cm9#$)D zHPV|mv) - + - - - - - + + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - + - - + + - - + + - + - - + + - + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract_intermediate/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract_intermediate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..848e8138b573e787f6b2fb8ea67c23a0053740cc GIT binary patch literal 3304 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 - + - - - - - + + + + + - + - - + + - - - - - - - - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract_remaining/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_extract_remaining/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a67b354bebd4f8172e72ecaeb71e1d32144dddf8 GIT binary patch literal 3425 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 D1I>Cn literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert/why3session.xml index 97d6c5185..4a2330c07 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert/why3session.xml @@ -5,548 +5,582 @@ - + - - - - + + + + + + + - - - - - - - + - - + + + + + - + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - - - + + + - - + + - - - - + + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - + - - - - + + + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - - - + + + - - + + - - + + - + - - + + - - + + - - - + + - - - + + + + + + + + + + + + + + + + + - + + + + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - - - + + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - - - + + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f82e4c08c949f5b2a7e5d845e0b6f85b79ef0121 GIT binary patch literal 12047 zcmX}yWl)<<`#*d%xO;GS*P_AQt+-2ZcPF@8fnvd}6pCwccWH5_SSbW6*1{jI`}aKO z=S6bP>?V`Ru{n0X6Uqc+nE$Sq-vvgl8|@!2wr`maox`^5!|u>h`F3C#ga8p+oJb-3 zRYq;$UJDBOQzs8MN4-qdN_U?Urxc zl1RB<#CVMtZ9~Rg;!BURHx82*ra2yV)3uve^PP+Mdxr$G1`o3ZT4;!}1^8(W{w`FA zw-=eM>5cwvXddkjf$Vw*>KI8SCg|`lqyp1#A0dT z9B@R?bUjf)c$mbxF~b_NOfc?ay1LZgOL3VA@BifhT{Zf3ru>Wohph=!5+IBeu9iG7tFW={68g9IU?m7`i|iXSTbm zyk5a8;pFl1?{;!~dU-Td>Ir(gZgr0jmH*55?@#dkBmZB|(SiN!r~2vbV$77?=Wmnm z6ytm4LdpIar8t)yL~Q+e7B~2Vr4xB^F$AT#nawGGVx)L|%ddMkgM;_Jy`ceT=K+ka zOtqhh|HYvfoljB{T!dz%um)^s>^@(He%pBY_cQcU{pHb1q2PWAfy9CB#&Y8B?)ATA z=tIh(S}1zar`b@^XaCA`I-ua?kVwt+-Q>~MIM!@40I#lJ#*u3kXu1WQ8im$F?~AJb z-Pf$MbZ#E(ays$|d`e7Wuxc9b&K&=X8MCH)CXlBlP_S0GXr z`|pUX0d8mnbDW@~($$!_P@axJ^uBr=_8>X8dq(g(Ni3FOjqyIhtcjV*3>a5yRd~?p#pUyi zbLJ642GdqbqPx{U$|EzXef**b%k=`E@^& z%(H3B@~pxVU!*FVRxO161-ZAUcfZ?`vd#70z4Yf0S>ivrpHJv*B;0RY5x8ajkN{+! zqbdn+&`O2{7$71W?n{9|E969RS2X+vGby`{cn%E*F69#avth{3Jc-zhwg?ieboal? z5F}_B?#JIzhYBzrynBb!14FnEo{D(mXw`3ToC*)up!K%^nFtgY8~=bjq>75^fJCOz zaZ_vQsU9anAx{y)a}&EiKZw;R-;Ex45VuNOI79IbPJHhJbT{yX7WW2cbY5OGN&FW> zKy1doycng#o(nn*Icsfg7-bg=ivC2*sH;fPN-+4Cr#$i@xK|B&zw~n68loP>5TYj# zm+@7RVwS-@RrShd#mka!ys}jBGbken_-V+LPb?7bQxGs`h=uER8y-CvOFuqAeletYA> zsln9cbKlqXi*IfS@e=X8;>bqh#-7WCeX~3nw!MQSBW4S*eq~G#kB!zK(r;sMq~2oNp;lW>)YH^1m5b<)svx-|Z>qcEo6 zSW{S27&Bt+d4(s2y>XQ7Q#e2U1N&Ry1-bakVB3YwaDmnc%kbysDaUDy<(|8~`JwF> z`#p7OV{YS4lJm$wI$p4^w2~+?HTSG}Hhqx8nq;EXdA#ktu+QbuV1h)rDPxKq2iSy@ zoBzytYC?#$YXtfI`skT1M%>*fBqxo|49D!A7nXLb(bGDX^DrX6^o&$2o6`!ABV(c! z!$k+=|;0C~|@}0F(6n$;u7G5hMdczD}@}?$s4r!i6b5Q4YYG zjlzehQN<>}4X_@Dw+mBzHZi)o4yRH>1-o>H6_D{}YNoz&GhvFwi&Y%~z3TI}qEe&v zale8@mGENmV5#-Pt7Ba7Vr@}ifg&vg+yPRr2E5^6+eoI0n>FCiGE7_DKs-TKJQJY zY?Pz+@wtNaTrVSdyen@r@#ffNgv?WsW@`%ajyKoE-Y1}xUQqkGhZkp?4`*8;c4-*F znkmKX`PXiWs)>)p?Vl_jDm>Pa&s)Pn??|@J{45$duV~UU?u%yWLlg*HDp1u6j6#`F zD%_*h2)>a9D1Q6%)%XezfAuuAI}Ndb#vp6d5sJLb!V7w14f-h4S7Z6t&t>y@XUWX+0TdIes1`uiE)*>xq@`n<1H2bVp0fIa4d(>vi<) zAl6bAq*JMW9Y;qZPyW1~g1d1z7%RV5@@3A~cabQN22MZM|D}I z^6-T_rkyThT3tbio8dn09rerv%BAq@!x)OYhuT=tG>U&zK9y^q`XBr;zBlbaV4?us zQR8+As3MxoUT(lrO3Hy5kS(&(AVev-@vz@MXa*GB8`?=zN5V3bq zZGVYI^3kS6Wy8W2C$PG&rn*KLfu3!3GvCSOWARvWT3f^MTvdYP$S`u-Vc)fJ6Ter< z8Pj>wPRKH30h^(i`pWH=4x$||qza0g5x-hys5Fb^ESXs>AFnOJ?3l%^a~B`hN>wFG`JPNVk~V zW>jzPezW-`nJ~(ujWu?6R3lLW*2+I%_@00x$D-aoVE7$%>qejuaPd=JjJ9e2v+T*- zA4|>0eDN5cIuXv0``Lq8Ug+R9=W}`FNPt2*W-1zY!&I>QMI0p&R0%44bD+5kmtJE>;c{@?)=8JCpT| zBU)4I8%~w=+RboP<(ta)n25zuXsr#l8BkNN)l&Lf#G@{#>c#`-G|*qLMV)D$VT2v zkENPbMR3QF!B(V6WQIsYn?asW6x*x>V(CbSYONwyMgf=B0>qY)9bN)s%9fGBf}{ts z4Hn(Qkg^Yv`x!}XvlCVC6Ht|_8b}C82wVXKRtPIhTJQziwp{u6=*fLMJj6W2ru@VV zTsaEwq5$8bF+@>frlQ~IPe#-H@6`8V`NF`ya!>m&sYvsw9Rk+hdcS+C>MM(`57v~b zqBg)BmvekaS3~`J)O+F+D|4rf4zg8Pv{h)#8$G5TcMj3+6d%V@RJ&!)cfR1KyPTeE zp#E@8=#kOv51($8-OMa;C%w>mFa5QB^`oQ0T4o_u{d8OTwy3-I}=6pfAcX)#ZfQQ5tJymdmRYHrM9s%07t5wk;D2@$hxnk5ml zOWNKMvxBxRcNtVR{(ae)Y`kIFv246S*@|rZfAdT;4LB!06WRPo;Q6JRn=rb5hH9-( z)djbFike6Z+qSetjD%NEu|xHvPx3RdO#2=)8ef65>EG^OD$)AV(cCaW_&Iqs9NN3X z)e!rEmd<;WC0`~X#w- zmQIF)?QKi$*!d{z-4=v~wS zIS;%DnDquJ8}#i@LtkP>r%9jxzXNhboscuM{r=CtZ)7j$=Xv)0=5~4pmnnIpQ6#4) z?5>0Qi^zj&I zIbLAmE-hG*?&9Wn0A%wb%b8M?6{IwKYOi&mEDLAP&Dh)3NBT4$tB|)GCrY6BUWVa# zF|$odyn0zXcuAWfPORvDPM!Z>TTY-J4(bYv>oEQL!B;tiM<~%z*=#=Vy z(23@dkN(BY$ui_E$<_txsVi*e!Y2aS7Q>c>i(1s1Kk&Y*K7t4cAZJ6o#}@7y-V9oj zvsI8$m{_Ys7$h@@B_lz)_)yT0?q_Dol%G~jS6|&VJGl)d$|HIKEOS6y?%XID*+6kE`K=tLN3c!r2vzSv52DXu->fgdsaMf=XD#gf&8$QDr$zv~_@F`aHzh zP4rF&@&PAqt0&g_n-FyFrc)&jPs8$VqA)|tQhq%pt7H_jB{^LqWKYNIOo(pKo^WEu zI)`j9XMFCgT!w`r_a2{I1d~90WG~L(GF_TjH-bD{EpGLc%A*)^vz{1D1R9+ADOM>9 zFDA!H!7Di^^!bM-(kInT)L=g@i9Pr=Pu}13gCBGM5Jo<98K>Tirt)t~r58#0Bw3L? z5?=YtbHVlnxm>^@1z}+M;UZhYA><-NOo9BOK-hRxP(GY{ARUwrZwQRSGmg-ajj}go zrZ9|v#uJD5@Yq0gXCe9LJ=3u`a@v%iU~*!_n_5X&VvUafYvA;KuJdSaB(QImC$>MJ*I1g7K{w_sB3 z>$(0~IoV`VkBtUGg5mw&7Y2)OvP(}Y6A_)Vw!3)ozR%CT#2YOJ!ElUycJInj!>fEm zk&mbB_^K>87+B4*^3boVIycT{oqKN2urP<~2%%4(OFv0M+a5Dyd4`)(s`nIs*L2Js zFzeyqU&)w}l24XA9Kr}X9xUVgdH}Abnb!FlT}?Bt z^DggaF6eZV7$&crvdyk+KyCfCr@6758PA6pvdmfC6hdu#j%ER#-Eta~pn%ytc7iaA0>f~nxD(cELJ^CCW&H`s z0|U!C9mzE)_$L9p#Q=QnVYu-ieC|O%0+Q%B{5K+GJc=^gF@{1uOIh94n3e`_gKVHB#uc~hwObYq_pD3 zi6}a^9*4i2G2x4>db~*jZF=#jlkDg&|1vm<8^)(+?sqMC=)6FihmHe?E3({QM2LGs z+~bSVTKG9DzKE?QPY9n}7_*v-qyI+}{mRLF0tww8j(#;c8obbmIc`9ok8j+%U_#Vp z7o9bmF%O{+Cs=}+5M6BK%*4}q#PN%2Gum%Eis5+vW#P4`!nzJMEVHSG2H)x1l_#o* z*NsA&E9(DM`0`NXVyM`(j9;xx4orAuT;DQPIAbo-BbM8=c%NQzNcA^vYz8IOU5nX}%nTKzQS^|RGO(CP zRY3-3Wl?6se&TmgW(!8Lg=-3ROr(Is)h?opT;%UV)u3oq0I@7mQY7WSeH|*X^eDYts3Oj^+PeeQsix@O9Pnnory7TbAR^MQ!%HnsbgG zx=da9z)FIfje#PIQ9px;5|C&hY6};4sY8YLdwncULh_gx-dv;-DqyuM`hMjDISE>J z5~3k#t+u0;dII8qqa&hTN0(N@_9;ijAb-X-(ON5m9_OD_ZKRpj{#R~8mEJOjWi!3FmbHCB z(rxojdcD&r@^6Q8vnu5z)z^cTgg6%kHjH21f5JW_gmln zYy7KAj*HFK{uuEdsBG?!?gkE_2QwoB2e#vc9#q>!sK>%K3lf`h-J<^Z$NkAO34`RzOA@X+GzlQUljk3VD`*Xf;@Iac2lK@Piaa=FlMWGIm5S9nBC5Hnn;hR*vE_Gl5gBS71V5@BI?R6;%-8EWeACF&E7 zAjl(WBBPqBxJG$}W*q-wm5c{4D<4~y{z%jL(oFzc)QTq6Py|PTybyUQ)MqPob>PI9?HYSypZk1F5(=a^zGI=Tpc({B`2`b2_M}28of#T<@qEl6j!t0 z_#=f`#Auk;V2F0XE-;QiCNOS(;AuPnMj(39=jT6!cRktO*zYzW5P3GYy#K|h!A!B& zk;V+5SAE}ccY?n=e}~o|eAD7gh68@ls@|=6+kzpW1{qr{6+_JS>N1qO@6HlR7L~g{ zguejs+k=tf5^mfJU$^~;55`@Nd&1n( zgE9Jt(@&hItib=7RD5pEF;Y}FJzsG>zBl< z7nYk)yf(aOsfu-!UJ5uU2`tlx_Ds4yA!+$Azie$B^8jPe#>CYy3Mk`T*I^;}?R$!V z5q0Tb!RaI1oO{yt#hob|d*yds#zc`k(x*D$*=`VxC&(H@{Fs%rDHxs;+!WUSazZbz zZp`OpF9u9XRzHlMi_l+7&Q`*|t2llk5G;m}SSt-nGQy2BWPA$Irnq3BXuJAHLYd>5 zd~e!#eV@JP=2o?0)p~GDbnbhr82GT^6&T3e#je-8zCGP=aWwsjJj^wj)?M@797vtt zsyDXg_(ja~TNb~g(Jw=ze@HJ98xtj;@i_~SI~}5&fSRbL+>}by-FoFsVqfr704oC+w7uTr9Wf zEC@K`f&cV>T@zt;wAMmIlWgJl?e|yE<)_b9nOxvy@c)%0&0vE3V=TIw>e8i9kV$br z>2L<&OU;gvHIJ-)BKWV-zIB!Aq@$~0T;LT;&Q21D!Dy+(q6+8dI$`-2uutcYMwZ+K zKiJ*0ae~h%#Vo(%1X~XWnAw3k&f{$D3jqvi<3xIpAsd_1&Kecn_0C-z6jyd)t4tQF zf>Hs;?pj-2Rx!H@9>3N*nw{xWCB+eDBF>sVrP|twz@yxntlGNBj-^Jgji&b~#`qtR zXr&CY0p13vr1?DQteYOB*6h^}LcrBMaX3{&)bU9wf^!HEznY((3`M#_$HJ?&uHJB1 z)P+hWvaMl5!0=bi?$^e44#OWh>7?s?S=YuuGl$(=PGw!BAHuR7D*fib&p3o_ACxhk z&?a=G+)oTQ^?0@>36mC7S!)4z2P(V$YPuzL5se!ijdYGXU!YZlq6&in!J8iM&B!Nq zOa>E|vJzWP(N>!YmI1PDy1$}ub?x)HFhA0IZ!X{=N~3XCfYV!Cf~{1TS$5e&IC``u z^p}3Xd8e2TJOO>|=4rTCE$TkApAACraF(Q`@Nr$8P4=Ujs@?-8<*klC>GB(XVJDrS zM_R6;+oIwl-knxTE%6OW4Lq! zP+%gp@pe|x-4&duSeUcu&SrLEwm7v(YIL;MjDtue{HYOhv{_C6iEKnX+G5@yvP1*M zvcmZ!?O5f*R7~>^S)VV7CF{fF$L~yNEPb78{K@C2e65 z_9t;#8g+(SN~!Sa=IB}isS0u5K7VKzw8qmSWMcl@&En0v-YKiRC(mg>uRBgH6(C<7 z51dFN1I#r5QX*jB5;YCi`yjg0OxYZLqIU33l@&mo4IVVc0X|cGJ!FbYTT~hYH)ph! z`yW|Va4_;Sp+?wPZOLh^@%rxs*qCbJCn{AzkWljvKAX3Hez&}Z= zY5EB`A)!a}1O1H}-`R_YA@Cj8b?-cyR;=o-VB;G_vbzeU3kbarF!;=4$c@`rLJ)0^Op$3GVDPZ4JAeH$3FR1I<>$}wzG2U z&mo}ZMoCfra_okM+6<16F#9~b!^AJ!QhB*&GjWrng3|x_yVNc6$=)VB1svRn@rSP3qHb#(dd`f=zJ;!-bjM5MvzE)%~ zNbz|8U?&Tz3?4BGJ5O|!{bMt?X0A+*E==Twnfei-Zr5Ny9nBmy<++?wsAJd-K8mZZ z_!*f--dUFcLhFoC{i88rnZUJxZM=;1z~`VEL5O0l>IY&?;3OKR89K4EjEzAO(x5+o zgReoGpB+iu2SmfMK^t3WS_>d2Dg0_~0kt=5UA_p#MT`t5hSA?kCVKGdlI{jr;Y>o^ zOqbUH;S|Q$O;uJVrUUO9!H%YCnsO-bfuly30baQ~RY)SrAfyU zPs}xZ6aWz%Gx6uA*_#nkP)3?nICzC3>#z&~+_JIPAb2TBa^=3z`?)+?9`|^Zq*UrY zJZP*BehE2Xu++z^8#If+rL7;XZ$r3ACmMLO>}^H55f6b z-@uqo`HMKyPx%BX$=V9L^ZX<{FwH56cRW#Wi<4m#A6Z4CjERZUq<{65h9}5+UpT>v z_OXU>Mm!^JGO57gI7F)9U*b%qIekxC*7UzuCZxvgbQVQ5AqzqrT4iDnqM7)Kh5(2* z7VAa~B9ioVs&2aS^VdObDV3j%!IUhfm0r;+`9t6fHNp1oOVCsiX_Uh1k{6)?Iw8X4 zM`zi`p|WGF3TO=yl`#frQURCni;5TJ+To?4ev<0|95TPxWWbc>qjWxPq znY#t=ET1+y%z{mkGeO_UX0G6v#r$%RaIpR1r; zWB9vv1Up6we$;i5*D&J))}_~zB%H+EbYqlzj-se$HunrEWe0)GrN zS|^ywP$hz*`eG7S=isY@ST~6KaO11Z$tWsd!O=Mw$&{TgJ4DZZh}-CCm9C!% zg~Pg{sIq*0;qOjDF(QnHMwqftVteuocYcuhSax=4mbva+=9){oA=n?cfTL#Zc1}wx z6R%{kbfAC`#LwjTY-y#{MmJIP8|WN}mfu%Uk^jghnIgCJ@5Y9=xQ)!I>VF2WS#YVM zgK>Tj{`PL4z(Hh^mSl|}MQEew$=5lau@ulu9gMZd#W9D3!ICG!AMVQd#g?L(z1s^` zNHaGmaf+qX(D0B9Z-=p=!v8HtjD4?BE{H10EVIUwU=M#B?T8@9119DsrJ?*yJfP_n z4n2>ZI>t0gVUX)PM#$#QV+JA|rs|>Lxy}r!d5RoPaOgU{~rn4%DYJ3-^|?P09~ z^QqX62>^0EW-*#+7#}{U$~%lz$rt1(>pN6vm=YjnS^-LSt{iErLnhf#Ki;)h9LPlG z&V`d{%ioD$43mbvsJ+X|sffo-YAD$%I>&_Bml6wlpJ19;N(48w)8OsviD)bdnK!!F z5hx|;CsR-UDyJ`H<;hJNyVO`Cb02ZOW)!!Bk;dwayp}6XP%ZS0ZnrA>ld@VG^1!^% z{T_mblB(Ah1|*a5GY6y& zI_}e3<|*BbxEWI$Y2w&p(`R7=reGaD{K5qgHA$i!@IeT?QPh#bVjS$P(HG`%&3{c) zpaIul9^aL)rW#POfw>z1Ey>&2&e<3Ra2td=h@Yn%M2Rn%TbxWH=W=r!1^9MQVk*CwU$hf9UBaD8cEye$?epzf4_T>N z{hI5ejvDr|iasV<3sWHZp`qwyB;|0QN+`~gZ+D+AAf-!9Q&)cVBMud-{IRbW-FS)+ z6V{Y@ETEu}XBYxSGp63Z@iZ+^O=lUb^* zaL6-S5ua&!Ne=^iJkiwgic45K$}A2hum?|3kNMnwcXd%S!DvDJqX3n77GR{1bGeCy<5B3m;LqORq~R=wwF{Ou#hL|E*D1?As$to z0V2F5-6OxdHM2z&0!+El_ydSFX+z|Ca8wip-fb&hhFwUTFywf3&DKEFO9 zg6qPV1^Jv@yvdb@x?&sW*?kJ(qjoW;!ys5cFDay&3Daou%YmCPsQ6~E?m|pk%{TOL zg%aNEsA3TV1@BiQnz;>+kYE4n1K)&+!Jf)Vy2I}x{9=kJrI1ZZ4|i=&0skQO zHtRhRtk}yCoFJ4KvX2OYI5kmT)Eo$$U+PWGnj?he`l_N(`Z@c^iB~j=i*-OclB?Jh z%TP-US=S`#{5a(8)X+5=yxU - + - - - - + + + + - - - - - - + + - + - + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert__read/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert__read/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..96bbbaa3e33959ea77d8fc8ecee84ebf6fe25f41 GIT binary patch literal 512 zcmV+b0{{IViwFP!00000|Ls=WirX*{eb-m?2MQY91)G9jLIe9)^lHY^%&sBp1jjAS z-&aoBkkSq8c4@l}3-&PBM>EIgjIgE^epp~%zGk`VvFrzY=ySUrH(MH~J#s(pCR}3; zhZJzbEsi7Zlf-G$jXgHq;(t)_o5hh|(&w6AiT-eAz^m0i z*+Z+OuTK8&624&m|EB!S#l6s6GNyT!OU*z2`!>@V-yg>~pWFo&{sIeEKjaAqIXHL! zRhloXB}5y%k=X~s1+&SJyO4_uft7y;AEU4lEf9n3q=imLuRT(99T{LKAS*};XECxf z)D=&rn1GTrIEB%HEkv<`lwg~qM=yQuq{@hjw9HC_2hG+=tRO8=d&ANYV=bk)Xr<8v zJNJ(TZ;Y%pi5qK5qMU{?I3>jtDS&bYjD2Q(z9LwVK3;+Ol C>H3lY literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert__write/why3session.xml b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert__write/why3session.xml index 62ccbf8c6..18e4819a3 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert__write/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert__write/why3session.xml @@ -3,46 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - - - + + - + - + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert__write/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_6_modular__types__u64_insert__write/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e2c9fbb78ca2babb23913860651c5f62d52bda71 GIT binary patch literal 585 zcmV-P0=E4hiwFP!00000|LvF0YU3~v#_xWLeSrmy{tMa#U&01@TzoZSY1A4LCpg|^ z^Y$w{G&s9#BcXlhu@wpYYh7a*R?OV?Pg1Dx5rqwyAD^F zhG7c0i6yoz?hA(9rfg}80XrGwzblW>8n z9UZ3qFcA-ZS(CwwjMm$3U+$i8OBvQp*<$lZxT5BDTJXg`A9}e3EI#Ko zcAu-*Bl|)>Z#*&toLEIod>OnV7Z0P-PR$0hZiBz=b~h+JICd&~A}_zxqpuw>2ky1J zcSm<@@xngf*TVFn)17R_cRq=Emh!of&wf!R5Wn047X$t;`*H+#d7Q(I^c9l6yFV0E zh%xIM_c3=EfxjN^g&njN;)eZ&c85#){X=8VXL~=NGerI-cjVnw_#^K|Wk3I+0amyf z8Ng - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating/why3session.xml b/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating/why3session.xml index 1f109bfab..254083c01 100644 --- a/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating/why3session.xml @@ -3,290 +3,268 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - - - - - + + - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7bdc752ffb1e259c8e14424d19e3a011ced04abe GIT binary patch literal 4539 zcmXZZWk3@QqlRHZlnHK3qy~s|2$PnOkZzHXc1Q@)qd`I(-2w{IC5?1SN=Ww@HIQ-$ zj2s>N@IB|g{y%>nrYKT^|H5N4(9ZLXslB^L2HWV@1kLG1HzhIzO}ld5jL?55JxWU|>B)ob1(Qjb8ks8#Pk)h&fc}PtYqw0T)gvSe zK4i}9eBO9@K5cN;BK2(pJV26Jl=(co?^6czG0Dn=Ahea&Q?-Brg~X@yqwI!{CqKV86Ppoum(W zZ}ne256$qrzjw|_c%A&op~b|&Cdna9Qk3#3rE{t`j`_6E&6F!@>U(FMy~}WuIwteY ztthKLu~J4l^mKVDDiw9R!ha9;eNsF$%(trep53tRu&pJX<7kH{uVe#Z`B~W+xwOgW z)~^`hsG{{?eqc_)^^R*0X-&@%OzR4ZMJK1t9nJVHE&j><=UO!UPs%?wXtAl5u^S)6 zXWS)zWCS!_3l(0}M*(C~=pA56zJ436^5e1St*blsSL8821D$EyWPZr`f3XJsSsmuG zsnKy(k@Pd;yOzU-BZT5O5;zhNEN57k6Kn*^YRU?yqO^Q|?wX3PlX6Vas@Q=(DSV0& z!tGqDDvn1aEhq(EB;46zHo9HjdZJ9XJQT@v(a8`8@lCe_c)szQyD9C?7 zS-0jh&`V>)?o8$qE4ZK~E=3ZH%Iri>u8388{zz*XU#TLHeZtXkNH})6blLt3k0T;r zz~WJvhH(6Lgg!|}R^^M-*URQ6nz2(9V>k9P!P%k^^{pb6<$K)sxGUlwTm$1L_~x1d+}7W_T1%psR(b63 zA-BYoQ_Rj?z6uOnq%dW1lIw<>cpr|}d!COK9mEzL5NAq1v&@l2ZfA(SmnCl+Eqh^B zdWvcj6xpcOh|%5M9tBG@X39Wo->fw4`}N}%!O~Xu$w=_3op|R5*55%R>)!vUBnzBS%xydTqp>u&cf|>>sa= zFeHs0=rzoLc~QRR1on54eCY=Miax+321HnSsWhs5Z8MDjXLk(0!c5>fa{T|xLIk11 z{gzvMilJ9qT_BbmGfoFRTRrb5dftsZV#{5WKiZu(#x(n&*d04Ft=jkZ8b)`JVd~_L z*h)9`x=|;CiW47)V@qh_j)zCg4|plkX%$MwSlL4R3+Y5I7`<-y6iDCeQAeLh!TQ5D zy}A5wddaSqr`|(iY5ol+qAd;QEZF%3;{}I5JxQK?eM-<7I)XZ(k}`1U63}hyH{gcx z*=_$=2xQ&d8<+8G{!LO91`cc%G7W^S4^~SCx0Y)am^J8^Ckm7A;~i9eQ`mgt^N;SO zQ)&(FTbsC)?r|;N&T1#`+L1NjW#}9w>eN$4lYso0ZBTX=mwxxnC`3r|*~! zHJPHm#Wf5K&WjzQV};D{d^Uq!QwCAT8OQVf&QD8(Z}=@0%cxLkFr=c>ZY*hT!YuDs zT^JP{6&uKF+!(r0y`r{g9wsKwxyV{}@@z^m)1-kpA7I@fZP2|@&DP+W%T1KN;HF2+ z#mHY6%TrUrl>+E+x+h6^X++wd)RMc)UQ`L({d(vJvlA0G0Ds&>o=*Vx3tiLZh!h)Ic*;)bsoXcMajcw1}IRAr{@XZVJ zssh?m6!v*hx%@=`g4wf~TY4VNf@qsguTJpSxD))@71QJkyvIHh-mrDs==;N92b{PE zh4@8?z@-Evu}H(z)!B)i~h>mjEcbjc+Q zcL5CLuR@mYmxr3rrG8Gk(eCy*&g(9`;DR2c8|ta^)&ryr`)!gN$)rT(Tx3_|Yo-^0 z$ySRFEdlR3YBSMOL;mv+m&cFj#kHOz31j|pA}h3}4dtipS+=IMBw1@9)uI9Ej@GU$ z+pT3oL2WfJ1_p#RL~dk&bkW8X8-Zd6l-F^A<{#d!!DBQe(=|pL1hIR9j%iIkXUez( zF5Orsf{ud`qFHa3>7WeH=xz5=1go;=oItHE{X9KLX{EFG*7K*2Y5{V@KS99Y%~a9n zwv@rWh+f2b$D{{cZDkH!Lo;HQZ`a)ON8}NTVY((#L=Rfe!AJvop$45(jB=LX%rQ$$ zuz4Bo`6m1!e1jr%0|0zUJf224p7{&HX5uL%jpOTRKcP36|C07a-`@6}tvID|QPsMs z!(T%FPku{f%K@|62fkg*Qt%f&s|S;Rk?8exJJsqZc(~2dHP=+m(`ZJ!h1oF<{9>d0 z67bnk1_+^d-2|ZUOH!^>&{|N4Ts5lZZ4YCQf&Ej_Td~fNd)9X2`p&`Cam)I$efIP- z+y6SP8XIGFteO9tyd}f5;A6V$B7L6}XUZ~0tCEco41zrPC-&Kk#+kSfGKU2Lf7*bn z39@^v@@p$IQQufC*DM66RiKL#ki8yTc(0#yXeR!{5Ip~f_c!IUSWEO@n<+f;}0Vn{-!;2~`6!lBj$xwZYOd>${EX=)Q{ zV;Mr+m7gi>J|lb12A1bvNMfsb3Fv995qX(0VJcai@U)-yjituOUYUOQsZ?U!O8w&j zP7Z(akFIjimT+EGuwXM$Al=<2Xks7qb}U-oH8#gPnt`1zE){@~>u%P`eR5kQVdCv7 zl~JgYnoe~8PwVmr;F5=QpFi$A$I+%U({NK2IP9q^>#Of;MYLfT-dD>}l~xJtTTxn# z-peyqbEl9%u~V{gs=T}Z+PXN{yw{$|yXc#hvMMQ~mFhSCV#ezTQL^ueF0|qv`c%xj z#t&Y_e=z^#!_*`!Qt%ioHL4J(fEIUR_ktj8W`*czneT|t$?{TBR0^ws3wylD)< z<8Df?tP4m4seSssibH*pzHf#`0YB>LfD`L&|8fbEo%qn@BRbM6jMl4brtK-keS7{y zciT_Q-qJr=9>A0^d^Z=ctn1Pm%h(UC(ndQjJEwh|&<|$FRhG>EAkJ(pcjqpM&!vKb zk4L!ri(p2>xX~1Y8bxekaoC|+KCNPZBx=EJz9%~barVij+d!jJ6QILq%VIojgIo^( zPK$}BC%c^CDmzvZwAQA?>aoX|XApU5+q>61h72uBxL79)O60^j3(F7+*%zv1ki6njL7RO*~AOE~OM+sqNjBC{% zYJ60>6SD0M7QLmM9mD1x0cQU_6H%3729QGQ(L~7)JdyxEpom9AjQbJ_vVV*^XWazO z5rbJ}w=+JN^W91enE)t|E~5MZlL9m`ymyuKXP0HwxVAsFY6Q#oN`Fyo;~7pE>(;zq z04c$36Qc4y>r?*p5XmBvj^7}9*m`?6C44-EHzrYvlWohicFmG}0`coP|7Z|=r>2AX zO zK#63Pp#WMF@_51&)sO-P_{@Z+-3-fw z=`|m1L5YW&!v6F*?`eNVP|!-C6!OvH!U+0-DuvgZ;g2+J7=(IE*k!}|#y;@}$yz#S zkvuGKPNwD!?)6|~s2MRLdnCg4oGPw>>-ASw^rtFviIiFvmdt+m-e9S%>2Toq2(F86 ztA%vPB7LZZE5yMzyIDm{KrueUfQn}`o7P3=OSaT15k6=;$oI}7$+|a|xkr+CQo=o; z$Ddmw*Ed_b3`lHfQsSDlp`+9c=A4bz2)ZJYI85O-jDB~jtKJXIrKTMREQ|sHszV5P zC+iWdy$0-whZS!ZA#ku|h1`Pu{%xdu+@R_2Y@Ms3&Fl>8P*D6m1oNVWd8jv?MI=RH z(ZI_;eTGVE$uHx}L{h43V>xV7h9r7baOXPpZa}B+d^&A+c_cOR;<-Q>YU>x{YE3|? zWcU}FTT1IJ0+m+L_DCmV3d2`!6#~ubgva(g)Oi-2`)X*CMG%l0%UxI;HO(#8zv1fX z@)X1tDSIcxoYl*pJ9-BqTTelZ<5X}}E0!Sqm?H49bGzcp&u1W!kO-;*Du`51h9+%y z3{T&^ZL|3z>#$?$XgHgCkTHSK5L46Yg1N?bo#Jl~ss{*PMI&7_I~&O$mPy^TA7>-@ zT60CXFakkDviE_@{84ZPQOnRHb}fYEyC!V`HhojKPj1gi`&zXtTX#^#|$?ketp zLn;mmx}LIz5q=syWNVJ4C7k@Ecw~Y9iK`Wxc9;VTB_QL~xwxo|;544t;>3TOn~9L% Ef8TfNy8r+H literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value/why3session.xml b/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value/why3session.xml index dac4ad337..f76ee37f8 100644 --- a/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value/why3session.xml @@ -3,306 +3,252 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - + - - + + - - - + + - + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..b658bacd79432a99257e3b3189f0d6d8e0ea456a GIT binary patch literal 4602 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value__buffer_first/why3session.xml index 532562abc..13d3caa41 100644 --- a/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c31baf5b5e647ba792d770971378c21b529e8d6 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(I$^ACZ2}I8x1yZ@$fP;-)!P#; - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_generating__set_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c31baf5b5e647ba792d770971378c21b529e8d6 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(I$^ACZ2}I8x1yZ@$fP;-)!P#; - + - - - - + + + + - - + + - - - + + - + - - - - - - - + - + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - - - - - - - + - - + + - + - + - + - + - + - + - - + + - + - - - - + - + - + - - - + + - - + + - + - - + + - - - - + - - + + - + - - + + - + - - + + - + - - - - + - - - - - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_parsing/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__derivation_tests__test_parsing/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4e508947196cf992c184430fcb99b5c2150f644f GIT binary patch literal 3514 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 - + - - - - + + + + - - + + - + - + - - - - - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__derivation_tests__write_data/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__derivation_tests__write_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3fbf1ff2f400ed61655dadaf5499feccf7f51194 GIT binary patch literal 804 zcmV+<1Ka!`iwFP!00000|Ls^!Z{s!)z3W%>UIgIG@Dpebx)^I9=&8_E7=FyIfvjUF z+6D6OOIfbtHc1h9jdmUAV3{I^!^ijDP=dzwhV#>wziv{$8yGU1nm+j~AOGh29`S#VtJ6gRmG(qTab@jxI>xGWL z({an+`F@l8%p>(7b5E<6X8L_`)8eMH+_ZVc zPVYOx+SeYNFMZfv=UZ5NNe{RG?&tQB-fl1WVY40Eldr~Ayc4L?-4QHM2XDiLxADRr z@U<6F;{-ztQ8Fnp#hV;$@)B)GfvL8Cflpu>tu&MK8I4a-Ih{jR3am-S2OmAwDAj~u zL?LU=WFcw-4?#LPbxysK!~R4ExGCvdcPXHW*V0 zMX4M-O{oAH#RVm!7*%YkVymi%PtHdxl#@)T0GlciQ~`BH2SsclpQ^m|hlz`zpQ5PA i9<=v$)0vA6*=COtJQ`&oB-(=q-TVpUc=QX68vp=iH<2a) literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__enumeration__to_actual__2/why3session.xml b/tests/spark/proof/sessions/ada___rflx__enumeration__to_actual__2/why3session.xml deleted file mode 100644 index f8e17d6ce..000000000 --- a/tests/spark/proof/sessions/ada___rflx__enumeration__to_actual__2/why3session.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__enumeration__to_base/why3session.xml b/tests/spark/proof/sessions/ada___rflx__enumeration__to_base/why3session.xml deleted file mode 100644 index db6e7c4b7..000000000 --- a/tests/spark/proof/sessions/ada___rflx__enumeration__to_base/why3session.xml +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__enumeration__to_base__2/why3session.xml b/tests/spark/proof/sessions/ada___rflx__enumeration__to_base__2/why3session.xml index f92ac8f33..b80547c71 100644 --- a/tests/spark/proof/sessions/ada___rflx__enumeration__to_base__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__enumeration__to_base__2/why3session.xml @@ -2,44 +2,22 @@ - - + + - - - - - - - - - - - - - - - - + + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__enumeration__to_base__2/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__enumeration__to_base__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..30529171456a64b3a1b4c8c5bac3dd5fee53ec90 GIT binary patch literal 270 zcmV+p0rCDHiwFP!00000|HYEMPQ)+_$M-%3j}Ygx9T-^9-NM9fxrrkpdTEvB?zp$7 zRTp5YSh`rT^RxZ8WuiccSmN-7$oYEVLN$#UaVlvnsXn&w>T{qQ4TxuYrotX^NA71H z?|Gr-X-E}AnthqKD)e5ie5UZobV(jlzEMe(>yKZ0rD5jnxtfMA(^7Q)poyD$oDAC0 zvC#e3&fX4FoBkoUzU)c*dl-j}*eG_vJ62uGrj5NP)tP9V - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_generating_enumeration/why3session.xml b/tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_generating_enumeration/why3session.xml index efd30ef87..9f70cfc85 100644 --- a/tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_generating_enumeration/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_generating_enumeration/why3session.xml @@ -3,265 +3,240 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - + - - - + + - - - + + - + - - - - - - - + - + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - - - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + + + + - - - - + - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_generating_enumeration/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_generating_enumeration/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5e4b69d2331b1966ce4ca8ece6dbc9ab0701c872 GIT binary patch literal 3808 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 - + - - - - + + + + - - + + - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - - + + - - - - - - - - - - - - - + + - - + + - + - - - - - - - + - - + + - - - - - - + + - + - - + + - + - + - - - - + - - - - - - + + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_parsing_enumeration_known/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_parsing_enumeration_known/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8c53202dde7f48d9164a6a93890dda936e9832d4 GIT binary patch literal 2885 zcmV-L3%c|liwFP!00000|Lt8%ZyU)GzR$17Er&&bu6{SLUVs6t#DKE_0*BW@KfOdG zN=uHMb$)%Shfh%>O5!wS%W5C!A*ZIgy6UU1i~XRw4>o+A+pC#xXY((1F|+f|w(TO` z{Q2rXQ)0WewOzMp+s=NrpBA^#Uf9cJTwUguizZ&(bYI)$Z}uiOzuI?Rd-B1)v)y&p zVi(b)ihw%TuZwi~N885v?NwaZZgxFy+pD--+Rw3V{q?+ye_)%JcA3ps-dxVQHq4fO zv7G9uxj@C9oI&*j^}<>&oTxa>7LRDACu(-LDaFO(mXFjw+<}Xu2$54Y6@$RQP)*h9 z!yLA$+`AU`I<fXmt1^RZ+ zyZ7$f72CbR0t8*{kbt4l44MKr1}I2Y3#X=xX7nl4nKd2y|{#+$>_4d2DWKP;X53_Oe60 zvuS&?nX&Z97}GSJz)+xZ{vx{)Pjvw2ep_cE|&bKm{gG?3xv-r05J zX8+s!KDGbIq{KF6)R&dy%ht`hJ9~f%Y)?V;lQKKG*M|1jr7hhwFe$m6H5dZ zj#ypvitp7(D=ZGwNLl(fyId<9gw!MR0L8iSsK#$Yj!pM*=SyHyplg<3+419OqF47& zx)(@gR)i16!*z{QRz^($2Dy`#tfaDX#vM4Vj5c^6>GyK}_lG35V7(YQPVOh=b4JP` zYo9nymL4Yavi}!sBTPYg==I*CiPfo%O}zuMKOm7khb$JCF`w4p>u0k~=(Stl-7b)R z)|xkW^V4E2ciMKXG>ey^^|y=V_2O_@qQ95Lx)c4eQoF=1qrE5YbG&Qdon?)p_W9HE z^R9_#U>6TYt5PX}h$Zs8%k**^_sr|xALiSL+!)dag_2|N z(3>9oLiaH@x$Pwq^~*B!C;n$kJHGOOP zzF_)(uQgUztJbi z=)&cDCB9Kfec1~6})~tfB2-eWqQWz~mVxIm9{?4J1F@aEu zOG%{lL2Ab(Q#wUrf>+9+6lqu#&Va(6S}#qKJVYHpNQGIY1QjSmo1{D;TnoWM@IZoh zAY#yj5Fe8aS%@`~P(dOMEEvln2^FLODugE}?PBTC~I{x6i`Su5si+KaqJ)G5WrDxcr<{oPOF#=SB;># z9ccq0fe7iik&LkHEkZRohC;egGH@5104S5gjMA>!qME7EBO8z$9Vv-wFhZA&^>2 zid}@0c#%Ds>lBmsu+T_C{GYgvjn z3=kq{FpX3(>_()Ldl$3-4n!oKr9^{~p3xfU%lJ|}PnM3H3w+JQb z6BlS%Ae={#L2<1~-=b=~i%t<{CC0)LNp*+_Kb=Gn*y+Txly0y=nT)oY8^)MrmSBJh z<55K}t>~ppLnDUTC+wP3$vF|Nri3aQIbbs)dzF%=cOZtDG4u%c2y78mQc8dlp7U%M zg~l;NL(~KW*D0|)90r2TVzK~JAtQp)hFBJe_L4=^g4V}`K_p%~AA`e$%TlayG6X<0 zgs2#eL<+4zN9DXm93d976mJA$L<6@hNsZo@*b~c~_S6Z*5F%MhG)nVC1$tg#3ql%; zCKx3QHozi6B}+-PUbAF8I>89VmCzP5R-s15IRZV$k*dZae2vdi3UiBa;T`t|TL&Ie zaJ}`qA(1mqmD5aW@DvjndBod58ECXnWhsMRl}Zx)$OR5of>xLqj%tC_1S-VL52V3p zFpR8`itwNvi_T$!afC-E43d$<(D#_ImKu - + - - - - + + + + - - + + - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - - - - - - - - - - - - - - + + - - - - + - - - + + - - + + - - - - - - + + - - + + - + - - - - + - - - + + - - + + - + - - - - + - - + + - + - + - - + + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_parsing_enumeration_unknown/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__enumeration_tests__test_parsing_enumeration_unknown/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0d46a16e8922c9dc8a7ee4cc3b0b1beca95aa875 GIT binary patch literal 2883 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 hDNdyq5%ZY;G-do#^F@002{Fjrsrp literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual/why3session.xml deleted file mode 100644 index 88b247206..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__2/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__2/why3session.xml index 2dd0c813b..f2478dc15 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__2/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__2/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0b61b54edb709b1646ce9c91db5224c0b0d48777 GIT binary patch literal 194 zcmV;z06qU7iwFP!00000|CNoqZUQkBM0nLNl7;%$a@yKN_xe%C+6GRJ4veE;-}8{0NS?+~l`zq2xOEN4|Yy7KPgKg7zio zyZSdfVZW8i|158QyzD*nLx0n)v=uUD)a0xej>WT1mR%?kq$H6K^XU|);>Ll}Xenx@ w7#Rr!!^IX?cw8a<8Z^aVTqGakpgBm;+B+9g@e>X36jsQpCxCA01BC$q02kR>JOBUy literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__3/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__3/why3session.xml index cae59cf7a..4de516b22 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__3/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__3/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__3/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a9d256896a11ed92cb5dc5d4439dfbd359b81797 GIT binary patch literal 194 zcmV;z06qU7iwFP!00000|CNogZUQk7M0in5IA;}U#&qfd5RSj;Fyj2t+T wT8XeEqvx5ejCW{w4w_Vw%w-v9_JdhMk`TOCnj%lie22Wd0V{nk{)GVm010hgG5`Po literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__4/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__4/why3session.xml deleted file mode 100644 index 5a5047d3f..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ethernet__to_actual__4/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_address/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_address/why3session.xml deleted file mode 100644 index 3c6b5ca11..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_address/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_tci/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_tci/why3session.xml deleted file mode 100644 index 5d5c34bc1..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_tci/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_tpid/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_tpid/why3session.xml deleted file mode 100644 index e9a004c5c..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_tpid/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_type_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_type_length/why3session.xml deleted file mode 100644 index d8c6acfc2..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ethernet__unreachable_ethernet_type_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii/why3session.xml index a13193333..38b8933e4 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii/why3session.xml @@ -2,349 +2,327 @@ - - - - + + - - - - + + + + - - - - - - - - - - - - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..68ec2aef16a9807ff716b58761e5ba469c9689ab GIT binary patch literal 5659 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 B_qG54 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload/why3session.xml index a5bd868ec..afcf0da77 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload/why3session.xml @@ -3,335 +3,270 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - - - - - - + + - - + + - - - + + - + - - - - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..237051f76fef7288bddb93d63c3a70306cc54554 GIT binary patch literal 4905 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 Il|V=PAA$RdrvLx| literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_first/why3session.xml index c0fbf763d..a05c1fbc2 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_last/why3session.xml index 853f80107..61812f2ae 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan/why3session.xml index 69f0624b4..68bd51e31 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan/why3session.xml @@ -2,397 +2,369 @@ - - - - + + - - - - + + + + - - - - - - - - + - + - - - + + - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - - - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - - - - + - - - - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d40ec9dd4c81d3ca6331a0af16c9cf25850e84c5 GIT binary patch literal 6455 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 RFs2T*_Wz}to}$dO0RS<%MSTDO literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload/why3session.xml index 8fb85a54e..7fe3fe7a5 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload/why3session.xml @@ -3,335 +3,270 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - - - - - - + + - - + + - - - + + - + - - - - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..404d499f9a6d9cc0081277f2a05249720d8ff5d8 GIT binary patch literal 4906 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 - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload__buffer_last/why3session.xml index ba2ca9b4d..b4f2ab442 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic/why3session.xml index f233edee1..26a359124 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic/why3session.xml @@ -2,412 +2,377 @@ - - - - + + - - - - + + + + - - - - - - - - - - - - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + + - - + + - - + + - - + + - - + + - - - - - - - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - - - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + + + + - - - - + - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3f49c6ce53ba9efbcf4729c1afc5ae020e9cb26f GIT binary patch literal 6623 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload/why3session.xml index 1458015d4..5636d41c8 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload/why3session.xml @@ -3,335 +3,270 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - - - - + + - - - + + - - + + - - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a9bfeb8e42122458ac90f8c347102cc45a5cf8b0 GIT binary patch literal 4907 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

    ttDi6D4cGTt!Y$@bh20#1ZvVZ>_ss!%(# z+|acvjto_CP7C|d1DPlESN>|wMUUiuNGC18e=A>=NQ6r&_basJ9i@xr(lbN6t%&i@ zr8xwW;2DH+lBfcuiv~A8cBrZYTJw81oPg=-E&~(OJWwq3DhK0awgXNUhNao0!cbJ8 zo?5E38LB%}2^7V{;aDoEQni#zd%2B=+z17!^|@Jr4QBKjJ}A(E1)jF>{BKMf9+iHr zXqIa@ri$gIrQ_Tzvu!FoR@vSiY3nzeDx5_5Q(TTiV}JxrpUg{i<@I_3Rc>1iOK!w- z_^jS@qJ2_niDE3G!kIv(JWR_?^VZ*NR})OrM3yQCfM9j=+>D>db_nT!x>?gG)(Xx9-kOKBBLn Lu!GKIP*MI5vM+=7 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_last/why3session.xml index aed93cdc9..2a5f95568 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3/why3session.xml index c8fdf0498..c4e322c42 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3/why3session.xml @@ -3,343 +3,317 @@ "http://why3.lri.fr/why3session.dtd"> - - + - - - - + + + + - - - - - - - - + - + - - - + + - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - - - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - - - - + - - - - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9e9479496ec7a4d3afbc8fe4e76e7d2bdebfd8e1 GIT binary patch literal 5593 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 nE%3WVX$ - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - - + + - - - + + - - - + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..75449e649465b012e70c42931a41bb7428bc0bdc GIT binary patch literal 4906 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 J<3te~>pw}9brJvo literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_first/why3session.xml index 3939105b3..9da622b61 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_last/why3session.xml index 6837fc575..f613dd114 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_generating_ieee_802_3__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii/why3session.xml index 9b308ecd3..5068e6af6 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii/why3session.xml @@ -3,279 +3,212 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - + - - - + + - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - - - - + + - - + + - - + + - - - + + - + - - - - + - - - - - - + + - + - + - - - - + - - + + - + - + - + - + - - + + - + - - - - + - + - - - + + - - + + - + - - - - - - - + - - - - + - + - - - - + - - - - - - - - - - + + - + - - + + - + - - - - - - + + - + - - + + - + - - - - + - - + + - + - - - - - - - - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..97222f373d1107dd6a62ca56b8844725d679db7e GIT binary patch literal 4138 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 - + - - - - + + + + - + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii__get_payload_length/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii__get_payload_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4c9f262a5d63bdee4048606e97804e81c2daa88e GIT binary patch literal 1255 zcmVZ8my|UZ_#2y>qNXL*6p8{P77xd|oZl4%HCI$Gs40rF z#%oF+70qK2*7fS9ZqMpfldM8?=lzVU7jr=l!QijWBH@Fp zoa6Y53^2p9bf0=1nstry;uhys96lCp7XM3kTGq6pMYA0n7d7}XWE4eOX3XJo$T+kf z1#|HjgMOe}X`6#9Tory@mQ-(jA1y9TyNtmZlta$X2aOpVQ_$WIrk21PEXh%@wCib~ zm;Jt;<)XjdfBl8Ay2U?p9w69O2X?I|Lp-r>M)G-YcNt{@D7G2-goES5777Ti1ew#OciE? z3X_}5smM%4W-2nL-P~2pcJ<5pW=VB(zd=%m=Nhc_`1|b1*x%iAP?<+DjXsr0p9>TegL24s3(bi|rV6nZEoaXun8L_=99TQz`m}R+)C8Y)4u8bXVKdw58)iF?60;XIYu9R|J;&K8 zy$a!bI~P7u=Q2!a27O^XYX(`=S0`)dk&F-iNH$Ee2K|5RK*`E7FRkL*8Dh+8?oH&Z zB+>$?#wG25%g=I2QX-&ci#Z>S?QCb5B%Pg1DNavEbCK>4rO>$L4pF-pe zN(N491Vh#v!5s2rWHKg6YeHjvNR~=_Zpz37DzBYnvW=6?AV`ebmpXXQtn^Ab7i^?- zPa}C`$;f3~N3RVSBw=H4PI%*O2nHMjrpUExT zZ2E~KL=c*RQ8sxMFo+VF^-|a_$2_ybl};#OwG?QHr?ASHvO=Zw%)~Y`ATm)h&sE7S zcpn1t(xMZh6b@35WsI$r%nb9yWOSZ~BzEbt6kJ(I;L$Ctx;v)0>(Z0eT7xe==Kv%` zatBjREfXTNRyvam({FSXLR%S=b14ZzfrG$<_PPxhq{sts0q6l@6xyhiXOiSK0h&^( RHa%do{{gJ(p&;Kr0008pTYLZj literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan/why3session.xml index 7082768a8..744bb98b7 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan/why3session.xml @@ -3,255 +3,202 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - - - - - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - - - - + - - + + - + - + - - + + - + - - - - - - - - - - - - - - - + - - + + - + - + - - + + - + - - - - - - - - + - - + + - + - - - - + - - - + + - - + + - + - - - - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - - - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..92f7fe71e09c53f165fdf6827daf4a7ce898a591 GIT binary patch literal 4008 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 Otp5XgPacLh+W-J5nUUQ9 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan__get_payload_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan__get_payload_length/why3session.xml index 35506279b..2f933148b 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan__get_payload_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan__get_payload_length/why3session.xml @@ -3,88 +3,74 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan__get_payload_length/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ethernet_ii_vlan__get_payload_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..bb7278d0e20d49e2211f9657bb6fd42d74c4d0a2 GIT binary patch literal 1253 zcmVfOdBtc(Jk+fdaab$)TsdEl#x$Px}_U;1X{S2?`P}Q?rY-*gf-7x;sED6tX zx}g5FJM6H9lI=7-FX(#S-dBq&oKw+W;BRbis)pv+P^c=5SUnt@G`*`TYOko7QCn51 z!E4GNHBDm`md)a(>Ap3KHd`;|)4J`iE%0Az-|Q~j%v!q3-+PaX7rvl`VDQ&^lJLP< zPVw-Q3^2j7e4l0++GT^&>K3PU96lG_D*l)6G;e4@vvxCfSk&OhkWp26nz4k-A@k5h z6wJkA4*G%BOuIF>!bRnmDN(bD{a|@%yJ-y0pb|=cK4{M1n3DE>Fm(i8V@VzaOWTq5 z>#{r6vr_ce`_o?->s$P@1bYRO{HrnOsvV%@Ni*#4=g8&JJN767rg7+YaACP`K zN<%42bs+W~6U;tZOixO%2Ey6XsQP$TN58D6Z9S{n`#CMD%HOy7W8UT@&2Q=)Ueh%J zOX`*D{h3*Zx6Qv@Kw1HLACC0ua)0&!Befq!`ZXA-L+}oUC*F7G-4D?B?}+rV!i*K> z02QV*mt&C`i_BPLPP@6Q+s*9f&CQ&e_I{0|6`mW;n8)8|PsaXUJqNA6!{?$YP4E9J zgalqu5*VfAg_Q8uw1kgh@?kN_&F09wk$EHYesCEt?V$7<^<>nOQBS_Uk`E#U?u(@W zc1l4{ug@ug?cI;k_5o?zPt;!8_$Y1PK-!88R7+rMj9zTUV71bhp9Jj}=?Q<3jAx3n z9(~jleoC71Bqp{ere0@GMpnj6)c1+X{ti=Y==v#9DV`UrECUzMN8m*G4-fQy#{c!` zBmYl{{!c<;dqP?Z!pZP|d}2Db*C@|hfL?^h2H;2(U~B+>I{gpc0Q3T|igksm?GE5X z`2WTR;G{MczF`M23czvI|4qV*Qz81eb9mGQA9oIa#Li(m+3Fi6TaOZx7d30!>Ogyr zlT&&X!gqEq{6L+{FsT{zh4G{vWKv(fSX+-|eDFuIVHRu9|BoGLv5JC8ii}bK9ij!p zy!9eEZ+HxfbIbmKzrYomgapmeLzIC7cbbz0>xrCj5inb^f?EVFQHJ1@;F$lsa*mU* zfS$O{M*M9?Bn9)zk|EvnbOg$1Kpr$mWzb?wohyLC zgrKA$3Q0Hr^K6-=AkZ=LHsi`U - + - - - - + + + + - - - - + - - - + + - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - - - - + + - - + + - - + + - - - + + - + - - - - + - - - - - - + + - + - + - - - - + - - + + - + - + - + - + - - + + - + - - - - + - + - - - + + - - + + - + - - - - - - - + - - - - + - + - - - - + - - - - - - - - - - + + - + - - + + - + - - - - - - + + - + - - + + - + - - - - + - - + + - + - - - - - - - - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ieee_802_3/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ieee_802_3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..67ac3a90ee942882cd72d910647589c4cc1c9e77 GIT binary patch literal 4129 zcmV++5Z><}iwFP!00000|LvVwZyU)G$KU5uC&kRqIvcwt6wA?UEQJS8b>guXrSJzz2_bz_9b)RNoI=lVs<}-J@bkpfP z-T(g6e<#!}r&G6F&ZpC*`{+K*ACkLvH;dGLEguK=rxS9p>2;Gn-7mjP7r(gs)cnJ} z3nq~F?wwoSl>@qY3OHKC;rq{dzWHrBP0L@>{5C<8Ja?bcbQc%K!q<${J1X;I9p6V-F;4RdVe>Ag7b+kqdc*v z2)cc^x!IFrUM#2IfBMCdww z`esTE7w*Hu{Y@f)25t^PV+);NtAF`y;4>Gzb3=aSqK6XH-ycb{o@g*n3bweR~p~34|lsLY_ygIFAwd zd9>X{;b?+K$X*-w=XdLP7~7ub;=rXEv(77ZDe#>w1zb~f84Q5K9(pFnuW4ls{~G?| zl^jk6|5xQ#-YHCnnP+{;r!C>{b`+17908tal&@yHBaI-|q*>VP1 zZn1dybibV4-C}d6SG`)WhI@jT&O@J#3#E?LweNdX4lN>2EyJ zpP3)Xa);qlj(cRk%8bg4%8a+gjAl#mM~l`2-KbdD#sVG61v(-aDiz;RCTA7a)tZRom7<2F3FK*GxJLoruPT{hV zCptd%M90UT=xDS2dCR0~LS;_`RqQ_y2}RtoxE>a>YG}+4a?{>F)nEz30I?H)Y9u+M zsI+IG!Ggq*fZmGdUyrp|JK^=fxo&65df9AuNa1JBb?2Vy%8dj_Yi4o6kVW)q$Q}{8 z2mGwlOxr$Brx?@S&(k862m9!L-=ZT7`4E;5B}M5ZueX-HP2cXtw>Rclx{1^9Fkjrw z_b(}Gw=LYqw0yZ~I*AK(G@Npi^sZVv7bA_ORe6}w%Y$-PF{rgnZud&25i}#eZpQRy zw;AqlI;)&`58EK3KceU0X=RLAg%6qyN^$@>i+0)Jy0N5*A{*Pr%vjvRk7~@rMQ0a;_vm z-JkZO^0Y8IB#I7?qeEApF?wW?h@)+H58!@XVxP*!L&zS%c57yzipB%X9zm^bXg@y; zFALh;BMDbauM(oA95G?5l^N?-eN1d^@0Kib{J18eW1pS~*xRBaT%LHcoi`7G}Yh zg5&Gc;HGrINnrb>gANHrm(A?K?1b&l9!&T99-KYaTg%=TTRLD8T3%e~plEfOrGr+p zHVb9DS!fyVZ#u1<@GykzMQ;%AI=w(*PjQ@M=A+?l|%79hvHi~6kp{~yw9Qd zb91OlmP(dNmP;ec>S`mdN~SU_m4gg^o(cgUSRr6zR0#Os3IQ9hLcm9=5R9YJo`Hs! z8je*6HmikW6@rZu9I#r>D7alpJd(ysmTN^ZasCZ4@l1{c2+e2^dn)b>=DPM3BAAliPmZ zgPG@gYuTGzYPFGTXnAqf#-i0_RvTN*+68StrmF>Q8SZa7(VSW=90K`AKpi~Oj4{!i zzuG87&|lA*gbE!-#6+~Op2LsPivr~alWBKX%Y|14O6VM_3<&;2Wnim&VD;-l`hv;> zJD9$l^1wc)FQz;&gwsdLi$e8lEPQFXC)CzPx!NfEjq;fbu!@q3l8TZGM#-wuC``#x zhNW?kA^`D~*>w z(G4y&o^z&acFaDJkM4tN?O%E($$GkxWFjoOdvWyvp@Y7>`asdDn=JOH;SqY<#|{Rh zAGv=1-y6Z8Uv*wMb#*?3$&dIqcw(sY!XcbDTS=y*y$e=iRAN+ORAL+^#gg2laY}dObtEp5X_(o?)X4?=etsqWne}s5ep8nr!?{4gu@_QdYwX64)CwGhRpDq!T7g>X$XR5)_of^#QWZR<}OzZtYUv-o#uKRV$ zJ^66*PU4v`H*nEYu6ca8N$w%eKKDTghxp?#M?H&2oZ*7HG2AqmKqVnp?%`v#;t(qe z)!OjouiHNHQlC>zaPYFBp(eoeBDZ)+-3u1;kP=gP=Qf_ z@$Icxf$@!iQB#IWfQztVB|uAnzF{*L{vmvniVS|UN=ivUrI9c3Rfn|TlCnG_u)PH z0=_4&LRp=GT(TC=Pqxu=ylKb2t)`>g`#tzQ6l2``J;Hk^#=8V}wD(Yqc<=Xk z@1YpgPURy_5@aj-t?$?o05Cx?azC*(De2RL*E=?*z*w6`N2~>+JelgamCCfW9Hb~9ct{?*srnwwqw6lsliUO z#q`tN=j~V5uU-dI$xx!;rD&k9#Rhsh90s!CC1|K*_}<9SEU%7Z;c9tx=0(KScU`C$ z9~f7IE4LLH6&YtnMiZoR%qdGKOHn$isgYT#T>d4d`0wc7q-?14DrZT()A&2rI%O@H z&sj)rl9p&ip4W)c#Er7rcte>cIg02=pfdUBjq;@tYp8QNS`oZ8RM3z$GeHEGG>zG3 z<Yk=W$37SWPm6ZCb2MwJ<19{ZVuMxwD=#i+A%Oh@4?OX#{Xo)9Uu;+&N3J+Bcn z)CsQzr(94j1I)yPMQb6Lv99Q(8YP^ghR~d7wrHU|k=i)UY|>ijh(@{*T1n1`_nZpp zL&C2*M#f2mY^NL=nMP`f1JZ=8JS)L+$_54{fp8+MwP<7;F0zL@DsULkX0NrA!t(NZ z;K-9Kk|<0Ldt{okPMUe9ASk9BAUnn!0xgE3wDB=vFDl^-%F?WCa4w^TlT`S~OaCZF zCOPA*=2mh=jkYu~N)qvKqmZOAr4?_8(%$D}Fls z9+;_#%EOa%X{F)p8DgYh$tjVIGsLMtjZoTT5k+eW)6f71D9#DD^3Eq0p+XGaDQ`p! zw6wB~R@$Lx(qL6ohaL9vFPa z*p-pjJe84z7nOi!qEUnxp^48p635;O-?G&X_Juo=(nki{!{NBGGHOqwpcG@FsP~Fw z2PaI$s!TP~OT(3d80l2h)Uv7X|f6hSpxD zQPM@BB`M+wlZk1C<`@aEzp=U70{NyG+aL1R4dAf3c@>+;M>|UxKwBvs2Ylcz=@U7NZBAkmthW?F$H~PCrdZ6jA1a5 zG6$fbs}$385a1UH&hz4h+!R?{Au!5W{@~y>3fPv!d6tNDq-_Pik0HV9gF$S2I7YBS z7BqSE(#BZ&C`e-^#x7B=6XHv8l|VQ+8JC2k6=9_nZP3}MY!Vi#BTj(|Mudc#j1a>9rIl#9YKC!Th)kxvL`W9@5~|_QTnivA - + - - - - + + + + - + - + - - + + - + - - + + - + - - + + - - - - - - - - - - - + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ieee_802_3__get_payload_length/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_ieee_802_3__get_payload_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..05bdcd789b91640292b80fda51963103db3ad5f4 GIT binary patch literal 1253 zcmVfOdBtc(Jk+fdaab$)TsdEl#x$Px}_U;1X{S2?`P}Q?rY-*gf-7x;sED6tX zx}g5FJM6H9lI=7-FX(#S-dBq&oKw+W;BRbis)pv+P^c=5SUnt@G`*`TYOko7QCn51 z!E4GNHBDm`md)a(>Ap3KHd`;|)4J`iE%0Az-|Q~j%v!q3-+PaX7rvl`VDQ&^lJLP< zPVw-Q3^2j7e4l0++GT^&>K3PU96lG_D*l)6G;e4@vvxCfSk&OhkWp26nz4k-A@k5h z6wJkA4*G%BOuIF>!bRnmDN(bD{a|@%yJ-y0pb|=cK4{M1n3DE>Fm(i8V@VzaOWTq5 z>#{r6vr_ce`_o?->s$P@1bYRO{HrnOsvV%@Ni*#4=g8&JJN767rg7+YaACP`K zN<%42bs+W~6U;tZOixO%2Ey6XsQP$TN58D6Z9S{n`#CMD%HOy7W8UT@&2Q=)Ueh%J zOX`*D{h3*Zx6Qv@Kw1HLACC0ua)0&!Befq!`ZXA-L+}oUC*F7G-4D?B?}+rV!i*K> z02QV*mt&C`i_BPLPP@6Q+s*9f&CQ&e_I{0|6`mV#(&O*5Cu4uFo`Y83;d9ZHruY99 zLISTS35-(mLQ42+TEa&$`LLMeW^-iT$h?txKe&vSc2N3_dNS(Cs3%`v$p?`F_r+46 zc1l4{ug@ug?cI;k_5o?zPt;!8_$Y1PK-!88R7+rMj9zTUV71bhp9Jj}=?Q<3jAx3n z9(~jleoC71Bqq5hre0@GMpnj6)c1+X{ti=Y==v#9DV`UrECUzMN8m*G4-fQy#{c!` zBmYl{{!c=ZdqP?Z!pZP|d}2Db*C@|hfL?^h2H;2(U~B+>I{gpc0Q3T|igksm?GE5X z`2WTR;G{MczF`M23czvI|4qV*Qz81eb9mGQA9oIa#Li(m+3Fi6TaOZx7d30!>Ogyr zlT&&X!gqEq{6L+{FsT{zh4G{vWKv(fSX+-|eDFuIVHRu9|BoGLv5JC8ii}bK9ij!p zy!9eEZ+HxfbIbmKzrYomgapmeLzIC7cbbz0>xrCj5inb^f?EVFQHJ1@;F$lsa*mU* zfS$O{M*M9?Bn9)zk|EvnbOg$1Kpr$mWzb?wohyLC zgrKA$3Q0Hr^K6-=AkZ=LHsi`U - + - - - - + + + + - - + + - - - - - - - + + - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_incomplete/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_incomplete/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e86d54b1fa0d75248a5ab5c8f9ec93c8d1dd552f GIT binary patch literal 2968 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 - + - - - - + + + + - - - - - - - - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ethernet_ii_too_long/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ethernet_ii_too_long/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..08042b3eb41b2508503a56f2892f6ef4386aabfc GIT binary patch literal 2540 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 - + - - - - + + + + - - - - - - - - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ethernet_ii_too_short/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ethernet_ii_too_short/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1f8a766e9bd26bd726e8eaaefeb39fc8d2fb95f5 GIT binary patch literal 2533 zcmVjhk3-3Hihfi}xm;?7qh zRF=IG6(s%jy+g^iY)k$kmBh&)fGm@jXD;uYb7n{mo&GJx&kH=Cg>JU^h|3u+dhEJo zy8P?;e_Muq*J0l;yROIg_-?sQc!u*;+I%e^XH7c4>_2y_4|tiH-|-~az~15s_7?>O zmnjfLB+TvSGS5GCUFtuiT*8oyEt2g<*GHUJtNG( zrbRs^NZ3Nc^D*;m`3NX~KB!;koR*L0`*P_0X`ekv1l8(R?(Ki-mR9fPvdLoj^y}HY zpDnun^JQ95`=5LIaaq_jTXp9bA5-iuFJ_e8vK6I&TlEs4#dr#ry8JS%IE+-~>@&eK}7oKu~NCabOA~*w53} zo!x-GK(tS>m#JWP^;+$v+RKk*FHJxFBmm?%?LS2R7Q_zt3+R8qu7IB%p%8EkP6WFsa{CDk_(BF)o2UY%hThqzfMi70aOE+-T1H@xl31v?`i|p27VA5*gq-QELW(Lf$9R) z1zv{>Ty48trZ@`()mjQn8Q1fk0%!eBe&JV;8~zeT#o$-|R{J%^W7 zSJxuhWJ@Fc4~z6X847ZV7-<_>?FK>DhLs)VWpQo`>Kb9Br4s+Fph zs+FD7xjUENb8ZjG21e=zCKOK9P1VhDb#q7$C-T(40h@GwXYX$6#PZZzqwVg7R1(=u9E;dA=sJ(Fa0vkB?h=dav!H< zKGq9H(Ra&RJ{n=1aoo}+p9p7?la&iJ<{*(Z*E zM;`pj4g2*x;kx{Z2%3(NPv9H;>A4N%S(?W#te2~c<(-Gv!>$#+PyO@L-TQ61y! zSFt+AS8|LxXQ&SFO;oWuz~BH|*{kEq{!ac)zkiOP>l~pv#5YsL>JVShAvS*{bG8T< z=a=);rxwh0gLk*<1KZVs?ef5OabP+OanCyXY7~{?)hMb_JU+*G_Gn`eq}nvsa`^-Ul5|pB zJZ2>K;`c0>JsWF_dushOU*ym9MX1JDjd3btynX-iT5~trp}65?jFy}2T6FrdIWe=d zQ(f&;+nrYnroMZ3f$z*-_|xnKHpAG{4CX4hTFkd>F`EaKRrpo-Rro)Y@NcJd;Lmv# z22_98%Hf#?0bj@=;Kdd((jlH>5Y-=En?E%D>0wVerJYB;hB$rI_b8?|i__8fZ>wEY zyEv|0G%E6JQK3L9L`Wc$l*({tB-18l^B4Gs(2WHE$CA-GMx8Pj(s<_uI^=<6<0y(f zEy#srtiyoXDk(uIX>69vSQ`;6FG0K!Jh;eMay%Lj-1{6^_CZ_YHDh2)QjO0-k`Dz> z;8M#F7z&e=3ogqnc?pt@w3cDwN(<*uSeMaRt~m2bDVu>)ka}7WNyK?3GAhlSW-(e7 z!2qXLEg)nH(v4z>p&<5|6RGDj(=qboFR2wgirXV^SklZAfyyTG)AgZA` z+oT)~CQnINsUkWDHqe1o6L32D(l4%29<+|h1u8aI*|Q`OAc7 zOw@`&&_dXx$Q@av&M#5W7+@(oRAl8Qaf^&ThzO*8g;H@@qIkoU%u0B0WxLbpwHHhn z+N6Baz)F;8G!hq703EZ|sI#%9pLIqPtdPSQf^1CSKB95lC98-gN=ss&F)Cn=UaAtM zngBdfOPZJzGhjjy5lv=bgbpZ6AwV}J#<&DADU~e&8L+^JbxBk6VQA4bG9l$Fr503> z0HCQ^VWZHAa`1U*(KeEZ1<0c0Xc%QHq)ASpP1@NU7}PIvjQzS7l9>ZQRE<^))u6oGDwUiN;k - + - - - - + + + + - - - - - - - - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ethernet_ii_undefined_type/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ethernet_ii_undefined_type/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ce8a079f29651bcc9a105088a8c7694978d21452 GIT binary patch literal 2537 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ieee_802_3_invalid_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ieee_802_3_invalid_length/why3session.xml index 7d14fbd1d..d0e3a381b 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ieee_802_3_invalid_length/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ieee_802_3_invalid_length/why3session.xml @@ -3,152 +3,141 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - - - - - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ieee_802_3_invalid_length/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__test_parsing_invalid_ieee_802_3_invalid_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0533268b140ce09f6e848b99c346b72529d8438c GIT binary patch literal 2538 zcmVE7D#Wnr&c-?WQQcGcQNXPagf zmw&$cZ%u61G`8zjP1D&A_Wf!T?WLWs<90KDTvqXF*?no&AMG+$@9c%wp1idew!6+= z>?(S65zy!EbCu?wnGPesO-ga~bi6NjJskGsqd*X~toh*hCo}t(3)>IqSXV$4Qyes9Gh~`|*VpqV{!ue@c$kHLU}g`;6Ag!k z@OO;M2E@fY=4S16YV2xdzt|3`jiLU#TeXW1&F^h?J#Q!hVc&0-^GG~+!3KZ>QwYH@ zPHS^{>+}VrJw;xoa(l?vA}>W=ekOUTy6G1Iz{hd_G4R*G4xGOL{zv2r=;av_0q1Z^ z&XNFghEUJG8l0^ABbS(`%Js`#e~)rKPCJefQB5Kq$GppaX26xv8ynhB_7@Z@Tpei- zLqeGsP=gCGjILdT_!-Y0#l>%}pXZU!=@J2F@k-8-0dtN}?+WNtZl_=GR`%D6Jt-#6 z?3twCbtJaTOyxr2m0U>Vs76b`AWqMN{<1VJ0#F2CdI6Yn>VGrwojwoc{$aU)SXh6S z#}g<3(@v)z6ey#m0VT_0#lqXd+t>0~5u>}h4iis_`7T|VzKaYL8Td(LV0clmEmtUu zfuaIM1zv{=-0WMfVrV_Osx=zMWH<8;4co3oS9ZPLTrIoydQt0bRHc-#(7e$6wa|Qz z9JpVOoXZ3X+Y8$Z+kXbO4+YQ{3Ken}au;&{c;vpU>@6g2K}TzN6qI;;=jj0^k1rMm zPR~_Wdy;G;#b4K$iFSeU>}($GWZ}n;zz_Ip1fhHE(9;Og6($rW6eb`O-aU@d9qJ2L z3RenO4!U!HEkDq=$7lm1c>@y?r|_om=DfVwr@Q9)QDK=)3M&dLa&cbH5ORV7S6nm6 zRUtv>86_!tQ9+{_o)a+QAvKk?(Dz zr+j|iY+T#jd4p%%3n%D#Hs+=5ikg644=F^Xb* z`z#j4_(qCR)(k}fzKbjt1?UxEM|*Kz+TV-6>W0?{vaAt`LVPz_EDG@z6=M4>neD<~ zUoGdci#4cygZKB#Bm2dX{rt#&c4R+2vL9~l6xE=2S30)_%~f3Iw4-4Ww<2!edlp}n zxK;flj2$U!y??9$`^};p1@lEYigG+qj;`oLL3q)Lq7zT9FrIk)TXdu_py@ky_Spq-x{w+A>KQ99pKJ^~*Q9T*ru+l};@Bz5o)VG= z_5<~@mt$pdAlIkqB7LSVLJ`Iyj8h5Y-J6el&fRhc?fN${YN~dH=(w@%m^wHpZVrmw z!JBHSA6{MH2a^|in!Lbv8aqv3Zj6h>e9scIeM(t~Ux;6b|5FkFZb(PI%PS+G=);Z< z&lCvwN(uolmWYuG@f?9D`taKHq3UMGHDQJa&w33pd)4}$LE0#y^%ybNjuR7r8Ip4Ebj5Ul z0M@$5NYGqc?JYP=nUDC#I5aY7M7`EYL_yPR4xEFE+rg|5HT_;q;iTdLlyI>9~hujq)JPRIN`!e#+l-tNJpJY zj1wht2Z2=-8v_@$=UzwVeC%5j)&&_O!XsPpDkuQwxgdbO(~?q;!$1?^NrSWf0D`DE zqgqNL0|h{2I^!8=F9l#P5pXG6$%+|`>GQ;TPgJ7VJpzVDYBaHlo4${#(k^Jt5N+71 z6Ce_hs2mrTU~@e5E$Rw;tE1prB}X9`YcOSjgh(SM#zmQ}Oa;U^r?sZQNibf8qA7J0%|ipg68iD6URC@L+&I^^gnuQX@E za_cotyERm6`m0K5VTF6N^F@BOaZbRM>X_))KxG^d6t+EI7Wtn(aJ@aV?$FX z`g|E2A(VvRE%7pWsZdc&N-0Ewnj#S1SszG63BtxXk66|&a!@Ksq%8y`DJonZAqJHY z%qh&i%5ib0r8jt#QymcbiRVl(TIoozQAKfBI7%c1#~9Mb6HKmCv{xinA*l_D2>!zl zuC)c`q%nx47^v(=oAD}9i8w_e!K@-Jb4O4@@Y8anD$g8Z;zVEn2ZwaE>uQbw0AXO& A{Qv*} literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__write_data/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__write_data/why3session.xml index 6ad00e20e..3d670fb70 100644 --- a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__write_data/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__write_data/why3session.xml @@ -3,72 +3,61 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - - - - - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ethernet_tests__write_data/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ethernet_tests__write_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c6bb8e20ff54ccf1569bcb0a90029b8393f5b555 GIT binary patch literal 801 zcmV++1K#`}iwFP!00000|Ls^!Ya=-jz4xz}`w~z|rIG}jLto4o!kmV_n$p*dA>)`% z&p`hDlwz;r-6Tu!nB8$`43b)Ul1lHrQk$NZYt9cF{E}z%Thcx zf$!>y$B`cf;OTBPmMzEcwU%+U+F}3E`8c%|C(WGd@(|N{^Ml7VZ>B-<=ka^t1>fG6 zU9%O7u6)~053BpHye%ECH>;61U&??td|NhOrmuq;^pdY%+rjy*X ze!)&}yTSUGUYpN-*k9(qu>PDL?*HA-{W-nepYg+HKlMjnjYYhpP}|cXSTF;;9xl8d zFFXc(=}FWjVjmOg?3{_oXNU%w3})%_F2M)*2)09Gf(ltNVsJ!GVX**&wG{HUT0yBU z>kz6Tu$(li60OP^vNb^v5S$T^?m$B!XO&CQcu=mO_eENnOG=DMK;~^A*#g;QKwxsd zs#Jqaa?)26v1&14XS_r7Ib_Qcv6p4D1MdTZCaaScknQBOfm}_hI;$fkj+!E3wpyDM zRpWp<<8su_wx8kvRYj>x^g2{aIW&;#D67Oa2Jpd>Foar23W%~Z7OxuxzEfG5XsQ$P zidNu~Em2kBDy1k#iUJB - + - - - - + + + + - - + + - - - - - - - + + - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__expression_tests__test_expression_invalid/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__expression_tests__test_expression_invalid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..860ec474fd8a6e50c183d20394901f3e6ad7293d GIT binary patch literal 2216 zcmV;Z2v_$XiwFP!00000|Lt5`Z`;Zde&?^~TOSSz?9ASQ;{&L`aU0+?1&SQL5_@%o z%9luVko4DgR+24W?!B?$|9>X>(X!j+=CP(SPk$AKgW2-n*k<0(<9oPCCbY1##u}rJg{QRuzPU*m%q^=9+XMOrYO)lK3M6tS9%=<3RS7Eto zRjZH5Z(!qlo{?MFx`o61=K1mo$9R}yf0=VyJ{|Wk_xr;?ev}-dl`Y@P2})BdHy@Ui zwc^Gxcjvit%ccA3dSXsje%#5)GM&)hT}-(HU^W1CY!g)J`MyBlIudvuPeE~B{iB1Jk)|*3n&Qpi;MHm?r$VLq?0DV?0$!f**+Qk zqeM7Ai|GqpJ-C#<2SuDt5XS|DP37561%{a_;@grqrt6U=a*g}#=(kO-sekke3miS*LSf>b3S3v3t$N;8~uaN;XXls-O{Teb{ z7p31UIgi}wd7MCk${li*&C1Mg$;|!Ix!HrMl39s)ATh685FT+JsJT{?-;~|uq9?!e ze(n~XTdginFM5Kj)w{4O>niIG-bbqxs}!4htG2SIvgg2IvFqlm?)3a~in~r=3y*e^ z&Tl>4>*K>}x99S*WpWMrCQ|xy)i2%rjN;kaJle@`j5l6~g3liiDzFm(`~LARZ$Yfk zPXxU`KVNj|(_JC#y0gp0qPsYs6C%qevj79r03+t%hf9O|%`MW|N&m6sWyh zy9;I`JRaBD;-VaNe%{~OXdb=~+S=JD&jxOSTpx}c<<|Xd#HXVu*iG?{<@5@I&HLKz zy@7DUy*&eAvHs{*TVH!f^wb3ZTaT6aI%DOP3;-cBPzT5bu!kyoaJ|B?-Hp3tIpn5$ z7t0_o!$sm|^}%>|{o_S;2d*)k*#|27y0AYzaDGS6<6$G;O_g}b*mpnFXO4W64}1qd zi=5|a5xa1?T%8kkG(G9loh2PI>kkWd<8?(zE7PBUf9Ckn|ZL(jXE0|sw4MgmyamBBlsFEvO92%;H(Qotc-TPe; zR7I(ZQWfP*DavM=kUm|y#rhjRPu^fyOLZ3T#?r+#k?!(&<8V8FyZX-1ecE3|Naj_1 zs`ym#`F_QxS+7l$+!5JZy~+LiU2#_}sajICHO&4mp*K)7r{&ST3xKoEGmT;@G zRAs5k@^dK5^%kWm(G5(cYGn)ZfTtBo>-r%QTxoE~_R~O{khsHQ{QFao?9S*IcM#aZUG^ss+4~ zT)@G4F;FgEq83#w-i%oEvxntkMkgn|4VnGuOCMwF$ZYV6a8;73Brj2tra_+>V3H~( z)Il>AwEz%F${@Tp{x9%PE*j;GX3B;DPKU%$d57M3G$5ElZODo>N`(YWc?p_vAtD;4 z8Tu##XDLWUM%XZm!At9midI7n@Mn;MzkbBi%?Ftj|Um!Y5kJvQZwCwjRj>WHB;LCg`-tz!11~+T^Sg z+L(iu+(xCz$TlWWG^HsKMb?VY2k&`E3Yh_b0w%B~J83W(t;=V^Vag(-pkHZuWP%qf zXrwZr2xH@@H6OiV6p(PvuoxNTs90emf~Je4@m?gRo#sqM9Tk`?ybM@!47@=Zlu*eN zH<;&+Id7PdiU zo45>7Sni6IY8<7&lYw-|M6x1f<79&Db3pH*q!4uDA`#c3S59zFIYWrS@JK3-nPOPS zWt!xo1c+Q_a14Tq%1WI)LPku~X0fsj!9vcH@R^6G(FzX4%w&zE>kPy~WTJc0loG8~ zBp6WZD40u$7#gh-DHhfsG)PvKO9RwQkX{()15&Bwlqef{T@-}9)x;FWrAxt=g0M+R zKuVS<_!jJuH_-xen~Y0YQX5DV%buG+HI*_3C|083I!Q8ds4)^$jxL9wd6JkC@t|ZI z345W41cVWBSSX*RwiGx~HaX5X%3`G&7rw965icum1zK1>6GUYybckC`(QN literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__expression_tests__test_expression_valid/why3session.xml b/tests/spark/proof/sessions/ada___rflx__expression_tests__test_expression_valid/why3session.xml index 1235da866..ba36200a1 100644 --- a/tests/spark/proof/sessions/ada___rflx__expression_tests__test_expression_valid/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__expression_tests__test_expression_valid/why3session.xml @@ -3,169 +3,140 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - + + - + - - - - - - - + - + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - - - - - + + - + - - - - + - - + + - - + + - + - - - - + - - - + + - - - - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__expression_tests__test_expression_valid/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__expression_tests__test_expression_valid/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f171f3e036891d236235e92fe7491f0889b66c89 GIT binary patch literal 2440 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 Gd;kC)kF$#a literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_context/why3session.xml b/tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_context/why3session.xml new file mode 100644 index 000000000..df5db69ab --- /dev/null +++ b/tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_context/why3session.xml @@ -0,0 +1,169 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_context/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_context/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12c342857825dae68adaaf9eb826b76c77dc2e88 GIT binary patch literal 3114 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 E01c@bQUCw| literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_structure/why3session.xml b/tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_structure/why3session.xml new file mode 100644 index 000000000..94d914f46 --- /dev/null +++ b/tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_structure/why3session.xml @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_structure/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__fixed_size_tests__test_to_structure/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..983c2796b1b7b1358c3e00c246f3f6329cb11538 GIT binary patch literal 2527 zcmV<52_W_#iwFP!00000|LvVyZ`;Zd$KUxW`qqbo0y}$O;N$=*4FhR z-u?OZ_X)9WUE8)@)OBlb?EA$k+G{&q#`R%-xvt{vUHiFSez143`pv%a+LO2Tjcw=I zi(N#IE&}@8ye`u8Q(dR#Qw;U8`CqK@_4aNW>)W_o+8g}Y&u4A?gdKA7 znx$VXCu*Xv(Y+_54RD3tVdEVxa-W*T6aMK%{@p62xOjRNgN)KYnd_7K5feG#y|Td) zPUQNRxttSmaLnyI)poJ4pKXics`Ed4bF+vy_;Vd%ssRXi@YFNU?K-fWguY;47Y&>z z=V2w>pS6j(-uu5yW9Rh92qPTItMtf^)+6nxfCoNUcbuyJ1lYkim(~ABn*+TbH&ZaO ze=>H4%(xTyn)eE0l2v=S zdd$*n)(6dZInZVn;wLc3t@a?yv37!!}88bw)3Lx%Db7GIooMbouycypAG z0%f!`pk!HsFB%?C!*A^EJdB61{L#HYxCr*rGiz(v0!>38emZV^M{ama~A zzcJa>v_-#7+t_Jsm&?`dUE9oO6TJ_;sIsVXw5N_mf<=Pg`oVWmS5en^fIB`TI)Tk8 zk0x{+i#@032S&RLuS3Egm+itfvlzBECuj2=B$w{Op=aLH)OEA0Z|5IlxR;buIfn_m zAmzKWPiFIZb?rO?$ADu4(V>yBTcj2M%&I)jjo5^b+pTuMWQI-h3y(Iydk3nF2J04JBw!>t&ee+#T!p z!J3&4$c3TgxzQyZ(%E1(zTpYzch8yZw%_q^`@8HK z!Sn9XBOZMI0_tG^rvv|eHvey4i#^*V7Y*?wz+ z%KZ7|vYiK%PvnHM{t-{_0mt*iu}HTF+J@#=i{%_e^YHZjI>-srbxsaUhhCmcvnZ37giCEqVv@LE(TY@#L>`3?F;OKIXs|Rg z>lD?T0+9iYXeGU*S|=PrQqQH3%EtWPMR=w;kD&8-mGY5;k3NOyh$P-cCq3mJk`0M) zgGRgx$q7K`)COk)7lCP|0wIZbC9KOaiSvxW8q0*^lB1Q77nm@5(!NHkJa5{%?1aoXN_K}}HJCh0t$A&jSJq$`=CV!?2xSfT-d zIHRHu%D5;kkJ-pn!G@?KbDrcX*g%-FiV>y-SBOq1K-lLT#R#WArb`T=dQi7pa z7n2hOP~jO&YDTGZQY22b<9LdUf#5WW&7lLWypTEt0+Qn-wNXiGH0C&MFBxVcTd|6| zn4}2YS;-P6$r2izNQ@}H6r&?b zB}>F6OsfgnL`s7qEL+J+Cxf*xfl^F&VlHt40cWHf^8wYGtyCqW)g~mRxnmrarAffK zq-cqg6m^lUbQJ_m!U`jj3x+5PDE*|V5m*s|WzANma?}$v(=1x6K?LcY)(TY(A#hG| z87ZlR7hZbd6pzVxX{3)zvcL%DF7l+Z6;zfd!v%OwsgYSk20JnYhq8%S)7%x5R*V_z zKyd1ezznI}T+(pwSj5g-TVeAsZe+mj3`78ihsq$%G8YnMm~Wr0c*TTw#){w)F-~JM zD+U;-V~WJ!RTsUeh)L2!LV|W7;3R19R1mJg0Y%MsEiKWPL>YVRQ*V^V#zCGKgaC@u za_4iCQB`60Ng^rL(m0+(#D6Agm6G-b1MaMJ6|pf4jz%oyRxlZ~W{wMoJeY2z%) z8Ak{l1#Php1=dukl=a1Eg$YCr2#?u8=@EvS%_>4Mc|;x0`C_cHfqA7B(TOBftIoBL zp126cYvMa!yz&u+iTpEKC=I9y>J+LQd%-H4V$LcP6^%x7?O8HX8KZ+mY@@WTGMGXy pbH13YWWdHlxhHgwv8%wX^5BHxQX(@ueycNm{U2m+=|}2+006QmP literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual/why3session.xml index 6cabb83c9..7b5906869 100644 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual/why3session.xml @@ -2,118 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..194b7d0b234a9032432c44a541212dc267778051 GIT binary patch literal 211 zcmV;^04)C>iwFP!00000|ILpvY6CG4MSGpXN03IN9jQp+CU~1v>6ei-!VC6dY{lT) zXTvs=&hFfZ_uvia_mS&k;qzRkdAaj-=B4wUPt(NT*B{|eKHX%)zsJb=(jU|9$QLnf z{Nj%-E^g2gw4fHRL|6YJ(BhQn>!{d{8_rez{l#T(zGmO|{l!J5A_@5%N)*?uqyW{5 zBqW=Q9SC>s;7uWptpWvzReVj*uz+O2&?xwr*2q2=<&`)iCm^VKShI}Qg-CHgFXYw; N%r7;qefMz!007n3ZQB3< literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__10/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__10/why3session.xml deleted file mode 100644 index 8d239a11b..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__10/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__11/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__11/why3session.xml deleted file mode 100644 index 235f0b49d..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__11/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__12/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__12/why3session.xml index 94a0fecf2..9e4985275 100644 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__12/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__12/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__12/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__12/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..207849d1c2bf87dbe3cd2c08bac03ed3b6a7de42 GIT binary patch literal 193 zcmV;y06za8iwFP!00000|CNnBZvrt8M0@`Vy0o_U{8gl&LC~kS=Dh2~5?JUkNc{U8 ziXu@$vzn3Kyd4Mdz2nqMZvBR(p%2_}%o$(HRj|YHB7gC5l$_4vo-aQ*i$d#pLH`zv zkM=)1;PVk0KUv=V@v?V2w&P8=nyRHZo9IK*M3JgrOJI%@YITk`W>3oLYNq0etkxtD vpD@qCdp0Q%3$2iT4dNJ`M}VDSf|Do#M#@x*FxgVl3R(3FhA85sg#iEnQSDx4 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__13/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__13/why3session.xml index bf76ea6ee..7102541d1 100644 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__13/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__13/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__13/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__13/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..61b7ad6b6e1735e4a7b1cbf9860ae6640a63f419 GIT binary patch literal 194 zcmV;z06qU7iwFP!00000|CNnBZvrt8M0@`Vy0kvq=Z_)<4T3(sHQrq(mcT-XLE_)% zP!x$0n$<}2=IuCu?;WQ`x%C^ChCXn^F=u=&SHTX)i~PmMQF1zud%pbOEDEjX1^rtv zKHC56fX_#0{A79a$IIUB*p4^dDzf#dOhG4hB_ - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__2/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5aee13906106c375644c4605f12438095556f39a GIT binary patch literal 200 zcmV;(05|_1iwFP!00000|FzDsZUQk3#_>H*!6VpCa!!U0ELCsm#D4NQjyMTU2vQ{8 zzMxw&mZ6LF8~&2NHcEM{a$a;=*1KF6S)1JDG);22{+N8q>1G>W$JzPP9@Fh87jt#| zmX9sg*g16eovAZ+hH>Lky3cR!`qwS{wr_9laX|%=if5*3-hw5wnlWS^QXs`0etDOu zXwC>J5^*M0DiN|rD^PiWR|J2HW~Iz?jBy} literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__3/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__3/why3session.xml index 8b61bb784..b927f652c 100644 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__3/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__3/why3session.xml @@ -2,55 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__3/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..65523a70874c48fde511acb32befd40b77e6d541 GIT binary patch literal 185 zcmV;q07m~GiwFP!00000|CNm~4udcd1be?CPw?43u!|HlQD{=7M`zAfkN_cYkobMD zXedLonqoAYYT|9Ap=+CNTxsrTOtezpH1wXofgaQ^;lMm13{%>gTiUF-{IH6UQA6)LGLJ6*Ww5DiJtPPaFBYT-Tl!h`Y!0?Tr@B{Q;j n)MoO#B>$5FSmPx!hrBUzw1qSVG?KQ4^PLhuhQctpjR61vL#I<{ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__4/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__4/why3session.xml index ce65b15f0..cbb972425 100644 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__4/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__4/why3session.xml @@ -2,69 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__4/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..03e3adbced19b9d6b9cad20896de5af12fffdb03 GIT binary patch literal 193 zcmV;y06za8iwFP!00000|E-O&3c@fHMfZG#pOCyH=4Ehj5xY3Kmz(4T3tB{@;NM&6 z(owu$!OEDAsN|I*yHZTqpSB0Hw&gl)S7A)#ff3!R5Y2CgYl$gl1RM)@??f;y#W9KRcBuq literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__5/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__5/why3session.xml index 1b80d1f03..b99d927cc 100644 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__5/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__5/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__5/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__5/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..508f13f3d4590513ef3af635577f00c3ffa0ec49 GIT binary patch literal 194 zcmV;z06qU7iwFP!00000|CNogZUQk7M0=-693=i8 zP!uU8G@~irycs*lwd2@0w|>Fe&<8F!gg_#)NO94r=TIFBe5!@#a)+$B0cCT3)`bB806u+Q4*&oF literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__6/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__6/why3session.xml deleted file mode 100644 index 4d9fe8c3c..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__6/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__7/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__7/why3session.xml deleted file mode 100644 index aadea962e..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__7/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__8/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__8/why3session.xml deleted file mode 100644 index 65e4b8331..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__8/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__9/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__9/why3session.xml deleted file mode 100644 index b3ce0453b..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_actual__9/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_base/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_base/why3session.xml deleted file mode 100644 index 78d6a7d71..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_base/why3session.xml +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_base__2/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_base__2/why3session.xml deleted file mode 100644 index deb2d6c50..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_base__2/why3session.xml +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_base__3/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_base__3/why3session.xml deleted file mode 100644 index 0cc4e308f..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_base__3/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__to_base__4/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__to_base__4/why3session.xml deleted file mode 100644 index c20cdf3c6..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__to_base__4/why3session.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_checksum/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_checksum/why3session.xml deleted file mode 100644 index e10200d5c..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_checksum/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_destination_unreachable/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_destination_unreachable/why3session.xml deleted file mode 100644 index f3b2382c0..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_destination_unreachable/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_redirect/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_redirect/why3session.xml deleted file mode 100644 index 9896bc6d3..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_redirect/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_time_exceeded/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_time_exceeded/why3session.xml deleted file mode 100644 index a63c12e2c..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_time_exceeded/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_zero/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_zero/why3session.xml deleted file mode 100644 index 53ceab789..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_code_zero/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_gateway_internet_address/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_gateway_internet_address/why3session.xml deleted file mode 100644 index 877a6927a..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_gateway_internet_address/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_identifier/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_identifier/why3session.xml deleted file mode 100644 index 03e275044..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_identifier/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_pointer/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_pointer/why3session.xml deleted file mode 100644 index e59334db8..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_pointer/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_sequence_number/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_sequence_number/why3session.xml deleted file mode 100644 index 1c91d5183..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_sequence_number/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_tag/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_tag/why3session.xml deleted file mode 100644 index 31b3b4b75..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_tag/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_timestamp/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_timestamp/why3session.xml deleted file mode 100644 index 5e431afc9..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_timestamp/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_24/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_24/why3session.xml deleted file mode 100644 index 8cf4ba591..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_24/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_32/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_32/why3session.xml deleted file mode 100644 index 3cff52adc..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__unreachable_icmp_unused_32/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__valid/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__valid/why3session.xml deleted file mode 100644 index 444968aa0..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__valid/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__valid__2/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__valid__2/why3session.xml deleted file mode 100644 index 617092ba1..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__valid__2/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__valid__3/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__valid__3/why3session.xml deleted file mode 100644 index c129026f0..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__valid__3/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__icmp__valid__4/why3session.xml b/tests/spark/proof/sessions/ada___rflx__icmp__valid__4/why3session.xml deleted file mode 100644 index 6dd4796d9..000000000 --- a/tests/spark/proof/sessions/ada___rflx__icmp__valid__4/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet/why3session.xml b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet/why3session.xml index 293a2c79f..ba2d5cb8d 100644 --- a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet/why3session.xml @@ -3,837 +3,803 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - - - - - - - - - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - + + - + - - - - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - - - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - - - - + - - - - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..2bf07dce3d6f0354d07249ab2faa0842b9df64d1 GIT binary patch literal 14472 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload/why3session.xml b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload/why3session.xml index 3a8f9191f..e79776595 100644 --- a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload/why3session.xml @@ -3,484 +3,369 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - + - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - - - - + + - - - + + - - + + - - - + + - - + + - + - + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - + + - + - - + + - - - - - - - + + - + - - + + - + - - - - - - - - - - - - - - - + - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - - - - + + - + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..54fc74b7e919164c280e78021b3a721d2f3c1894 GIT binary patch literal 7093 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 - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c31baf5b5e647ba792d770971378c21b529e8d6 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(I$^ACZ2}I8x1yZ@$fP;-)!P#; - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_generating_ipv4_in_ethernet__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c31baf5b5e647ba792d770971378c21b529e8d6 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(I$^ACZ2}I8x1yZ@$fP;-)!P#; - + - - - - + + + + - - - - - - - - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - - - - - - - - + + - - + + - + - - + + - + - + - + - - + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_parsing_ipv4_in_ethernet/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__test_parsing_ipv4_in_ethernet/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..25ff6b2564cd8c7235ce64b48751b954433b6034 GIT binary patch literal 4031 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__write_data/why3session.xml b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__write_data/why3session.xml index b4801b2b4..03529cfdf 100644 --- a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__write_data/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__write_data/why3session.xml @@ -3,72 +3,61 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - - - - - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__write_data/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ethernet_tests__write_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e2927a785c49e077d2d4cfa35401e5e1556d7ef8 GIT binary patch literal 803 zcmV+;1Kj){iwFP!00000|Ls^!Z{s!)z4KS}UIgH9_#pz#K^J2U1U(hH3PWT(N>FXx3-x34DeaP`X61feslt0!h$FLeB! zj$8Up_nXoe8mXW8IMDKbw9{r+&&5TJvC#UGR(D6gX6Wo?OK@TO$n(tE0~re=Ytx_qKXzrr#GgEp9r?O`BKj z^u8OceeJdR(ueJJ{tIg_>EZU@{oG#C+wBEEY_?;2^3_vSMrsfrJZ3&qszp>Y^Wa1NXL3w#2njAoaZm=H)KYg-H#<8%tTM$}HCv@+hM z%mHkzkRoelW$32{l8GRzP_V5)_peL^hd9029R(EF1EYx|C333X?8cIp=i~S!NxT;8UP%J$Qs9 z8pb%~15l`~Wv|hdWV9$7Q-s9D>k> - + - - - - + + + + - - - - - - - - - - - - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - + - + - - + + - + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - + + - + - - - - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - - - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - - - - - - - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1db491775dd52fda86c79a3d65326f44b3f51f91 GIT binary patch literal 18042 zcmbTdWmH>h)Gmr^io1Jpr?>`};%>oR3&kb4Tk+!V?(R-;FYZq9qKCcrch0zD+<327t(#J{)q^Gtn*UFo`_%R7d9dloqO5k+&1R3Q;!kaaV7gSY3R z!XcU}t>Vj&S-V}U+tbUF52cJuqPR+)wA+gFgw#rMLa(WLhoYou-0ah#((50zuFa%o zH`MOX!}hBhl;-BCKgZpE?}yQV)3vo41L4h$s{ZDy*uy2fu8`-HTSBJ#a)YJZk6>BU!ZVk_LaSR47I1`cFx-2)0^RW_u%RJ>(j;d_t#-n z@77MHH?7@aO#Qy~@$-k_O%vDWTla^Wm?`eROQtdg#>d-tZ*S9askS9tj?Z2#e$k^7 z-J#EqS9Y(bda8ww7;jIiEvPJ~D@6s4tN6!BZ`Ti3sufbx=VuvHE7~@ zz8J!9l;_d&{VlbV<F9j5*ezI9a^D^%IAbt_CAttz^NtTf|27a4A{ zz9fTs{M|OB-(4;4p<1(slLrBAg=4lxP2M<7O7m^*5IMI3=dpZm(JI8JxGisJwTUlJ zI40y9ePt7y=79T>*LbMD{UMNfs>hcGmgY{{hC@h@lH3Xf3?8Qgrc@H5AL7FL<@TmO z(VkLQqR$FJ`dzWj(Z)Iu`#m_{qV#y!d&PUiusm$3`8Hsp4{{)|mR zfFShvA>g3E2SU&&5LzGK=vMj8Qhr_`C^&plHSn?_9oib@>fUK+!hE^tw*B^{qoc#u zPiIq5XzM()yki_gW=UQ<3C$G^yMxFdfK`uOY!U7{D= zkfODCJ+0^b$bI>21R~r)L{%n@hL&pcS@=5Yt#pYM{*>l%WZSGTpyw=~T4{9@vcuXdD8D%j2VMZ>6 ztbB*10ao;am*!7$FYgoZ5i|)W6~*B+D80O~7z(DF+EeJ0;M-vYJlwWhUbdqbFM&2bRLO_etXe(gSa@J$MqYn755!}LO0pRk<3*K~$2#^aBFWaDzh z`sHD2P5<`G)7%=TR9N<ohMK4v(PD7tz7D}7?#){3riifrvM6=G@L;M#j+ElrKW+-q5 zGSpv5GNo@aIe4&90XNxdSzBb4sO0Fe&F9&HHB^8ylv@T)m?@lc~eW5MvF-tKN|*lsp$ zAup0FwR1D!5c<~@w%k7Lex5?~MwdUHt_hEyV*^YfhI@-<|y2*yljDj9Euk^L2L`KZF}9pd$le4%{OE zB5@JC@Fw$?Bq4KYDYqw`-U8vtj*5dQSkZ-u(NEgl4QC=3*53rZCbevbInFlO!cu5I z5B%J}s5C9V(P&ezMPR8_%W7hEPT{3vw*lTgy*`spcGvyQO($*hsl{>_r5qG6CV4Ft zP$30NtsxjGHFre!dmCW6QvOoM7$gr32muEI7^vbX}iUAIuQm1 z8Gh%C0unkD+~4EzZHs6LK`V$+3};)t`e_|*_s)M({dNI*^&u5Y9*JfU{`25IHlzZu zq2j_w<cC1yj1RH?Sz_;Zk@wB%efqA7OOig(>mQzMFJD%8EhOPZ6Zt%? z7uO_BnAu3hJ()+6A>y-Q>-I$oQlM4?$kI29FL>@+_CU&@a;anixh!fwi3EqvN{_JH zaS&I|To`%}0tiNr0cvO*QijkX5!wZh9{v^=Hj%ZfnYpGLcXYz&fc4u(2Ctyvr#K<) zFh+5l9WItPcxI10)@hPuT|CPT6CGBjR26u-aRT6$c$+sS1=^PiI&d7eJd~|{1zc6**5Sw7YXWk)9 zQe^E|qc{pgo~Q7-lk7Nn$Wg(HVZlb+V|V}n99+KzY`@%{nc^3H`Jpbp%Zat?NM=o;-jC4$}k}CD&z`McyB0G~$gk0@(P}h)uEU@6^Nd zD9*#vDl_`;2ZfN)ByBR8a3mdj8bBWlF7%1X7ip8UT;s|LdPnQe?Y=w!HUtW|%^?Oh zI5r6Y(Xe8sB4#Hbz6MzQcN&S{DaMxzlOi6?pKC*gO2W z;ARDfZ#~t^?^{<~rbJsq>oHr$#_*NS`s-IkkqyxTKg9Pht_Q19U*_7J+DG}?6hR5Y zikDU2SJvnyAC{zu~{13rwo)%#C(yuUYTI!w&$t=_U7DChe{MDF0B5TF}u zmt5iCpm&F3DWG@ZAp?PMG(GKj5;Q%`>H~eRO?ARY@76w86fc>^Fq3Rhm^=}9aark!5+@DSjKf7?R7NB|^yR4jDHgQJJhGP7jI6UtJ1!QbF2%VRpqsY6<-a%n&ix#foRgqc%%Qri zs*;O+25$I1rO1ILRL}qMM2(dm8z(FxHY5$QFsJfXp~|2Z`pUSxfR6`=8r4lWmZ77x zKcgPDQbY}9d;%pD94nsnn_lAEGS$9smeV zj~jaRZ0qsa^5^(ENtc3fOjqpp2aO+TXB(?N>lOIV_N%w~c1F*>rjw{kFISVX9b7a` z!qo`c)+BZFe@9fJ7$q0!Oo{#MDqCq9o&0;Oy`-$YgdzJX{t~`-94chZxR||jtbAlw zW_jGA@zA32;9xijbD9lK!6Mz|AHXO6Mnv{oZPQW9!*9@D!uGavCGV35jJT-o96zmp z_3i*ZMJYC?yS23ZPHQ*b_->LM|2LBtFVRC|AjgZQTIH}M%lai!yw+`8=`^)nHM|fDRM&s9SH92dEDx0si6Q_{>H%)JUh0+ zZVe2S>QX*ZdMP%yLZdhqC^oONpi5tQ?>O%=C$_?vrev5cGHVy1OpuE#~rLJ1if0_V`I5<*HNr$!4taW=ObUZPeXJeu)cWY7^)eLYz& zwQ?Yg{yQMQV_NUX^^<2s9>gS`VT*3dB$1KUxl#n(c^6p8r~O*ttMTqy*1axB^j)z3 zqj<4GRpCSK?g#EISR|s#^C$~hM#4g?2XWJp{-w!riNKGN06Q08<&@dbQj@iHe1=>HaZlsRxZK-&_2y)E8h$UiJX>dx-ihASaCTf* z=t-B25?Xxd%2!7!wMH33#}$_Ut7?WUX0|aElgFAcx@K%*V5U^jh|primMHTjt{#(9 z7eUGwk}^;tsFF(in$aWq1zX0qo8#j(XJPVxrI!n8s2pLm_*V(VvZDcZZY4gE4~y76 zju{LM4rXMy>&mvEp=(@ila_8pWqAyo`Fb3Wj+G^5#D*;JW2u8j`%GI&>hv`9YXZJ@ zWxS1U^rR$ZENb%MU3{q$=J=?-iaHze_1t|wlDX&3qOS_}6;eLedh-yS=cmj$y+W)K z&p;O$K%B?$9L$pW^F3<=A*`7 zf1rJ{RPYz}Lh~#$Kgy%G17yI;a_`Qj)oMuux;d2Ir$GKek878eOFo2PdgrQ2F^Om46$d}&BCcSxlnTy?Rk^VJJ|Ui*(B z+2)MtP)vRTHwa#*szQsblFUGt`I6bi@*K>g#kD;<1d7P+res2>tXT$WtjLp1KIUcj z8V_ou$V1RTU~aV`vU*#^{F|V>q2K_x*t0EmZ$xzTEsiqExl9B^^Embu8|9Q4>R;p5 zvH?sXIKWeH%gV(H91Z01ea{s4ThPI;-S8*TpUk(5sOb-QY*BcU6L%Em-|c#5k8$@P z&(b12MBq(IhF=ALS~>)=F!>d&5N^wjXItG%KF(hM<856HFCT{eBWm+*E#K*Xs_J6s z7nS@;WYPeu%?~cEj7N{UGqLvCW9x)tZ4}IdH+)T9)!#wygkxJ+`9nCMmJY`qQQDi{ zrx9D>ts%tl{*<`+g@BQ+z)g_S|HJEAtYM;Xu~Z(u_{Cshd8aBXS&qX=xdy``BYosl z9LjQBZ9!Pr4|9SSoT-ro2%^uF+E}*58*?UMJj-Dxy(Ul(;BR(!uT8#l_4NNv@C@yY z6vkj8jzT7U5a#}HIbofye_Sp$ndKjs%ikaWXrW##|FTd1KSlb!^AFo=c9-|}4nU?R zX7>cq(tR1(Owjb=2txi7{s(q=3ebR6lG=wS5FLmggV8HlaQtn|w42|w1}jcd$l@dJ z@gSF?{Qt;`@O}UAI%+c18wN-qEZ7??3-J*-g98MXGpfj-&Kd(PmZjRhhjW$-=GvR< z@C1>c=(ou*AJ9-np%0A=5002^M#sqzwdIT%v0$c@2@vZ&VH)gwUM0+xluP;o0+2DN`sAz)Jf0PO!I;?0v(e-Pbn&ZXfmCNWj)j_>cv8q6x%m*KmswJ4#e;pZ*S zQlBd8W?pcM1|-3(ikcv>!r(z^ege;=i+l^1%%0WCvH(^4hT`|uuU?ehT5PT8k4}<-sQ)V<(3-y93vl@#{R4}t#cR0 zwCvP%@4QYUPuru9MQ0WK;_^?NkPx}N&iFtqTvwcxwB7mCcqS{`;g<>+z*iY zZa>t-1yj0NRorY5`)3}kdgH)rEbgZk8^#qy=nsjY~;pygXjSbLI12d8I#e6 z&g9Z^sUL74%wl{bf&Z&0Pb!;gBI`c8zxncyk0-q6$(??Yvx(IS^E5eG^fI!;(BOsFC)ZFuDMRehLD$qta=%N3s%<={w5l*1- zsr-OX^Y0J-i0;hC5U`!lv@W6LrfC4HXeybeXdLo53<^$4qR^Qcu3R=sk@G=#e4;8- zOpht>rxlJAXtwVkwNo2vJ}iQvVY2w{jgN@ zY!}C-MPeDV^iiZCIJP42Sq(^}G1gyrHAtqn?Z%<)*tTk9bIht1w8H(<1}BWoGmRJj ze1ndz(UNAQ!kN8eep}NYz-$C7u>Ys}SJuy|n50RVxXIAYMBN3eMpK3r-}zGMQ$I7i z_APVbNIljO>f?IOZ&&g+4#5@hZbLj*_*l}c)Alo_zY_y3y(@+MW_l7-|gtb&KZ&Ae< zD4o|FGQU~JyRfRWC`zBd#9J}NT$wQNJAi?vB8V$j6i?# z9<&y7gs5Z~f@u3UA_m0etKwvsFVAn3g^)D3KO#rD;`Jpk7>iy~1AOp|RA9kUeT`?Hp;*ZHh(ENTf8w{9o{wM#FDrA&OvB1L&MO6GfPN zFf79B2dXu94q>1=+g}M^k^fcJX)tVg3f4YjW#GM=DC63~9JW3{+sUWmsGT8azvt`a zB=Q7|ITXh>L0XMYeUtWD#ktM={rqoGGlL^3oav+sh>w-HDi!62u#kV+KRl@(AqSkW zIH(*4M+iAP*w3|Z69yU60oxdk6*?7CbI||K6q^2m?5?PF_Zn;Yav^I5%Qjg;gg_8Z#wP6if@a5Ll^#no_!zymTPWF<4^xk zh}9DBUoSC1BCY?`_y|PDDr@cM3ZKQdJ4?R~EX%omNQHMDqaEtb0@h9Eso^1N2+(gpRID}-KXGr4={I-8|>^ErmpzK*Q{-_QE> z_NB#_k@WJJ@vfs8cCiR}>Ux>`%;Hv^aHCQ!C-B%L`<}e&Pp7>6Gq5CEP z=5QRlyBsE0D_iHmbsx=N#b2A*mko4GH|Vr~rv)yyt$`n4!jGXd`%jNMNWfc9AWE2^ zW#(`rAI#{2!-xEukLW{%g6G5M7z)w*Z_6$O2?e(|`MLj%xsQVY^SRNwJwJEF z+Ia`cY15{x>#A%uJ-n-zsfkk3niIbIJ>vR>xw+QT>&Kft7!SdjFPVUtOPHf>21~c_ z_4a^SA28avO{=euWU;Cp1le*TR2QJLlW=+6rs)V6xcWQ`N?-VG zc%A!2P7^oF1d&y}W$}LVpZ&e&=5Rwoe=bs6gk*t1_;io9o+bCSHkBLA<#)6Jy6-=W z*&V#jrPHHsqU_k#mc4rAlkMGVCEUYr)1uu_PgTyMql8H+CL6kZBcowgVp1}=K>8_u zQ~l=s4@=L2!pikkgvOpzDdn>D+|R>hf(VcuN2rjr5F^clq8}_rAlS*S$1(tHzSDVx z^IzZ=|(y@>F7Q+_sbE)GZE5{)O7J5B~p&^$zBCztC<^dcZsmN`z-_O zdr4(yRRh0XbMqf^yQK3^GH$46L**(e!e4cs4*PfCy%3%a^&BlvrYF@?J}XZBf#pax zSdXvx32)aNgOgWg=7H6o&K1Nbp9|d&-oBFAVtuUzN+RY5DLXUK%0MiCv;OGd{SmLi5zyeW z_%}B4dJ`-@=G$uN>(Je%Rm9z%Q2tnAj*q@E%HKv(q%DIIf))+}+8^=?AHp#t_M2~y zE$E9LFJX}bQqgc+N4HZ7ajGb~Dl$6d6iY5;7yezKUl$Q6b#ti9Noe!y@F$nxE%2BR_L3^G$wgMaObFl|+5>&NwC>mhT%YO??ID zdaGB9?xyJc`$Fem^F!-)64aCQ#M&Q27p9Xvf4e@v=~nlpJFfDFOf&;X{?OrXxB(K_?b8jQ-A> z2s-cLKlklWGCtc);69d`i+_!kve`6AWR=CECdH-3O{Q}e)hOP$6QIyzPenz%nqM4o zfVNARan_9Y@{Cbu+(oAH_+9cadC!smhvBkSO^&bE-_{(tnjJOOH<(OCz06^{5weEkQ3-vb*Ln}GMEYc1HiWf zXvc$=h#YnemhzN^XY_e~4%r;Z&-Cz>NgHDyj7ngDXm8GAOHNCJGpNKy4v7TrZZM!Y zkUZXrtR(zi5@Hsr2s!STTMwx*h5l;z7gMJU30;Q%5nrOlR0ui zAYsxXK5e|NP|Gx#d{vB*fRW8MY1|UT$x0wZM-W0h%u0lZ0tlS~gl-#)U;pBWK&Oeq zrCc5BH&PI@DMFnKJ-+EZ`lgoxBCn6r9wGfYA{T<5pA_+B?x<3Y^OB7>l}J8DQ6>g* zc+}o`P3VIZBG2z)L4@ZU9CVa^o%=jc^)Xd}6_E4)X?o}SN|1jZobscAnbT~ijnVK569V?J0BqdISrx{M@4R_;{7iBAVZz9@ZaAbM8pRHRP) zAyMpni2%-!kKqYq%lhTMhV3se$_ES~yf-pD9FJE+8Wt1K2aq>g9DlZ61m$R;Fu~!D z=i+#s-F5qY2&j0tQOHAshrNS}+s`Ik%oc{SMNq2X(ktH5ng{GwVp@a`A|9N3#hW`_ z?f&2CXwGyLOXKpRyz9d=4~@G?!aod|OTlsyv%~cP^1kme;79i;xADD86ZN2cQ|N$v zm+BkAxL;R?udsmWmSFmYsJ<=gnfe5N+cE)9Zl;sIZ6#pbTnRVxdM1Z?#P{&$)RTU< z9VZ0=zb3A4R@uR6-_*hado#*8AN$SUvcK!Rc&RI~KER{@q07HiJrY;JY??=~N~BUO zeMLvxlKjGaoqb!rW{S$KBK>0MZRgv48>y$8+Cc1P7=s=c^|{gS(*q0f_B+Ns>aWd2 z@dV`o+NVTX*(t5s-`W?94^w0hX;b=l8|0npXg`8v`lwpX6Drzq= zU8RsXDwY1sn&i;c6nF`S5OS-WaIR-qgzV-*-*oskZC-df*6y-2z+8B;f1}o?f6m&> z<;Ej_3MO)^RZP~aZ_r+4JZDJ!&YtdTQ}O2WIpeF+Z||V-mg1qi>OX(U6HK;T{){L$ z3?u$tG8_RwI6Yi3arQi3$NIfoX20*gzwJ6S3%^&hyze^Xh6m5M-&FpL$}~EY*Ek0+ zGV^zx&VFm{U;YcRymH3!bd}XrjN(f-E@t7x!i5OXRpt! z!q)**8dwqwVX#YA4xJ8tu-J`O6MLQ;-Ugg<>C}@6T^KSfI8hz?Sdj1=kF#?(yQ z?=#VK+0jgWhJGgyjAjj5%r#BvWdZj8T*;|+b zx74AVl)#k^D($K}saC!VL>a1k2iLtrx=k^=D&})es;a155^0p7hbBE0^viOM8>Ja9 zePs(-_73YblfYm$=jUNH;i)Nh0^zAg(MvAq=2|!2!KeEs>`l1``zF9>{gNBkzCY47 zAhTS_xAdU3(zyMsc6+;JvOw?q?a<#CrsHn}vsbc9E3l_kuI)^Fj+*5p${!i61{coK z93m8Q!hdSWzW@ydng;-a@s@?D&_3({4^wno$7d_sn{}|UT-}{NWJ^mOi`lisNp_T1>Pijgf7fTH4#e-3&51KJ%@m5LoyK}iJTp=+9!0qOpFp+VK3i*&Y)!M2JZc zF}@!X4hDMX1hRGoeq`%@^e@xzH@SS*^%2p2t<@IkXb@|7`@(&=U1S#T@zKh3kp#ov zIWL^`Sh~V0`4`{Cl>C1FHG4`0Ou#?eUHEPXkPt;OUy8dXzTIwp>u~K6*(EsG)AWcT z-8k;qn!Ct<5ylJFmOOAf04W`4YunqV+nMC2w0C_+#;0k|4*YEn`IE(rP)tWEzcq#15DAmf6|4IOoBOZ7YQS>Y&H>dhjZ9@hx@g>E7jBIV znnY}w<-aRIt0dEMvr^8wOQr(!TlDqC*kZxCR z%rM2+=IuQ&O4`r!_n4gfzL$o0B=fDI5#``X*zSA^PM;pH%&yn*l*^~?x3^ZVopAZI zc_ugaPu-^VwYmd6ZFXlo-lz=H&t|xk%9Tox9YDaq z+2z&x`u6Dc04=`dy2=J$l?m<4hp{EyLZ|N8(ed)k?($#fi%KU?KKEN5_pX=Y=KTv-yYSAig|T#67@AtnqLQFr`K(E?3i!eqwl2>P0l*%%(${JlybyLsD&eHfToHdRx@!9Cj&}!qweY4uqq{WY%}t} zdGc~S^ufVFEALEQ7MT*ed%XeG6?RR$UWcxhsvH z6}wFI#29|cJ`EmI28KF*MrqPS;s~-)MmS3Jne2kPW7zQ?Vg};#;Wb zx*LL|*2&D?){N+~CRwxDG877|`p;mPbY&bt`ch!Y5Mt0>y*)4k029Mm41VdOO z`rU@gK)03?v1dN>!p7hUfe?xu<*qs*<0{iaXP3TV`jjFS^!zQes_4pTX{3g+GBUj? zb|ZcJ!kLyRJlPbR3}q{8YEAlNb*!?*;9vDxHXVitnftvxbqSnaDwSh-8m+^&o`*K4 zW))YY`biRC`>njvBm*N9S?!cyZ0&HP8cEY51uOk|SM2-(4LHgZIm28#YT50&HVlai zIrWjTrK(@n)@GW$I9=0XrN8&JxX0MbE9vwybpz)j6LicN0PDw{H+wsNP12XnMC3mo(#Sg||1(MlO>m5-H;Nrx)OtCWu6T+KtE*6tO` z_O*^3alj8x`c!cqjEiIbA%xS=7~RG;FG)mt`XgDYWl5OnzbH@M2~cj`@RA;izc$_A0qca00MTg+gYX4u$V>q* zC^je)Q-<@xp`;|&QaK*U;I1TzYq3hrvI@N@oHypJdPjIt0RhU-tj2Z61dZDJi`It{ z%COis@}_8UH!V;s?5y+!8sC#fiQemTjLm?|Nc#o!^qRQZ24Z#8NHnkP|IJqdxKT3EMqf<| z@U)RnlB6(1)K4(Pc0`DE{1w5@lJi3riO5h~4q+HTS9&_p3WZDSj|eNDWadwNX%>%f zO)dIFq!x#lqt_oIM?-$PS3XohFP=eB?vHt1nXGOWP|gaiRmC|JCAk1PtJgug9pol$j&f$dq9KFTd@2@T1Lq?UC5c>lPP zB%K8elo+QWG;GHb`Z9qjfS$Aw;55V1_)d1UO-&Zqf@Je^N>D?FoP&WiR+8qEc7239 zEG0u89dVl>9b>6Dc4C(K+A4MkFOM#d8Du_Qgcxl#%&kEVW!hJZ2@THnyz8Q% zM=CY=yQjPa$0t5Gbd{*BoOAXYv@~$OJENkIss|X7F??mFfa3|<9D2C7Iip9Qzc7;M z6I3#BcAyVu>=(mc)m)JXNiGdKr;>ot4W53YN>d^(eep0FynBi7s0JxG+qNT$^z{+I}Q-s}fDW#eSlq4CL zDG7)p#Chp4^eBO5gK_(e?3l+)$15EBax(f^$*!j;sbJ#{n>e+m8eB({_2bu00%&G{ z&ba}P!4$tBkqYlP@9{NY!M)&iah>YkZ^)k`wNh$$+7ObJ8Cc;}wGzWLA_UxK+ZZ(( zYifIR_HD>5)i}Bnj+iBh%bCoz`3p256vG>-`^v}nFtxkNL|g#^0WnA^C#OV#fOEcz zmA)_KC759#*3h(=RcsQKIc$W8E*t{}Rd^W~N9QE4JZzqYGutIH89Jouc}FBTPcWh) zLnoMTn4K_JH=+w|HG+ULY>+)r@1Be0pIbVU=TQ-^4jY_oBG=NiF z5WFS)XGu>{k052<;NPW5hP@0-Ib;Z6ty@+S5B<5F;L%DkSw8QW1wpL>0j@q}2o;S+ zhOvyiVR@a+2@__G9utk^Ne9buRI45~iKsw;HcXl}tw;ifAiYA5 zBIGT#u66L;u$hiWixUZyF=Z5Uj&^8*XW@wEw*lVdfCGSolJl-z2neqf6$7#aSX@F` zERCg1a*gn4ARdM=NREzGFiS9BA_HvIU$`m*Mfk^2VYT!T=_t3L98vF)Cy?COVvo;4 zB1%&+49q~D5@JLVWr4Z!#A~E0(Zb6Tzef;}*wyxcj?nwb@cUiKNGS{_Uy(3vVVJQz zl;GlVQz?36DWE0T)l&*`1q{i3X4pe#WlbZczr|yc1;EnBZ}Kv((*b27&NC)%P(&vm3ltMvhNF#nF7YZao)}ivTF4AC^A_>qVUrjVZ7AMyZ zs@gJx>|s{n*t15M6a8G_jlh!B3)6!ssB#MxiG*`B515vk)sjS5l#JkoQ9+|^7Mlne z;U7z!{qQWfaVOY=l<8nJm1G29{H0D!?yZ6^ZQN(*uB0NxvcPJ%iEJuCWAEBW$?bG= zd+InA9DF_4ZE<-`DK;qxIC^yoNa;xd>O%Yw-TY^26-=?BAc`3uJs!`*^!@T2dVMhk zJeff7kdjetFE%}H5c8~_Ou;z9l_QO+8rHGWmD&~=1FeSWZ`xVL0`HY%G%Os|AhlHX z%JMJ)#5DFqodt3(RR$zZY>HE&ULL4P+Biz`!NGwD3?qvZLUwbQJPd}EBK*l(TXJfV zBY=j9M<2%O-jQ?~gX!!R%}_#^gmN)>5jt-{i|jyg@(f7`^)FHwT%K4cnkp`5C!UmH zO1S4$deYRfDj-fk%T!95z*(A|_m03x(&NHcx9MQcygXvr!?Hu>=)Sn!+U74W-d|JeGf4lQ>0G4kR;@8x*09#T+#m zbrre>u69mMw@6fWE~Rvkf1G?jFiLiEuk8C3UNAOZJc_X|07h&yq3`H7a92iKI)eOX zNfeU0zLdK>Hd!X#4M8u{v`!JEs78eiav^ruDcba5*)@7%B~~9ItV7kDKN*wcg@MS$ zh`Ag&vT2JBSu<9!_(+fzC!*2}BNn6$a{y2dpIL=hzNR0)KGkIT#{&gh74qH%S>{%MJC9*%)Sb%)M;dtln81?%fzP| zvAV9H$uVU5_LDLi9-T~2t{CGiOMQ`Qk7&W|e0Doqg`S+nZWoE&Z9B`Mpu14|$pm`GBs3001Y;k{}Q z^++%Tsc2ma7R{b?ZCn^viRd*lc299VQmqpjUMqWXCsoi(YIvEvTzbJ7?mG5XY zjq4vlPtt<}drIk5R# z1d}Jiw)%q`Gy^w)?CK#`7+@LfPeVW%{8}YsQ?5PzaOn~M?G^UW=VV8z0&Z=DwmcYq zP-CSJv^TKSKkpo(B{Ua;ZMXy`8z1yzq&WS@2{!C3Pit>q*jI^yT!O#ET41?=g4q^j zj59V}1V-3_Lryv!^4tEtOzhwkk2!AS5}XE$lZb|T-~nDcgdfdM@@Hq=Rmdfc9uUl$kKT zwRz<0^u7KRfj=ywxlBzkS|p_75hE^Os8TeOdW<1cleRu{0qLW}%f+fb4eTPtQ%Xil zj2i(y^$q12A?){&L^3<-QEt$qCmP+dnM*qgxCAEgbE!6H+tZoR=KMt3hW0>Jp_Q6x zVIW+fB>ch$YydCdxr>oue=HrEazb%ueg&k^tWg-mAKnnCpnJ(@BoPsvh#DlhqUlMQ z^N3%;0>f4nCOC-1e<|$fcrk>M$LAUQbqvdqx(LAZrWm|=$r0aKDb8i2=Ku&{YB_Ai zv_vsAa0rfx3lyp;X!-LBn=fVlpAT9gbNFC!)}4%=je34K10G?i$zN0I>k zx=+>eL68gR39@A-mMC2$5FyR_SzObJqh(b$lx|=&2@O3ihP)a#8eiUn0o$%6VCID= z9R=wqJ_I)mzI7#bQDETvsw8e!-q8vZ$uL>-@yHSN*faKl~dMRo$Ye!0wYf^l-djUMsD8wunu1q>cKbUr1b7l^Q zE>CuE4V|}RTtWn5+4ho>e<%@1(SkG~)b|y*mWyW{0DbOUh#fa;;s~)#Ai!iS$bznk zbA=o$f^jr$rXqN45(J5t0+1`r_eLB~tfHmA{R*MWe)kEHom0kZm7>03SD&yTyC#=j z7Nu6acmxuk-FL7H?#^N%^=u*_ORdB5V0sKH7YX+F{g_5;R4$EgfTlP zR0kNUAJtp}c2{qmdaY zv}h4AkPaE4#QNstD=jS`ccW)mr#n6ig05tfD9`R29n#5Ff-#MQ-LBwUs9&(@5RyT< zhZ>Z;a=Rg>D|0;>BhU1~NtLWZ0|3E%CfqFEAj?9ODB;h81$4X z#MpRdO1f%*G15S^)>{;e0k)}$lR-r!TjkwI3Uo(A9S-u>z#{}CG%iaQ=<$N#fdX@1 z?D$q3C~2m6T8cywm8g88LFOiFpquGLp+p&RCG=%IQDl@V?@lriBJWYDL|sTCZz2!m z0ZQA1WAunG5`_40pHfmj;!PaKDaILEDnm}rK*O#82{1^hMMOUJyUKPhgLvA=D%Uvy z&m+RMG@}@S&Rw4P@`4tyfIuOi~?RVBFsgc?z-AEjI+pUH3vc}+tHYARNxKySR7UKW zIDY7jxX*Uo7(=yc5+7_x5S-X+U%sgUs zqL7;WqMaW}ux1Wny0FqYsvHB-aJVrwEe+uB8nW(%Ic(x0;Gj~=Cvz*@^++t|neP8E$QjMrU zbmA40+%r|OB8fP_s9~NTvD-!=kt53EE+|JpPzW)__Dvcz7ZGsAXQY5-_u^q4uof)j zLlPy*vn#_dG}p>xNeBABV2g z7-8*H+ESjbF96U-8geO6M-8XiZ;N9R+0X)Z`3Dm(15HCyamm>h18C9Xi*z9&+UMox zD46Bp42(;2Dj`ip5RiJEA@C9sOVhMv!a-2l5DPLCo_H=JGGD@mSl4e?K|BbnP4AYOl&1*r!d|Cij zC!KwjcO)H&KMV%O2>Z78qz&d4-IbCoh-cbFPo9s?*}^L4dyof$DEb(mMZ6TyHjdF! zllvb?0=QyZ5ONFuG$015)uQ3gPUlr1t#QsVP>;F%K!C~bMNPXngkWUrG23^Yo2Y;( z+(Lu5t0J^SkK}?Y43P`?Cb7odUe_>>JsmP}bn(M7t_dDInj?slhCv(rn-}CAAIhhx z?an$B)1-y=-K4Ndx|z^MO$JRJ)`Ki$CTy&eyeGTaL4gu`hmcn4g;ani(lBG4@d;1n2}gM zvz_yjT^S(Cnq$?)jLlOgQ2MV^Dnr@Je|={AC&tOb?aBJWw8@x;(+^<8GKrMv>(p-5 z6Zt9Q1_vczI(Tof;$O%S!_{+;h>3(hOem6F-GLRa!85rFfI%|Zdc!zwSDs9wu*pZ5 z2*d?Diw5PPx8+cyuywkrr!(&T>LI+|i7>9jsHd-y1vZ$8d#3?06gIDu!~`gj6&EN? zBMN&kpbe47U=-%RNL+T;XnVg9n(1M7APu4mfV*N;&R<~C zv;xq>3qQO{FHRmEQYpNLoS+(QG{L;SuYXPDcchyp*Dt7ZdZ3e3Ffuzzu^W1zO4`92 zEt+kTeO5oU$u`@SE`VcQeg9kAO>xypk;61p@+d+!ygT|P*$7A25Y!7nZgtu0m&}hu zb>Xi3zXERrkozNX%4nMgcy=__8dFHF(_j#}b0mag)^djx44wlgLH6KE^bImElD{E$ zjy5PncF0q(Ocw|(i=se)h9xmC=ytHwOd@h9GAwxt=>psx7gW(rbF>YFmDi+b5N1{x zrm?_?0)COokWp%c2nu6|tIZlBA$PV|{}7Q9@^q!3nM%RWXwfODV%eM&>jL_T<%M>d zY4JuFZ9Nt&q+1yTVVY)kW$?S!8j1m3GOB_gHm(EhT6zlSQZwYvI0=$JD()cmhYXPM zP-&QUGK4j0vXDC?NE7MCETm}wH@fZNF<6f1uDn7e4?*rsdm6T&Qj(;bN=j4b6+&cO z5tiqy@i*kolsnc20fWg)bRMxg;OlZj_nRo6s!s@Zu`VE1(KQxcM;lEwvU#YPvPMhG zbm|*&=a|twRe(KhC*+YbHpJ724-n^+S=vlc$eqC~pc_%1q}>;iKi!`Nhj&=nLY+JW zxiba@s1itQG5C3b^@);`0=WZXTCg=WGv``E*6B+M`dywO1E2_!gasT&+MZ8xMv5H~ z5_v!ug3D6Xz9$z9g47n%5()-XIJt>9T%X{y`gRC=Qu$y`otlTMMaQF9hl{u_P5et%q zt&;9nXl|)9E99*R6#?YDK(wYRx)l`pjWZ<;R5Mvf*r7KSK@Cb}upGl1unY?{!D@m; zBheBGJ0fsPAj6znC#Zs->2zzP)KrphuG9fs@P7~bAdI2gfomjJR0Ojc36p3-DJ1N5 z<~7|M3ZholXaNCXc|gKwh_=nLi-etOytGW9e`&!GA(cNWoE`ylkp=__yQOU{4^znP zY|sez5aigjA&qd#Ce)-NH=;jbkSJ@~9!H){m8gR5zeH3hQs0oUdqfgcWCh+NZG+J5 zwQf(JG9u{$kra%CTP%%O@$bTZD zJ}l)p083+PW>;9i41y`-F@|nMpxKw{W=-HNYi^rCg1Mq}2gw@U2L`7`oCE-1>7}j9 zoG_A_(JUa5s9+*kq|xM@Il@*jM_cH*AvqFuETsZD5LO`MMI|_iXvAtmRTGVAYpl^m zF2bxL(!z&%4YUJWdcvtdu3sd#)JWK~7~ozdKv*jWrzLjMU507%#-xe>CVCYiFQPk! z9y+fPRlr?}7%6mcCNwv3s&lP5gG3ZzE(JD}J|ST%6m5g6(p52U`lipdhCu~9jG-!^ z%&AgHyMq=N4)ZGA;-sl`erDewl^{KpxlC42GzAbt1-{B`hBPlVv*%j-|9Yw&(cJ - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - - - - - - + + - - + + - - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..24ff001142f1f9db00bd0b6dbe77f25951e3ef6e GIT binary patch literal 4918 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 okG0lx!G?q)5Jhs*L=|dF - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c31baf5b5e647ba792d770971378c21b529e8d6 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(I$^ACZ2}I8x1yZ@$fP;-)!P#; - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_generating_udp_in_ipv4_in_ethernet__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c31baf5b5e647ba792d770971378c21b529e8d6 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(I$^ACZ2}I8x1yZ@$fP;-)!P#; - + - - - - + + + + - - - - - - - - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - - - - - - - - + + - - + + - + - - + + - + - + - + - - + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_parsing_udp_in_ipv4/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_parsing_udp_in_ipv4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5ce3cc6298b823cdd52f2573314f3c8c5cde41c7 GIT binary patch literal 4071 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_parsing_udp_in_ipv4_in_ethernet/why3session.xml b/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_parsing_udp_in_ipv4_in_ethernet/why3session.xml index 2f6091f24..93f97da5d 100644 --- a/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_parsing_udp_in_ipv4_in_ethernet/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_parsing_udp_in_ipv4_in_ethernet/why3session.xml @@ -3,369 +3,330 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - - - - - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - - - - - - - + + - - + + - - - + + - - + + - + - - - - - - + + - + - + - - - - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - - - - - - - + - + - - + + - + - - + + - - - + + - - + + - - + + - - + + - - + + - - - - - - - + - - + + - + - - + + - + - - + + - + - + - + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_parsing_udp_in_ipv4_in_ethernet/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__test_parsing_udp_in_ipv4_in_ethernet/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..573100162a5be583ef643ed4e93af7c6de4d1cac GIT binary patch literal 5758 zcmXBXgA!81|vuJ=*JNeSsvK=Re! zd!K*co_p@@xnqg}p#3kNj&oMt0!NZQoE~xpwoqeY`pKX@#}wp0X6$vw?66rQ^E+Zu z;T<8Hlj_p#389*x;54a=eygEjRq{&PPT5xZ>yz>wE9L?y>%N-q&-`Z{JtH zYnLYMZ_0Mxi?Y0x$!Y&{?;)AfF>#VUw6`tOwo=-7Q+Iz}u5S5!cfCZnr#*7^e)WMy zi&?gVY4yI_)FXkjR|zq`lb7)4>Uv*zJVZOe2XFVX@GiMz#yvz#x97)t%Srjz#{Q@&!RV;0g^FMjUl&tOUHrUVmToJYPuQyEfSCZV11E*%;2`C%&lLW!5{Esbl#cm zL_vopS1*r`a~Wq=zIop5zwo)se#sr;-LijjdB0Flg3;y?ay!)&BRNX}%5;_|{2`{7 zeR+M|GV`l8>O-F^q>vza*LPN*I zOwV}q{tBnqa=T?N(_3;pVSqpLyPq_2;$#)%C|TFB+=A7&`LyF_&2PCKxEy3~95Vla zoX~}|{?vYWKpgNM+G9QHTa@djpG9;cjXhYH&SJ){E}AxdWoS%2yj8CLG!Lm<@#8Sy zgH%+*di5`hu%((#aH;JrSDEA)QzUMlNcQ-T+?6Bt$4_9ljIW5vX0JImBjm(CLAGtj zqDRHUEbW>*zzpMOfH~(MkM}=b65HHe8Zfk)*w1$w=wh!emWMi{%yBR`+z}SwGiNii z9m^frHP8?xhKlxsY-~_D-=shGXAAVI_MYKt9A>L+1YKFlGM#O?$?xaZly50dR@zmO zOF?Z3HXL6)%WF!`HNrK*iIu~Fp#Cjd#7jCO8Y7xc5KWa#fUlMZm6ekMtxCyJuG=1s zMAn4WC=?0}@ynPvIX(Lgv-s`U$92th-2%FPe>B;}kuXY*WqkP$ljAga-mL=>bZB5}VoUK#!i?HR!# zwd5%Ida2n@NlsrpK>Q9|hfo2N-xu#$yvRg+ko*gy%4r!w#RqRM(r29#PxHct6WBF( z=J~2$^dQ!+70{bdRTs4vOb-|~k?{q&ZBK7H^dPC;fx|b^7r|XPrV&p#2-&gOeZIn6 zuG0mW(J7lr*Nd)@1*xcmME)xNKL(6+8_~#_9mGz<87q4rz+yftJ>Ox!1+gyIOu*ytbMd>4 z^URTrmzy}&hxgQkilb_F9p7Ec9LgR1h8*^%%_m<}=H%AMYGN{G#rgv)HPiJiA@3Z8 z4xAed^QM@sdQuJCs|uNnEQmq~emVI<5tv`vW50RzT{{Z3n~+&xAqxEp3@fKdC@c_& z!tq9%mMI^;*LT7+zkeOt0?w$iUtVfLnS5>bFrmw_w^4_ztYyk}|4LBI%n!qJub(Q* z(~y!02sGaBu^_5K^?2_{{Iqjw$deNdg}c&DP}2W% zN=QGRb{xl+F7Ixo`}>!*7R6Zscq3g=9@K{m?7Lm$IL5>l*<3(a+CHAVS=$#3yE6<> zLqjiA!2gmunF{!aDHU*;XMb6L1?&IX3=){{N`pGAk^14)IKI`V`|RyXDf1kH^yt_eJ>-$RKm%N>&8YO{OYMFkow2@)oklDV();JSkuQqe zz0|;;oO{@KTwL(aEnX2PoJi2UP6!|tXtIR1O*pQF)ZmBfntsg>;C}0)(?LuTCsIC0 zpUx&v`{%yR-vdb<;S}V1(N_l)irr@^aA?nh9GpA8`m9TBj~A10RT5N#PqajLgb~5K zRWVF=sdy@1fa$}=(XHu5%)qvn>v z`D~+4z%OHcoVAP!Y-Z%Q7UpMNo@t0M4$Pmo9sXkD58p#Y-u9Z&%2>`heD0CPTj~}R z>&QBpvmriNIqu@_D7UJx@?WtCG_;bur>M_3GjV|xN@c4wxkV3HW)atBGBsipVQlmI zpRW@o+KQZ&%vlUt3_enI-85H3c;#x=yeZEtd*c`R#?f)|JSr<1PB%b_eM*hZ;WlJ) zzVNwvD*rvqfRhQ-JZq3x-{1mMy7V= zAM=w1x=2WFr~RJT%PM~~l|v~Q<}I)HE6`VGb2@9Cm0-!6fhYDG$ws?IC$kaT+QSIi zmdTA|Qz>hzU;7Rcu)zK3)Zdf=@tI7`!2#OZ*(YKm9)i~1VepH>{Q%u9N}|S+i9-i} zSL>T{>cQ^r3P$O>1JwD)p2*#S{ye7imG*6pkR(@JAW+M0f-}5|r^M^0!i~z@kYu`O z-&HyLK=n8^F^7lDX3W;(Am&8peMM8#T)3rM^uxIQMX&uywZe7CgD@->n7a!edoDtQrjvGb-R^YZ@||$*+m>7EnW>#?wD3Q{lS;a3d+Nr zh)Gl;D)IVjqV0p;rru!;>I3RSx~mS9o}NqnpEW%7muT;TnruLFfAt0cdq+ANjW7N= zRlB$gmRkHe`{9slnG55eH3^LF6K@DFdM_8+KQb6-k_a!TY?(`$i|?L`sR$RIsD2QH zm`{{#N8s{&nVg^0w2W@Bk}0@i<#mC$1rq@`h z-X>d|SoKabc1VKbWT*mgCrU*Oqr)n$|4Asg-a&|_&en~h zXQ5Swmi=`D4mItW8KVjZS}d=m$9c?s<0k@AY3zMBgv$Xt8zVEH1Jv7}`) zx=xW&EDd%f-cGMAptvX09fDflIhF@LhutYUU!KypO=9+E>zwAgxs?)M3z_=!obvS% zFrO{0+P9G0k3)LyuO~wO>_KF;Lmq3hdL9wk^f#NTXw4kAw-6sl1lnGn&PgnewOU8V zT-K~b2s$0F>fi{cOXqj11;Ul|G!@tu%eqfE>mi=<%W~6lUl~d%7Pqx zKImA`JQ5dX7Sxq0Krgt`?EeQy6(m>p>hCq9hvz-oh!4%mf%ue|J0VtU zeR_>_SWye=;+*NZxF z|Hu5?`pB_J<4_POA}DTKypv|nMJ}|)G2WGy#>J$#MKeJEQDHXsB9zc@9?qs+aNP?Q zTGoThf3jBa2jPumD^D~PhpHOjB@JS<7{L;cM2DRU)srQ+hpVnc4{5afU64t$!S#9Slq~ z(|LF|9R)90tcRuqEP0mL`w^(@LkflY_}&JJw;}{myXJ2QJ{1W>gITadfzj?e#q2Eg zJQ%vHU<0CrX?9vgC=A^~jMER&nm)qurJ*RQoeYp7BCJk{XwE1le_2NZ8-q`Qv)?bL zI_j^n>6VSa?f$DWme?Am(SH8TIvGTZ0#BXg7YSrQ#-(9?h3xt_%*pc_e#^_rao#F# z*c*NmjUvqK76~LAHj#z(P?fpuY+(Gy7!nCsv~5HL8y`DgSmA8^G~wI_KwuH=yqE*Z zg>5mtUnS{$Fak5r}+uY z%Qbx;>S4iaRM<$Av)*lo#MNod4%si8MmGNWAvAne|>J9CtobxDn3X8G2uVzCf z6P~CPO%YeBrR;KGMhl`x4h|9E7G>ZSBuilql8q|C*h;TxSO|}eMCZ?47?Re!$Z{rV z?@Xp)n<(%qiJj*d*=;|7$6I(1PA0#L>~+|SpoF_q{P@oi;jf0H<30DLkLfzDRB9=$`)C9FcUQpOeuq-o1L~Bf0SMH<8D$E zD_}YE%p{7OqkYU5rZqM}hQDQ4D-rdrMZ~8Rs)p(K)q1k@d!J;+C&2!0}~{sC8=Pf ziQqf!>hQO*+c-l>8@}L@*#2iDDI|Ng)>z>OIreBW49@tIRosA~XSNQBb!r$f!v6G# zX@KJZ6uruz4g>~-VyZ`*e*R_<4#C<|gRN)eo<&Sx8~|9zl01Y%%fw8%6%wBacx=?E z)iKMJSz-WA5=U~0I7njo;(F8E4)f#`5^d4{&=$EitqPn5ctMhhvE^p>i{J1^l;N_& z=EKzAL(BW^bnr@PwQ!wo142d7;K2v5{~~>KUP&9p3Nx%YhVP?;XN_O^hc8U z8K9|}VD-_GL}cegHy11EgrjMXrIE0Mc)8gMut+fbunSW3pA~+F6lL_EWniTeeGR0j z82IF7V|;+Kk88dSc1MwJZv#w5Jx0XUvzzXdOQryA%yr$8QrqT8hN3|t(8fs>A6@eB zGf-v{%oMFh&m*k3EQ{>k#{H&hOfw0`nhctp3B=$_BGPN5BTbGnRBsoADAN;4l6+7= zgk}+qf)NmjTyibQi~{)}T~*%JndJ0KbzuqL1LGo7qk`gJARu@A`!{rRfcjK~)8&>| zgt3ZGJRi(wD>J7c(@BZCP>UKfpv(lXfTM5IQdN(_X0#GNikE)=00^Ia&(fx%qVuW9 z6t_t;f10HzFf=|DZV2Z&FLnf?y^WaWAPIX0@Ww<{5#)%Eq`+(=gaZ?znVG8^l}Qne zF-|;sKNUW?D@j7S7dD_MdM(^B)w&|M=h8+fi!UGBw8J@qiZF#l;tPW08s`uO8b(J4 zR>Gg!dHFTJ1KVISrW~MiD1kxDY!VAuiproRod`MWstR_T$|0C21#C~o>CG_T099Gd zXIC+hXX7@inu5WpTKkBsQ|{8V+N(d5>3~;wP##B1OIu)y38E?tBNTWgUx9F#9ZBU9 zR}TnN^k|QPg|V=@2Gq;bg=LJWH4JAk{JJFN#4lwnP%sJR(M)mAb1b> sD++n7mD-l@i3^Gnl+GRWRpc{`3PXQ@x?@iq4xiAIMH(CPUD4705Ak&S+5i9m literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__write_data/why3session.xml b/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__write_data/why3session.xml index cc2858d5d..7dd13c9a2 100644 --- a/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__write_data/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__write_data/why3session.xml @@ -3,72 +3,61 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - - - - - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__write_data/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_ipv4_tests__write_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e2927a785c49e077d2d4cfa35401e5e1556d7ef8 GIT binary patch literal 803 zcmV+;1Kj){iwFP!00000|Ls^!Z{s!)z4KS}UIgH9_#pz#K^J2U1U(hH3PWT(N>FXx3-x34DeaP`X61feslt0!h$FLeB! zj$8Up_nXoe8mXW8IMDKbw9{r+&&5TJvC#UGR(D6gX6Wo?OK@TO$n(tE0~re=Ytx_qKXzrr#GgEp9r?O`BKj z^u8OceeJdR(ueJJ{tIg_>EZU@{oG#C+wBEEY_?;2^3_vSMrsfrJZ3&qszp>Y^Wa1NXL3w#2njAoaZm=H)KYg-H#<8%tTM$}HCv@+hM z%mHkzkRoelW$32{l8GRzP_V5)_peL^hd9029R(EF1EYx|C333X?8cIp=i~S!NxT;8UP%J$Qs9 z8pb%~15l`~Wv|hdWV9$7Q-s9D>k> - + - - - - + + + + - - + + - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - - - - - - - - + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__in_tlv_tests__test_null_in_tlv/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__in_tlv_tests__test_null_in_tlv/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..92ee2615d45b0bbdba05bc1b31e312faf99cae9a GIT binary patch literal 2284 zcmVw|y84z~Y_2WB?5i&j#4d0E=wDHh6U! zE6X0KZ6y2kTWnoz%eJI$B_4+XBDbYtv3Tm#A)9Qg`(VS@nZ0U#)6VYfytT8=HqAWV z{Qc^`HL+dO*shy5O=mCdr}=HP7k0Xc%gg+7QN^p9?rXF7Y;R)q(Z2KAlMnWt?XI&I zJC7b+1oXLjou}y+bT_?gnya{2*vr^7{(9EMFWA@AE^_yan`zrMpAT?cN9F7O^UKf@gjpqR5%X`l+n_FI;(n??cTS+ zy?6HNI*chN`PQ_EULoEYiML<)mZug)@Cxsq<=xuF%{+$IV~4duzcJa{X@`E>uC>#~ zE*7^}H(h%@tJOB}!mYxs7fzcBkqVKM{W;^!+* zk4E{la_wo}A0}WD);ZXuU>P<3y6EP%ondS%`)3FI-O;C;VCdmeUtm5v%pVU2U+BCD<>9o1IZV{9Di#dUTNr5wEUPC*=6^+X8At2)WJ7^ z{FmMr0#1P|u9@VjApZjLFw*qfb{K=H>4+1ALLB6_m+i}*CvA4|Gqv8|>YZJsv;E)B zB5m7XGUPF}+T^zRs&Q?1?=W}3Ib>}n!yd<5hSgt=71zq|WQ>Q5FuY~W4)(Sl?eb^u z@6n{VWYnHXFh^xMyyP~8Kt2D*CAZ4(JV4P>bjcxgtIiQe;5 z1%G-u!-?k`53Ba1+xu)+bTqXI~6oCXx1n~1&5 zy6p5e_G^;miTddRKhCP~WHEg-zpw$%@h&ApY!)OSP(aqt z*Kgh|l2Rn4NXi?Rl&ZfUS#h^k+v?veSMah1^?s7KJ8$N35%b^I$Q=QAEDyV%?%tiq zEh*HB6#XsXI<|J!>?XS>Ew*~djz2zbvO4fXse7qYQ8la56lY2cQf*Lm3U5{^0>Ej`7B~JW0$h zcb;g1$JMy!{I=@)uhhWGZfBQvS?QBcpZ@*fxBq;4-+cJjGcTG@;k>$ zxtDS;<^BVd`)KQr{eR}wQ>6$B9IYtu9V7)#)|7#ga*U!BL3!PRQgxH3m0;3M&U=F~ z`O9v1j4ct9QFnfeNEDG6QzR-OSxA;K0)#0BK$ND!38|f;T$=DV_y=PZVH)3K)_Jd- z;M55xsWUA3q#WT1tw<#qi{OF|K50t>5Mz~>N^>SWNJG(xR@N!bu?KFP5uRGbIC$wq zVo^pPcw}hKq_MxFLp-Ve~#|DQva^jLMVbG^T(urHzEBVhGfm5f0!4&YT3C~`iIOUr zNU*{wj1OVWi~&`p$S}doJ3$o^&mpKDV(>y+5=qF323<*NwI;| - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8cd7c1864235ea86d088a04ddda1b33912a1c83e GIT binary patch literal 192 zcmV;x06+g9iwFP!00000|CNogZUQk7M07V7vkB7b6u^mskL#B0wiHT;Sd{`yonmAX-q!u;5(7S}mSILvIvynx2 u5hZ~ou{Cp!v_SDONTjO7yu1h!Gi_8&#JnnRT>P*=9DV?sC=~I90RRB>gj_NJ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__10/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__10/why3session.xml deleted file mode 100644 index af0a1867b..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__10/why3session.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__11/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__11/why3session.xml deleted file mode 100644 index 0bef9d51a..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__11/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__12/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__12/why3session.xml deleted file mode 100644 index 337119dac..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__12/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__13/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__13/why3session.xml index 4f03da552..8e6850306 100644 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__13/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__13/why3session.xml @@ -2,55 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__13/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__13/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c6db775c4e9976dfa1a6da223238ea5c12aa581a GIT binary patch literal 187 zcmV;s07U;EiwFP!00000|CNm~4#F@H1be@NC)l|-XBQMSh%{96(dK*>ksv}~kn($i z(xfEKYKqZpX_2N8_d&X0{NOoYEcoEob+|m=iX(0>UGO(X?~gKduPYvEa(l*pk)>L( zZ5JHUs - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__15/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__15/why3session.xml index 172631ae1..5326f8b18 100644 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__15/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__15/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__15/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__15/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1ff8848d42624a588e047c188c22073416551c89 GIT binary patch literal 192 zcmV;x06+g9iwFP!00000|CNoqY6CG4MSFdPyR`D`t{z1SHzDrRi#w0C1-3A2#o)is znh;27H^b#}?wP)a-W$$UN^LhR6|LijQz`gbz6~EZUF|nMjp+C{Tv)e%NzordDdCe uWHXPHLx`DFcv>O<9JKlqO@PSAYb!JJL{ZZ)FeOv05V;?k2k|k50RR9T{#vpC literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__2/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__2/why3session.xml index 98112dbb7..de6fe91d7 100644 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__2/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__2/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1062722682d2eb7fe23564fe7abdc28f9a2372b4 GIT binary patch literal 193 zcmV;y06za8iwFP!00000|CNogZUQk7M0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__4/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__4/why3session.xml deleted file mode 100644 index aaea10b56..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__4/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__5/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__5/why3session.xml deleted file mode 100644 index eb7fba584..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__5/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__6/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__6/why3session.xml deleted file mode 100644 index dbda458b8..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__6/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__7/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__7/why3session.xml deleted file mode 100644 index 295ec8be5..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__7/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__8/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__8/why3session.xml deleted file mode 100644 index 41e71599d..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_actual__8/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__10/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__10/why3session.xml index b3c813bc1..e64287acd 100644 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__10/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__10/why3session.xml @@ -2,44 +2,22 @@ - - + + - - - - - - - - - - - - - - - - + + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__10/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__10/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1d713ace32b0638654c892170e2ba3d78dcef4eb GIT binary patch literal 267 zcmV+m0rdVKiwFP!00000|HV89FP5wW9=CQ R+{KOL)EAorfz2ZW000BZf42Yt literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__13/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__13/why3session.xml deleted file mode 100644 index 989ac9ee3..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__13/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__9/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__9/why3session.xml deleted file mode 100644 index a2167e5e6..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__to_base__9/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_address/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_address/why3session.xml deleted file mode 100644 index 5940dd504..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_address/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_dcsp/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_dcsp/why3session.xml deleted file mode 100644 index 4df4d72a9..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_dcsp/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ecn/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ecn/why3session.xml deleted file mode 100644 index fcc641016..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ecn/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_fragment_offset/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_fragment_offset/why3session.xml deleted file mode 100644 index 6bc99cf68..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_fragment_offset/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_header_checksum/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_header_checksum/why3session.xml deleted file mode 100644 index 54ce77ac0..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_header_checksum/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_identification/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_identification/why3session.xml deleted file mode 100644 index 71161eaf2..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_identification/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ihl/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ihl/why3session.xml deleted file mode 100644 index 51deaf36b..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ihl/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_class/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_class/why3session.xml deleted file mode 100644 index 1e24672b9..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_class/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_length/why3session.xml deleted file mode 100644 index 84abf94fc..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_number/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_number/why3session.xml deleted file mode 100644 index 6e6d28de2..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_option_number/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_protocol/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_protocol/why3session.xml deleted file mode 100644 index 88cfe4580..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_protocol/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_total_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_total_length/why3session.xml deleted file mode 100644 index 12a199764..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_total_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ttl/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ttl/why3session.xml deleted file mode 100644 index 9b91a3772..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_ttl/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_version/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_version/why3session.xml deleted file mode 100644 index 5098c93ed..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__unreachable_ipv4_version/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4__valid__12/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4__valid__12/why3session.xml deleted file mode 100644 index 3e5dc148a..000000000 --- a/tests/spark/proof/sessions/ada___rflx__ipv4__valid__12/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4/why3session.xml index 15eceaea9..e99cd4ae8 100644 --- a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4/why3session.xml @@ -3,570 +3,546 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - - - - - + - + - - - + + - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - - - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - - - - + - - - - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..09e1b381c96bf3c064ca6c42a220b06533c148ce GIT binary patch literal 10043 zcmZ{Ibx<79*X1xUxD4(vNPyt(?iPZ(4;I`aID@-GaF^ijB)BKIh2XBi-Ijd6+O6IC z_Un38UETNnaZaCm?!B)mBas3Bb-f&C88~eYCG4)=y}fpzz(gE+0HsoN!7Cs0PIzIm zPao<~r73Hp3|h83v`#kW_&yIuR?)uEch%C1`Rb~tjF^~q_9BBIRj1turvi`9mkB*3&NrEhFFSsSW4q1v&U+=) zK0by%2Eu+Qv8B52jDN4R8F0CFn>ZSMQN-pdckbCJ{qa!#(Cn?ZQkilSIomvV*`b@X zs(pKwTGHul?Co>Qr4>0Cy8Xl`vV8FVcbrdj-ow}Sb`c?~rmVk@{W6Q3UM-ueujL^96)*1-SNkfrnEc)t|9#R@0z{GH)5FN*BrRZ97L z(hRqcUL?k>(2oZ7L4-YM>)YQdGk1;oT~4hh%+AW%3&D&5aLBzu&oM!tgVx%7OFeXvW#_21YIJ{31stcqS;@&RI9mA8Id=Jv*9F1=;X zawQ0O;^-sh9+Wq-F31#WzbkBoE_7=U7UHT-jflNTPc^We5ZP&Td1khCDW5>0fJ5gi zOvg%GO4GdLX)W9wBA8z2GlC4U&r<62rHM1Ep)-Rk z)yo}kbGB4m>0A8}S}A>n3q0y^6fz3mP5t2g@ZR@4;=T7}8FGfv(rtJL`90ZO$7EV*0UE20Qzm;N!AELJFE?e)uK~>23 z!yESw-RGA|*1_wye7lcSSPR4SyDzLG+qS!0S=Qco*j7%)PiOatjLUuLFDABD-`9W5 zjJ5Z(&Sg3{`t%MT7Il3$t!PkT~ zBD_aG-eIzB2OuJC?x;fT4plF%J2-_)zDZu4UmZ4Io2)#8kFkC~@5%1vQ5HX${h_RS zS{H)aKV2jY;RG>D&Sg+3Ju(mJTf-SB7SRI=3qI%5cmhuk)>cJOot_t{z%?Cc+eVUP zSRCX8@D2&5=#AuL1tc)>vx~q0+aMR^pL@s)9Y3w<5NgZ@8a$6+eUwmW-K3*(Q=%AN zmbs^|?-xNbZtt4!BWc_<)_Gf3ihH!C<3dm9dq)g^jC+Re5`P;cT~zF;-Pm_1W^Q=q zUsW?lWV)OP6)&Ue_0s&D#J=A{<`Fb+ps&$pR`X{N$7}ILC2N=30J!+`J3o;TonUa+ ziRAG?dd!@1j}eYOBVT?#!~i!T8w6Eq)P7u`nxLh_!42Ps-vS(m(Xa&kbwn~iIOdQ9 z7>IZMPGtW+peiY{i;b3TAAo-0TnABs3m8 z>3AOXh6FN5o|X3u!$_W~_ge9I#xj3hFGjUz3-@1H9GZkiIB9XpM1PW&i=JHR(l4X+ zOAs4=QQW5VC3Zlwe-{E4M}{C6z6BOPz(pIs-$NQ=pTpYAem-diE®57X&m+L*o5 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 LEAuzSK*0Y3#~tHp literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload/why3session.xml index 05254a688..bb7037d43 100644 --- a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload/why3session.xml @@ -3,484 +3,369 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - + - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - + + - - - + + - - + + - + - - - - + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - - - + + - - + + - - - + + - - + + - - - + + - + - - - - - - + + - - + + - + - - - - - - - - - - - - - + + - + - - - - + - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - + - - - - - + + - + - - + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5c9312a3c6557dd9177d6b0515ec384e12dd1832 GIT binary patch literal 7082 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 yk#?Ez - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c31baf5b5e647ba792d770971378c21b529e8d6 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(I$^ACZ2}I8x1yZ@$fP;-)!P#; - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3c31baf5b5e647ba792d770971378c21b529e8d6 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(I$^ACZ2}I8x1yZ@$fP;-)!P#; - + - - - - + + + + - - + + - - - - - - - - - - - - - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - - - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + + + + - - - - + - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d0462309e762b238ed92cb3269d1bfa70753c05a GIT binary patch literal 5323 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 - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - - - - - - + + - - + + - - - + + - + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ec9a791eb065c9631c5145bbdaf7a348fb6e7b2f GIT binary patch literal 4997 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 - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data__buffer_last/why3session.xml index c64cf4e9c..9a81718f0 100644 --- a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_generating_ipv4_option__set_option_data__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4/why3session.xml index b2a981187..31d57f870 100644 --- a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4/why3session.xml @@ -3,517 +3,387 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - + - - - + + - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - - - - + + - - + + - - + + - - - + + - + - + - - - - + - - + + - + - + - + - - + + - + - - - - + - + - - - - - - - - - - - - - - - - - + + - + - + - - - - + - - + + - + - + - - - - - - - - + - - + + - + - + - + - - + + - + - - - - + - + - - - + + - - - - + - - - - + - + - - - - - - + + - + - - - - + - + - - - - - - + + - + - - - - + - + - - - - - - - - - - + + - - - - + - + - + - - + + - + - - - - + - + - - - + + - - + + - + - - - - - - - + - - - + + - - - - + - - - - + - + - - - + + - - - - + - - - - + - + - - - - - - - - - - - - - - - - - + + - + - + - - - - + - - + + - + - + - + - - - - - - + + - - + + - - - - + - - + + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a9acea6e1f44bafd35215169b8179aa0d6e4de7a GIT binary patch literal 7435 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

    -VZIzxszO5rI0h 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4_option/why3session.xml b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4_option/why3session.xml index fe338fc69..5c6a1aed7 100644 --- a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4_option/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4_option/why3session.xml @@ -3,250 +3,200 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - - - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - - - + - - - - - - - - - - - - + - - + + - + - + - + - - + + - + - - - - - - - - + - + - - + + - + - - - - + - + - - - + + - - + + - + - - - - - + + - + - - + + - + - - + + - + - - - - - - - - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4_option/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__test_parsing_ipv4_option/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3cdcded71a05c14e6126983d217e9a6bfcc1614f GIT binary patch literal 3748 zcmV;V4qNdbiwFP!00000|LvVyZ{xTX$KUlS`qqa<0Uq87>@1K1lXigZEKqFqYVevh zn%mmWV7H&Xhn8eJj-1$*GNWX;vq%(+qz(`N=f`8}w)$klpSSjA?q~DcFLp7vw<|lF zE#m!OZ~j|@UCm~8wOY((D|=;sT|7j4X|I>D*~~wB>O)O>i(Xdo=6?0(Z26nLkJV@U z!D~-G*$;Mgmk($c(c{qq9=`p#NY{VNX7l?md^WqgU(N4sXET3yyNZ9HS=V-%EnVJU z&sVcBU;4$e22ulDVw0YX+2{o}2yKIKVvA|Mc&SNxVw3J6rMNi4)-xMEVDja&Qqi@k z)d7Wks7>=>9-3P3Y%6=0W_Gc#f7%s_W0wE3S67R8g@4aNOfv?Cd#OG1oZ7~+-0?nR zU}FuOsa$$cxkJ@@z^66P%Wa#dYU{WV7^l@;U6l~{9z$R?I;zzG?LVu48stvXr)uC} ztcuIgUBJh0lD$UP>G*cO@!Q}t)%wBS+=WqrmA^O_uokIKNva3n+MKQ_P%TOwSE*gu z`$Y_MkJimURtZ zjB%B5Hn8E?;N~_RZZ_5pKFKIMb@k+wx%_W-**4cJlD?>-BO{iLjaWW5Vxcc@tX4no zcv;lITOx=&Bm!TP1A|ogL&9zlq?zGG2(mY;=nSWR;?-u(fc-H%t_A0JU>{`>@5+#H7op{aZV}l-@ z7aGN$d{feiLHXDuG-ws~&L|DFiTu7D!JqARaKGv7an5yT=kxmsF^5ebgJ%ym#_Tbm zk$kyUBLqs?D1V}ctOc|Az68ip-Q9_|`LIBxK&3$C?L#GhmB2=DFy^;cwi%p@Uw{4g zr@#N_*N?ML|GN0c$C^@42`4WW%nK;^70;7(@r(&dYYN?cmlk<|-#<@}_z>?SW<FPXSbTdRPIQy}7oWWP(p8mf+I~Cit|OY1$F&W|};>?`>Wi%BN?Y+}hin_#lfn#rXd!ESQN zgZrMQjbVxYi}S_=(*5D{#&+3&Y2SS-dpeJ>?Ucb3a-(s%+ z=kbxt2Hm|>d1DP`{Jq@?-A-tC!jaT2d?|b>e3>p^nneRHYR>mYpEJ)7kN#$FuFWTz z>hp=E`h0?^K5wR$b_BbrB@ga07@p1|d^=%qiPX4k z;IaL%aHMdgaO910e7UO`Zzy+nJ7 z_IDWV{ofh(z6DUyp9RdjM_IHRwA)~^-Qc`eaow$^qP^8r?A&T9x(iB0dqJr<_Eu9t zQAg?AgbQ?Ty>bCPv28&SidY_#-di@1pl?r0GsL zn)ZaF+1aVPox0trj}s%!r`BKQA6xS;3y3R>&b6vAUf&M?+6R~H-m3lmT)XFWvwHjY z`PDgb_I7V{-1gboW%T6CD-_=FX&KLd`R>$CUt8^%cGS(3`b(ZtVSAG+-PtUtDX1x^ zd9P~k5{eS=CE!cIe>ZC1<`$3F9`?S&m5iVOq5$Ii0z~)fH7fJd+lM{Xp7Pps&#v41 z@xr^;@aRQ zFM`^bG3;$pBfSV}s5PVeX8l@4436>ox87Jcx%2X4cp8m;@2dO!C=EF3sffh0Q?r2m zFv(AlIN}Tf7Md9Pc z!|h}9dLCKRo$zMu32(M@!kc!dgJ^p?h?*l$KfY=Hz&isFJq|#P0G^}O4uZPE1wvDW z(1E*|O2C(ZF9H7^1Ab7xfW?-xo4YT&FPB|Qr9cEurU-l`jKJ9(8HkZnC{iHu1|U+c zE)FB$Vs-Jl-zP5K?25+NY`7S_zFX)}=rAH3swxrToKh@t7DJ*uL={=G!ZN05;PEf; zPr)jQQ4^Fifr*e(AmCWij%X@X9$dtSh!7|BI6ig~@lMOTkFNg?Oh*vByZFFFaN8%wm zq8QfT601_mxXzXzS4eBL(-3K_P0DBhC#6&n@PNsqJFt+fyieLV;bM|XYNCl0%0wN&=R4D=^80$iGSO`evvu7nC##?KIN!CF~Sk(AnV$&2r<%~nagCr4+ zQcWOb`HTBQZJw z_5lnfA!T0yuTsF?dWW?LFs&uAcpyu#HJT_PB9{_XFcMS(E@CvyX~1E!7H5Kh18=1C zxsluOZys$g|+F*1R%p?ow3LkNdR z5S*@p&81j{Mst?^&NOq$8fP?RIynasrA)H~DaYW!aEjQo2-w5q7!8&HI)xjmsn5!x zq7oKsFlUozMg>$ebr_ahFtk<3#(G(?h@wTU2&Scjgx-w!6Z-=u1REijQk53OVDxem zg+(95tV5o#4P!{Z7Z4?KvEDG9?Bj*>|sD~Fm&CxR}w0wpiB4S@s> zf=h)FkYuD;tBh1e#5G+oN--nB5mrG)3@hf*!KkrZ3M$DVY9mn6Xp#V)cwk5;rO{9# zZB`*eBH?y0P8z2J^=ONhI(mWNfq*8ikI1SdEI9B{(8MXWi-m&@s9#4D{=YsVuLPw! zSua#VOj3iY7J?^1FqTl!Ynn2F%ndmGs{qbRVFQM<0Zy3m1bu|m&81|;QQpEynlz3l zI-47V9f712_ku$9DpQp-=xIrT2QI8&PGZbqbBrr4or>!t>I%6{(McFQSTTtRk!U6y zVu&(nW7Zcll|v07aIk&CB}O%NPauZ@iH0K5Sznw~G9f3!dM|^Fd5PNQ=vqz)4Kha> z2RtHmB4{sgq!@M{t9Zfj6OGD6&*oCJQZhRa5rj0f%;%^2CxgC67UHzwG66WNe8Av? zNO?kFp%Agr5Gl@A*l?mgdxG=IQ4=zSaKFNM^8#2j*kvs&;o4^1b5UVP3&2srakkt8 zjwI+L5>63`Q0B7=xvT(3&q;){a)dg>I3vVKjl&ToqJ3?bsvLSdP=Y{{7K52HB@l(g zqpMN - + - - - - + + + + - - + + - + - + - - - - - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__ipv4_tests__write_data/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__ipv4_tests__write_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7439c0190b9af4e95a2db5e8194810a47645c241 GIT binary patch literal 802 zcmV+-1Ks=|iwFP!00000|Ls`IZsRr--Rmp5F9PsB_yU@RHpUnTx+=64E?+YSGLE5W z2FTx+vRub)k|OXJ?KsfFG9?|7hv%G22^!ZMNl#n(x{3X6c-ZA(e3G&m9!I&Cde}EX z9!f96AWt30_|Ok|C*fNudFcBY`;UwJuG8VHo?}@bIc>JzW!T7e?3Da5e9N+u`^P*t zr^BkrUw7kE|M*3AxslDbA7uMEcYG)JdHZ?%(ou(NxqWr=j#jVSnkaO*x_V*8^&-dL z<+zpaa=%G^l2Q6ukAp1lXFCmc^;%ps7>legWz~1`YlMz3TY`(yN2Pzeomoa$*LIcK z+{sO+r_-x90Zv@NpWKBwll^!m95npFQaH=LGfSZ}AJ2trDuvE0rSSij!gzNwM+d6& zZ%PX4O-=pkd6)?>k7o}>X7`Kf?8#JWvU~lU0BDajS#Pw@yX5JOkNDuigVA&MbA$3< zZkaF}Q~%e`7u|f#EooZP^qw@`%FQ7$#{k{@6{};;mV7PwI(N5v8K&QtG%aa5D@~hM z;`F{9tbOgV`7(#?b-snQm&|bc?|E)7neFz1A2!>uJ^5-}%{!qwogK*nb?`P_c$+Wm z3152=HJplwwmxQ;3nrh86rDl4;Q+Gf{x58+u&2hdk&H+N;OQt z2C!&FnVk{JqH~UsyipM$R}ePHnJ9885iNKxnwSh1g_@Ko>nn)f2NJ>vg+-&Y+8VGE zYli_jdXFYn5I2>Dfs}(2MJY1s!W@eV98(fjP(iv;cY;ZBT^zd{5-JjffL>`^ zQcQdIpoyM - + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + - + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - - - - - + + - - + + - - - + + - - + + - - + + - + - - + + - - - + + + - + - - + + - - + + - + - - + + - + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__left_shift/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__left_shift/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..becfbc83383d7237e4cc18ad127899814d8ab36e GIT binary patch literal 2251 zcmV;+2sHN}iwFP!00000|LtANZX>r6-S<~ypAD<{2JD6IBDez#CYuXwjpAz}z~dQs zZw3tfNBo5T96;STdY zzw;X0T+?(P@~1EBKd!$1Mql#4gMTpGM~2JQwgtLLVKr~<;xfWgJTNTRQ0SF67QJ5V&*JVZ8ilClr{wOG z(OS+=sND$*5@vS2vxC98zuDQfnVap@wVs>Z)QWU7v)`GWnpr{Y+n$?Y3R=v~Q?&A) zd5RR}+&skzes11}IUhEd{kZ4mDN2~93ieUn8_5*qyhogZoF@dQ8139Tg*eX#%BFP+ z@E#&`(`uU5DY|)4&^4{TWtF07ono8kQex98n^x7d>Za8+t+r`(O{;HN)f5}ft8Dseevd`dCb74yK7p1{?F>;)^j}O zXu&CEtWv^CE4gO@yewxvlG~@GSy;F5KS~%q|IZwf_C{6=yczjwAkMn{qfH z=djN?oJh{sFOkFZPGJp8j#I4B>HVzz_tTX0@u+X}S5Dp4)e~d59GNgSwS>uetQL&b zg1=F%A6ja?FSUN5Qp16@#=lYP=S#iBUg`6w^d#Xgr}PfJ-#(~OAAw$xLxYQp*PtQK;o3`mp`eZ32?=QRd*^_oiOR2#H3rrN7-H4 zit>j!T^#8BXsAoq9OnBCHf^WWsZk1MYo72@i=MAes*9z+kIqi6POeU_7rtXbd$qa3 z5=4tAz7n%VtApGh^9sas#PVGSx(>Xq4&Y1&@XhN$y}tt7M`qW8t_58S&O{4F0g(5W zSZZJ`9srDD(Iom|7c{7j&v6H!%Tt%9E>8!_lbXp>dxtBZ-E1qWx!r6fVkT}6RC`lV z4P7Vxd+)z#}?QZINp`GRBAue#;CQ@T_7j40hFB=ZT$_z0jM zJ_2+-=z7rg;H>mu{(eAv1IdVC)1;CfRiugH!!Bsx*gVTU-F2($R@bc;(5-PMU?032 z(3PMoL05wFP=ZJMEk7LXP~ZAwt8cjc=i68Atz5TpwOPw{PcCI2p*s8voICY3%pc3T zLp~Gj_q1!@qTU|u*5|{Uey@6!d({b&X1kAh{s_=1)G5^WD<3@JtGL>H1IknAs*jD^ zDdE#w7>?;V_PkU9x-7ijd=%#2F!NGhG4tbeVY^wOlegc}PlLPXL)|Cm#baFe*2X)% zJH5}3-Y4*Bf`70?%i%vcS3kP<%DP$|jav1k?N@u0kTb!OZNb{k*E@kbf%|mhxTYK5 z!QPjcZVdBAx)^jZ=wfhYVz8M5^!guh{ms7oZ3e%|C(q2F+auv|P@5Cep1hXJ_MX+j z+rj%|!8>84!?wfr?Z9@_+`q)tE-a{1$d2ER-y^~A>R4rhmLvpw z7WNW@W>eB=ono^zE~%)zPY{Ggg;bqz$d;5Bln7Nq5y{0&IZ=)-XG0>?{sxbRk&l?I z3DRjn;B`*Y5?37)Rwp&2QluzOg;=C^Kp>Lw=&~T=4cN#|df+kJ7@`f?i{v!0D@wGG ztg!{OV<$6!EHR=Ze$iHB3&o)HJ_@B#X)gG$y}5KbzY`6i~b+KlPD zS^}3tPTGa&4LT>#J7fnj!Nt5We4MhESg-gs_5j3kTRJRj7r``okp*kdhZNo$wMB~j@gIg0l}gt z25I&31D826TM{z-ppXOy3YC^dN5*)n`9d*B?hT|>!4=1ulp!z_A!MD2PlVbd!oU{B zKJr&(}g&z&O1@4n530Rpo`?xpkZHJcgWuW&J>?)u54PQm~4!jyNNoM5a;} zCi9Oa - + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - + - - - - - + + - - - + + - - + + - - + + - - - - - + + - - + + - - + + - - + + + - + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - - + + - - - - - - - + - - + + - - - + + + - + - - + + - - + + - + - - + + - - + + - - + + - + - - + + - + - - - + + + - - - + + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__lemma_left_shift_limit/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__lemma_left_shift_limit/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ed280a875a89c25dd83aee2f205d9f659b5eefee GIT binary patch literal 1716 zcmV;l221%LiwFP!00000|Lt5$a~nAhzVlb?eJ=z7zN(Ug_As@na?M_*e02eQWR!=K zN|ecFe*J=y9mnIgV`Xa`$>v3p+vq0nJ<#23O1wTl`@rWf8~>AE@#`1-j9-^PD}MHz zU+ISzT)&+2+jTixpZ~!h)_lI<*ZkXuPmO=!Hy_*X<9Jz$e0ASQ;Qua$n)den=F8c~ z-}!wrn%gd=ukX)yS??15YvR`{`_He3R@&xgC-4=aQ+skj|9Zop-fVP-_wPPC-LgY^ z^&O;tav9G~LDM+ds`u1h%EQZ!o7N6mjsh zg!w+vH!-KXFvls1pJPaWy`CwKDUK^~#LIL4^V6_|o*x2Q!g`_bX z9VvhOB)oa|uk}ln(C$4INJJqL*@)3*?;$`KbfhJK;}HE49s5Mzq$Ax$N1P6Onht{_ zv)E?ZX4>ZG+vdnzqxIyg%cyCeX`gAIADXuS_y%;aOE~6Xwk6c}3cm?E*t>Ag)7#VA z)7w9EY6Q4m&@}lp`84@sGdW&e0K+nVTL2gF-gAcqU*C;6%v0e4fiK)24-!Xht#+upKh#{G6!u;ZOv0?uwWyV>k!|4%pDO(#!hPiIeOKQ3qQ zcb#G`t{G-GnB8D@gV_zPRviEO_uq^>?2_YaOH`I_cKpSykh}Fx=&LiEGO6vB~hrRLBSV{i!L(rz*#}4t@G#`s1!k z--T5v_V!gN^HIz6_0#k9QQi$quTHN%L9ZT}Rli*dG7UQoI}Ll_hTR)g8`*EA|#n$m-h?g}SX`L_Iqb%#M^o{4+w>{auh$%4Kcie@qf3Wgp9jxwYgKtn< zZC2|`P&TW}J7zf2TjtfFPKm9qrj9RRR%YOFJd|5qJz>5qPDKolX?@D-YK7B&{C#KL zpD_{ysrlG??vN64bU;)%S?ao>{{#Mw$%JN8$;eRHCMq#P$fZZ9HlhACqO57PJKeds z7_*hcHkKkTHDAbcg`z>uRESuz^C|ZRkwYWfa|{i9hUU?a@l5rtWC|95!3PIub4Nzz z-a`l#G>A+nBzg>Sp19Q_sXB(}0}%RW_c=aSQ)U_=z2 z+Ji+GEr#rEOpQA@>!}x?G$@)(z$Ix-J|~Phc{O^?t!bUaK3NS?oNA4(I4dPpvO-M| zT&fz}1N$= zV48%MW99C<4N?%fSxXJ8;!t$#5#a)vDlPdzgLk5o7lPJj}%9{qgW$9qW zWtG2(5~)mZu2Bb-!J`XC%?(|RS5?7DM0M`enaPtcNz)oebkW$Zj`oha5R(d|HEvPm z)%8fK`)!TMIERQ*R0~1%Q({-m*Vt_9!?d!E$|fNws#XsmdPL<{!1Ym}^a>#i9?=@q zv4OxUsFqpVmRLtfqNaQ@fi81K1jPF?9-n+T75yuU&MM zylq_GlxnSQBu@32DM`r5TCbaucEkkR5rauxo359r*=5o?(5o<t=N%WX&i literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3session.xml b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3session.xml index bfdf97b1f..df8d50718 100644 --- a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3session.xml @@ -4,84 +4,49 @@ - + - - - - - + + + + + - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - + - - - - - - - - + - - + + - - + + - - + + - - + + - - - + + + - + - - - + + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__lemma_right_shift_limit/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..07dd184d7db7937d842b1464e60296ec5be09cf9 GIT binary patch literal 909 zcmV;819JQyiwFP!00000|LvIDZW}ichVS<&`T_;!z$0K6*qfpTjO3=!tuV_aTg8rS z*s^nY`p#O^%3T ztK1G*SBalju$6@QG7ei3cO;lCK-kYy3C>%9N@nf6BeQPeN@mpMY1-mNujt`pNNxo(PP#lC`BaNQGe3ud{ycx($?3udj=Itnd_4Pa=&th5@y)BhoYNK&&NqoaL^-b4CtD6n#p&7VjUU@>P1R`1!6Q@ zvKJfJd8b98n-rrN2ed8$>up1JFyK&aVTfR~D0U_0I23DC_DIeVVHjbsVyW;n;bb{< j)`IaQ5|YG_)IgodJ01rPgF!Q`huHlGsO - + - - - - + + + + - - + + - - - + + + - - + + - - - + + + - + - - - + + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__mod_pow2/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__mod_pow2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..ad84344b687b8a7c6f2e4eecb9430a703caa46a1 GIT binary patch literal 601 zcmV-f0;c^RiwFP!00000|Lv8*Y8x>ShVT0neFV)&8cC2GatRHD_ELN`BdtUYc5Ljm z)8y$ZJK5P1nYN+yP-+a8{OMoK|BqQ|xa0omfme$(UpyRmyWod`^S2Fu+3qvn@^Y77 zrpK={THpgOUzgv?yS&;APxIYZ-sFz2W-5`nKW=`x2nDp9WQjQ%M*nmF$xcz@m!~JrY;h8L_ z0w)J=^IY2ZNA0^A>gRF^T`r-^CG_uKLS2WpkG+Y;sidqAF}T<}Dg@joRo~nX@X>V+ zH5dkmJ_fQOAZpJp08q(RX{sXCL9cpSg4QKDA3!5T6@4k-3@IXAMc8>w(eyzFqG%x$ zTTEn*Jr?6_23tkCt74-fL{oaBv-eqPm6FG(Oo5`HicIIdvs$TCVszOnWcC>$1k0L3 nU8o}adm`>V2Pi!;0RS`Q#3q7c6=OigDx&T?2QluURt*3EbS4<2 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3session.xml b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3session.xml index ab2ffafb9..5ba00d140 100644 --- a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3session.xml @@ -2,30 +2,37 @@ - - + + - - - - + + + + - - + + - + - + + + + + + + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__pow2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..92705c8adc6eac2959595be2f36c63ce1d771ca9 GIT binary patch literal 536 zcmV+z0_Xi7iwFP!00000|LxSxZrd;n2k^U}Vvit^qCSB2&`Z#qb{TpNC|SY+v`LV- z?YgI*lFak~Ue?_<1OaU4XG-GVPBg7~eBbf&wrsY$S3YieH*x)b;IGG*$}4_4)$8T? zFx2P6^u9TL<3kyuoEU#92H^tRs|_HXsLIcB0?RFPwZ^u+)^eUP3T21V6?z3IuFT0&4K$57qP$D)W+z-c{v;m zCT22@8uy7J2jfF+eI%gC2JkXd2svP=9IVOJ#~#DeNR3+RlQa8XLPV{93!HHj*D aJB}_V?qhlyk3K^$qTwg{Df7y^3IG6PZ3#mF literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3session.xml b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3session.xml index 2d9829ab8..8974cb238 100644 --- a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3session.xml @@ -4,102 +4,80 @@ - + - - - - - + + + + + - - - + + - - - - + - - - - + - - + + - - + + + - - - + + - - + + - - - + + - - - + + - - + + - + + + + - - - - - - - - - - - - - - - - - - + + - - + + - - + + - + - - + + - - + + - + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_arithmetic__right_shift/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..f50b51f9ccea67de3ea219e729d9ed5785271c4b GIT binary patch literal 1611 zcmbu0dpr{e0LRC9bkS6#kBpGaD#nD>5F3WHrdzZfrccT!L%HynM@q;$Tx{1G!Z*c2lOPG;b-wSkNS0#Ht>O%pHh z&8Tb&+3^a^<3amdgoQ}Ix%K7s8Pzt2l5)wn+4ps;%xw_QD%xdDYTHJX^$TTaUciWK zy{mMqwGH|$tNznVd6NPZB}!l2Oc!;^i&>unsM{A6RO)K3Q$emE{-dm9&}HSl6~$tU zqu8oxVBI3I&>5c+my{4%UvxXYI1@!}G42PJ1sRj1i!q22xe;56D3Ok)qTra~?uPOo zyLEo447%l3t7v=RsnzE*dOVo#?TvEp^mvu0Wl#}%AIP;>UfuYu(paBR>Gzpqoq4@C zjjo&)+^f=^r%}K(-UquGgdwE4dXIm=5H>yg^HlNvJHQqz1^hqqna1jkKs5|uz%$!1 zGzx67^+0u%8F8aaaXPk+BSa0AE#C7@SBUv|wyu}6hA<(9T6Zbw?6X8tDDmp^$iPz! zOlwlA^+>kw*#vIF{KMDYOqo3EJbQd2tjI}T9C3vG)Tvcr%ph^MVmX`FrPb4z94#51 zWF}Z+;?~WR1@}FECu&DB+Y6>jTC(HfO&J}c~DMW|{hf1--6sq@YWjZy^hI7T!&_Xa0&e~{Qe;Sb8&y^;nxke|L zaKV@d^5Fr8V(PaPhxoo-)wVN5Xq($fOMH1lPZ6dg7n5`rygfGGM2)-RG?=&!Nu1TO zTzV9(XIaSTBE|R6EPb# zhPUtO?a9C5{+w3CSn=oHax?_n2Rpb$^in9(c`E}?jm17us2AF^X>|2xyYz-q^kIfS z*ash1gcpH!-O#rxme~azpADxmI!R?y0I(7?d1S0v$wk=*ARf8)gS+;G8cl_+Qm1lH zrBwy1{Ev^z&@lv9DCN-@v^%tXS|Py8$irx7XP-wYeeBNxauIyJ=Pl%)wfgy*Qtb7aq_Abc%{=Dx!4F)4|4 z^czmZ>Ql*&B#Tl7*cra5vO|)76BBrh44PhmQ@nb*SSNvoBT?6D#P4uDU75Kl+6L<2 zlR&TU#KeN`eT2jR&gJ5FuK&#yxhdy*T&l%oV^P=zxH%bA@cs2ab&?KFw31Q*VwPD+ zG72E_w!y=ugSLM-ZdGmrKI&8<#x5A&b=^}lC=_91VqL83$4`^~INdF~4-2fC^>-`OKmk=M< zXh1OYT}Iuf$L#zSg>ApxeBsP=Z*l&jGXu#+5m_Ss>-Gf_96Lx~O$H&>EY%w8wfd@N z$A5Og8NUuAKf~hVy6f3$b@Nw!MlJyF+hgvSOQzBMoQzT=TA=2teU#~uCHAD_oXGe& zQprzCl!=$u&e&eL{3yPn6aq1i42K+ka<^%L!Wl_Eq-pJT6?qPuB39rpl}@_WlO^Vq z^z)&SF~hb;8*W*Z!!p~9?4Td(e&73;bq-WGb~#%Wd5{jvvSF1`i!7@E?avE>tNm;45R&(kgny z|0qWu@DO-R - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__to_index/why3session.xml b/tests/spark/proof/sessions/ada___rflx__rflx_types__to_index/why3session.xml new file mode 100644 index 000000000..0c64b7768 --- /dev/null +++ b/tests/spark/proof/sessions/ada___rflx__rflx_types__to_index/why3session.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__to_index/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_types__to_index/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..50e9fe25555c600a0b18e810909ff00d8fcc0519 GIT binary patch literal 234 zcmVyF6P`2A* zzr9<;UPZynBYC|10&mL?N(vh;m(Kg9L+fXr8uyu{%|k06{4$*?Kl1yrevMZ#b$^&I z!|{y|)o|;>#QnAI;F(K1^XmInQR&y{8; + + + + + + + + + + + + + + + + + + + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__to_length/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_types__to_length/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..77cc14f6210e56eb1649ff28f8db43e6c3ce072f GIT binary patch literal 189 zcmV;u07CyCiwFP!00000|DBFK3&JoMg!lXkcb9xO85~?h7bo{{N#1C{hSFBSe{V%x z1znCCo_n|>HpwM^Kz=mzHHF&l7%SS0Sm$u1hSPW>>~NjvU0=bdALd7xE*OZRwlJcd z3Ax^}{tQ!>+|S-GuI=&9uPj?qxo9Ukp;4fmHOf-SI&$HVu@Za5v{%+ZS;65W!B`#( rd4sNap|vXu#F>QQRJ6>FymG}Zj;x4c5)$O4SRl!sD=@TqQ~>}0mDyN( literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract/why3session.xml b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract/why3session.xml index 9c4f12332..226c42259 100644 --- a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract/why3session.xml @@ -2,520 +2,548 @@ - - - + + + + - - - - - - + + + + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - + + + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + - - - + + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + + + + + + + + + + + + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + - - - + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + + - - - + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + - + + + + + + + + + + + + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - - + + + - + - - + + + + + + - - - + + + + + + - + - - - + + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..96f040193a957f6650dafc11febbca0fe8e3a028 GIT binary patch literal 9402 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 g^w?#vxR$#hJuV{BPXs| - + - - - - - - - - - - - - - + + + + + - + - + - - + + - - + + - - + + - - + + - - + + - + - - - + + + - + - - - + + + - + - - + + - - + + - - - + + + - - + + - - - - - - + + - - - + + + - - - + + + - - + + - - + + - - - + + + - - + + - - - - - - - + + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract__d/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract__d/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7147814d468c6efaecac136e9c6b78edd455a06d GIT binary patch literal 1585 zcmV-12G02(iwFP!00000|LvSjZ`(!?hVT3pz4cH8*qNRE0_p;~1T|pfROl+qekDR} z$FP;O>96lB&`L`op z=f9IW=KSHD&(>+RK7Y@bYd+ubdp>lO7?u`tB*EmE92lo- z!jVPiNLNo8_~RP0gcGUHq?Eg)q<~A6{Nm&0vksPOw(%1#SNzAji_@YWK%;Pnvf-^n zs_##v53W)Dz#6?vwQtqIfvK5@6h)*EZP)Fi*X^rOdFr_9x9j&u)bCEDx{0(^ z{>2g#h#aAdx{LZp7xhlCa8TheBXQ^&?;3xs8lSD`zBG=On#*ywMYqLMx5X!w^2OV~ z%4NbOHBHi1lQgeM`m!eP>@}F04G)?PXUvA(Y~5^+)oh#ZYpuSFb!R63RUo$New{HiZ~-BjIFUvH|Z+P}TS`oh&c_T)V#ca$&ql&?11Xqlh6VxRHVpLFip@IG(X@FB2=z}!SGc?eh2Au{EOoO3`psp{k%{~P|heC%! zhr+XfLZiUa?Cjkk&>_$v@a!P)$@I33aPxL`SuXgs6hYqd++pBun-D zyJv2&Lk*}F0M|}~d8>h(cu?NJO@Tw->tQ2&7u?_-aHDU98@fN-z=QLK#^1WT|NPdy zbD?vgbKx0rVRuikYN3+K(l1>nLMK8e!gC?QJOdUpcL$4a!G*>BLSk_%iY)dbWzqRE z@?|m27;tKHoF;>NGNFZV^(AVkfed+5jrN7wR_;1P4- zrE}FjKrqT9L8P3h7#muY8ZgvYGa8q@qf7}*sfLpcmSRZkT2lj-$kAEtWAO%~t2(BF zDyy70Bo!n`4;ctJJ4(?wn-R!!%p9qtVtwK$K{V)6ogrgu&Kb2~v}BXc=sgFDHA#>e zfG6o-tO-Tkn zM!BK-D&u8cm5IU2PN^!GEL}(yl^gT&18a*aw6TQ%IjS~SflHBgDnZIEDh$>JCBsA! zxsfi#{ULahDT9=&nl_852JLK&tcd`wi jC~01-fu;gVeN{}}LDZsd1J>ghWrlwN>!SGtky-!%{~{7W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3session.xml b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3session.xml index 1cf9eea90..45db017fe 100644 --- a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3session.xml @@ -7,18 +7,14 @@ - + - + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract__d__es/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e64cef6486bd2c85e90869d75a2d0c283ce1e1f4 GIT binary patch literal 142 zcmV;90CE2xiwFP!00000|2>R54gxU@M0=ltBlwdzaX~?Y-~zNLaU9Vgt;9Cm9#$)D zHPV|mv) - + - - - - - + + + + + - + - - + + - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - - + + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - - + + + - - + + - + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - - + + + - + - - + + - - + + - + - - + + - + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract_intermediate/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract_intermediate/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..848e8138b573e787f6b2fb8ea67c23a0053740cc GIT binary patch literal 3304 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 - + - - - - - + + + + + - + - - + + - - - - - - - - - + + - - - + + + - - + + - - + + - - + + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - - + + + - + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract_remaining/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_extract_remaining/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..a67b354bebd4f8172e72ecaeb71e1d32144dddf8 GIT binary patch literal 3425 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 D1I>Cn literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert/why3session.xml b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert/why3session.xml index 591347ddd..6f1aa5066 100644 --- a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert/why3session.xml @@ -5,548 +5,582 @@ - + - - - - + + + + + + + - - - - - - - + - - + + + + + - + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - - - + + + - - + + - - - - + + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - + - - - - + + + - - + + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + + - - - + + + - - + + - - + + - + - - + + - - + + - - - + + - - - + + + + + + + + + + + + + + + + + + + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - - + + + - - - + + - - + + - - - - + - - + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - + + - + + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - - - + + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c7a9470c6560b94ae63c6b21d5903b0666b80571 GIT binary patch literal 12022 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

    G%Qts?FB}$iv{lWf^AJtx=K)J@hfBib7 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 mIaLs%52Z3Lq#sVU0U@MlObx0AzZQ5dH@~IX2n= literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3session.xml b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3session.xml index 03ed1faa2..140996cf6 100644 --- a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3session.xml @@ -3,46 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - - - + + - + - + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__read/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8bda47de2f4d26db304cb195a668d4a647996d10 GIT binary patch literal 514 zcmV+d0{#6TiwFP!00000|LvCFYTGar#_#nMdx3$@(SK+Lz6lHTa`@I9=}4_1b%NuK zkflb3$@LSs+EG`plv~$3>;Sn=vW)B7wr%($= zYf(yVC`f}Vg6XLJl!W1>_Ss6GIhQ zVYMx?DDXZ*T`~qoRgFoNNEBd3;DoG9g7ThC^(?`937OGJjhZ5t8G#qy0Qj;1dh-kb E07uC5NB{r; literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3session.xml b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3session.xml index 7656aa2d2..d60da09e0 100644 --- a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3session.xml @@ -3,46 +3,38 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - - - + + - + - + - - + + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__rflx_types__u64_insert__write/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3b5278922e57965a290893311d6486fe4cfbfc04 GIT binary patch literal 586 zcmV-Q0=4}giwFP!00000|LvFEY8x>Sh41wgeSw1he;_IN#?+9@vbW1f8YK(%+N{-5 zzkTI3G3$0WaWH|@@r^9JXVz!*oe?-M;M+Yk@pqt$2I8)TRTJt>x87ivcaWNHn_&rM z>9-8lsfMnDT}2_U>kc;%AwyjslqX;HW&7pLRXHt=UYhn7bPco_aEU7{pFg^v2y<9& z@vz-5BYL)PYg9ZZxZ31hy?ufW5@_1GgZ2?&iS1*4s(8f~a6e+S;`4tV?Cn-;{yC2^ zf39Ya>?{5J;z1zTNmSIxlRhhQ{xE3mG;C}#ZS3#3-Stini5;sRsheGz(bs-p3fyaT z?~d*`;+1`Xua((L$0ykg&wLc~B;|7QgfgXJN`5X(z~ z#UzSIkVsYFA|%d&w?d{;!oBg#TE)RSUPO}69-J#8MVK}+ zMJ199#RPiEZPb{g_R18qp@=k*LQAbo)Ixd`R@y??Ag3ZK$)dv|GDJq_A|N6tbik>@ YD800SBUNAwEh0<)00oV%qhSyL04)3(l>h($ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__rflx_types__unreachable_bit_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__rflx_types__unreachable_bit_length/why3session.xml deleted file mode 100644 index 4027d3c34..000000000 --- a/tests/spark/proof/sessions/ada___rflx__rflx_types__unreachable_bit_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__to_actual/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__to_actual/why3session.xml deleted file mode 100644 index a58e70268..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence__to_actual/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__to_actual__2/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__to_actual__2/why3session.xml deleted file mode 100644 index b98eb5bb6..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence__to_actual__2/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__to_actual__3/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__to_actual__3/why3session.xml index daf94a4b5..a1f1a63b2 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence__to_actual__3/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence__to_actual__3/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__to_actual__3/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence__to_actual__3/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d910aeba07572042cc8f59105d419d4a55c3aa3c GIT binary patch literal 189 zcmV;u07CyCiwFP!00000|CNoq3IZ_{MEiV&o$XDsdECOnMzpsNV;&mNu&hz=?{yKu zQk&rvGiUk^>CtehG1PX)RM9%_IER4!bj#S_e9dp1L*&cYAK`k!m<4JJ6WTGOFY9Nv z!)k__zAS%!{On!#b^p^Xn053FiX}lyDvFg)91VLb*+jjNTP=K%+FHYknTEn}kyN%Y riAhUi=~bfNO4 - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__to_actual__4/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence__to_actual__4/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6fb7804f75ee4b9d61bda883314719115ec138e0 GIT binary patch literal 189 zcmV;u07CyCiwFP!00000|DBCH4#F@L1bd%?BlsV?prApdp`wr0&(FdVL{TtE+#XPx zlt8nZVzkqG=&$g_4;G;@6N96+K(-fqmz^&DTPFyODvp>HO>~uM8R*=!HA$aST75-gUW`<+vvRV rPFtg# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__to_base__4/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__to_base__4/why3session.xml deleted file mode 100644 index 09fc91e0a..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence__to_base__4/why3session.xml +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__to_base__5/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__to_base__5/why3session.xml deleted file mode 100644 index ab1cefd9f..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence__to_base__5/why3session.xml +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__to_base__6/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__to_base__6/why3session.xml index a25446f12..a8c4ac437 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence__to_base__6/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence__to_base__6/why3session.xml @@ -2,44 +2,22 @@ - - + + - - - - - - - - - - - - - - - - + + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__to_base__6/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence__to_base__6/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0b16869914e465191c694776d5e5723ed0aba1c3 GIT binary patch literal 273 zcmV+s0q*`EiwFP!00000|HYEKQp7L}MSFh*pOE;O6cjWJ+fdPKu5Eenko5-VvFzUy z*aoOFG}~yT(UEke5fDK{H4Ps`6TdH90ux~+F3XWC=6ovj9T1I`BUTJV2i&7_*uY)o zZ{>6@8#s+ao+;)j)alv?FLmJq;-%o21Ld-!W|a9y7LOPvzPevV@Nt|kG`(VEG2c`P z_6@B#|2p3DEj8!=iJl*J*8P2zTka~fQBtF|T{7&Ln~)^4W*@DwvN8IuebS;!(kmxb zYSC(|dZ^HN>H5w%X}otE)Cl%2^&!UOEtKuGO~J8+*3wD^)oqXz8e11gnBJ*IbuvlQ XCbmsbkr92|ASFHl5RdRra{~YXB$$5` literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_av_enumeration/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_av_enumeration/why3session.xml deleted file mode 100644 index 7221145a5..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_av_enumeration/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_enumeration/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_enumeration/why3session.xml deleted file mode 100644 index 9d2179bab..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_enumeration/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_length/why3session.xml deleted file mode 100644 index 93ed553f0..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_modular_integer/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_modular_integer/why3session.xml deleted file mode 100644 index cb13c3375..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_modular_integer/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_range_integer/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_range_integer/why3session.xml deleted file mode 100644 index ced295e19..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence__unreachable_sequence_range_integer/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence__valid__4/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence__valid__4/why3session.xml deleted file mode 100644 index 40ea4f0bf..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence__valid__4/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence/why3session.xml index c6119166c..bc91b1e69 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence/why3session.xml @@ -3,648 +3,623 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - + + - + - + - - - - - - - + - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3ce4d2426f21fd64347d578a6f167228a9682cba GIT binary patch literal 10378 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload/why3session.xml index a1caed7be..f29ad892d 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload/why3session.xml @@ -3,296 +3,243 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - + + - - + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3ff687baeca97496bd7d71940f0b66859870ed83 GIT binary patch literal 4416 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 AGXMYp literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_first/why3session.xml index cd4144e70..d837f030e 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_last/why3session.xml index 2035b116b..22b2002e4 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent/why3session.xml index 1c35a15e4..5ecb52fb4 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent/why3session.xml @@ -3,663 +3,634 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + + + + - + - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4bdfdbe0274ec436d65b49ea2a95aeda1997ff6a GIT binary patch literal 10568 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload/why3session.xml index 7114dc8b6..41a1ba8fc 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload/why3session.xml @@ -3,293 +3,243 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - + + - + - + - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5c4924833fdbdba0f5c7171f771aadcdecfed4ef GIT binary patch literal 4412 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 C-+kZ! literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload__buffer_first/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload__buffer_first/why3session.xml deleted file mode 100644 index bc3f90df0..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload__buffer_first/why3session.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload__buffer_last/why3session.xml deleted file mode 100644 index 3817aacb1..000000000 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent__set_payload__buffer_last/why3session.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent_empty/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent_empty/why3session.xml index 1a7a0b01b..01dbe7626 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent_empty/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent_empty/why3session.xml @@ -3,385 +3,362 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - - - - - - - - - - - - - - - + - + - - - + + - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - + - - + + - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_message_sequence_independent_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7cd73c1c3457f423ea383203d362150be8722f93 GIT binary patch literal 5849 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence/why3session.xml index 34c868ac5..e6e9acda5 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence/why3session.xml @@ -3,987 +3,968 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - + + - + - + - - - - - - - + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + + + + - + - - - - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e9dc618bfd1eec49283d0dc6971e330f7e20b8b4 GIT binary patch literal 16568 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 Q_Qju>U<03P0}A+m0O-1@s{jB1 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence_independent/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence_independent/why3session.xml index ade051ad4..62f45960f 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence_independent/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence_independent/why3session.xml @@ -3,958 +3,923 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - + + - + - + - + - - - + + - - - + + - - - + + - - + + - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - + - - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - + - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence_independent/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence_independent/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..6764054aed0334a5e90a39f7214ca602b60acece GIT binary patch literal 15313 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 - + - - - - + + + + - - + + - - - + + - + - + - + - - - + + - - - + + - - - + + - - + + - - + + - - - + + - - - + + - + - - - - - - - - - - - - - - - - - - - - - - + - - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - + - - - - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - + - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence_independent_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_scalar_sequence_independent_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..7ee73cf5c4f0226d8673fa45af125083ea3e30fb GIT binary patch literal 14869 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_sequence_size_defined_by_message_size/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_sequence_size_defined_by_message_size/why3session.xml index adcc9e20d..3dbd1ec20 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_sequence_size_defined_by_message_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_sequence_size_defined_by_message_size/why3session.xml @@ -3,397 +3,378 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - + + - + - + - - - - - - - + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + + + + - + - - - - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_sequence_size_defined_by_message_size/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_sequence_size_defined_by_message_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..1d5dafc92c110ebe65569c87d6c695f9029a88a4 GIT binary patch literal 6168 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 - + - - - - + + + + - - - - + - + - - - + + - - - + + - + - - - - - - - + - + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + + + + - + - - - - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_sequence_size_defined_by_message_size_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_generating_sequence_size_defined_by_message_size_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e3ec7c6dc48db0585ca675bb2b488b1522e499b9 GIT binary patch literal 4135 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 HBLe&noNOsb literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_message_sequence_loop/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_message_sequence_loop/why3session.xml index 0cd461c43..426a62b34 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_message_sequence_loop/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_message_sequence_loop/why3session.xml @@ -3,586 +3,525 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - + + - + - - - - - - - + - + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - + - - + + - + - - - - - - - - - - - - - - + + - - + + - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - + - - + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - - + + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_message_sequence_loop/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_message_sequence_loop/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d186a32adf5747824c1f775ac35495e639845854 GIT binary patch literal 8821 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 - + - - - - + + + + - - + + - - - - - - - - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - - - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_message_sequence_sequential/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_message_sequence_sequential/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4619a66620827f32cf5151a88db3f8284c113ea0 GIT binary patch literal 8557 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 - + - - - - + + + + - - + + - - - - - - - - - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - + + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - - - - - - - + - + - - + + - - + + - + - + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - + + - + - + - + - + - + - + - - - - - + + - - + + - - + + - - + + - - - - - - + + - + - + - - + + - - + + - + - + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - + + - - - + + - - + + - - - + + - - - + + - - - + + - - - + + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - + - - - - - - + + - + - + - + - + - + - + - - - - - - - - + + - - + + - - + + - - + + - - - + + - + - + - - + + - - + + - + - + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - + + - + - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - + - - + + - + - - + + - - + + - + - - - - - - + + - + - + - + - + - + - + - - - - - + + - - + + - - + + - - + + - - - - - - + + - + - + - - + + - - + + - + - - + + - - + + - - + + - + - + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_scalar_sequence_loop/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_scalar_sequence_loop/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..d55d58d9fdd0d6e114fe23480049991d3cccdf5b GIT binary patch literal 24223 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 UtlhN#?SDEFGg;*2HL%+M0p8#`!vFvP literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_scalar_sequence_sequential/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_scalar_sequence_sequential/why3session.xml index 807a0b3ce..946821fcd 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_scalar_sequence_sequential/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_scalar_sequence_sequential/why3session.xml @@ -3,1017 +3,981 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - + + - + - - - - - - - + - + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - + - + - - + + - + - + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - - - - - - - + - - + + - + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - - + + - + - - - - - - - - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - - + + - + - - - - + - + - - - - - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - + - + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - + - + - - + + - - + + - + - + - - + + - + - + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_scalar_sequence_sequential/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_scalar_sequence_sequential/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..82e81a7a4cee9c8220e5ef678734b5c937988baf GIT binary patch literal 17457 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 R5U@jY`~P8$(3Qnq1OUA}RviEU literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_sequence_size_defined_by_message_size/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_sequence_size_defined_by_message_size/why3session.xml index 7ada047af..4ba7c4ae5 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_sequence_size_defined_by_message_size/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_sequence_size_defined_by_message_size/why3session.xml @@ -3,448 +3,391 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - + + - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - - - + - + - + - + - + - - - + + - - - + + - - - + + - - - + + - - - + + - + - - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - + - + - - + + - - + + - + - - + + - + - + - + - + - + - + - - - - - - - - - + + - - + + - - + + - - + + - - + + - + - + - + - + - + - - - + + - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_sequence_size_defined_by_message_size/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_sequence_size_defined_by_message_size/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..c23e63823b23b1b42d953b03ed75ac4f388d04c7 GIT binary patch literal 6782 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 - + - - - - + + + + - - - - - - - - - - - - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_sequence_size_defined_by_message_size_empty/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__test_parsing_sequence_size_defined_by_message_size_empty/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..0224fee3a4cc0eb73ca5d8d5a2ca34a4624ac0f1 GIT binary patch literal 2439 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 F001v^pRfP` literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__write_data/why3session.xml b/tests/spark/proof/sessions/ada___rflx__sequence_tests__write_data/why3session.xml index a25c2c93a..3e22c0556 100644 --- a/tests/spark/proof/sessions/ada___rflx__sequence_tests__write_data/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__sequence_tests__write_data/why3session.xml @@ -3,72 +3,61 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - - - - - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__sequence_tests__write_data/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__sequence_tests__write_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..591cd65521de1bec0f46efbedcf7920f5a078b05 GIT binary patch literal 799 zcmV+)1K|80iwFP!00000|Ls^!Z{s!)z3W%>UIgHf9C8L|4!Rg?An2*kRTzHl8pt|^ zqFo^WzLe!UZj%&&*J#&)F8Uy!hEMOkp$w1fjijfoeBH!;H$3d}Fg{7y43DGSOFir_ zK^{sk!yr!`$oS9?c_-mpDS7Do8T*gH{iD<2tS85^K62V@zss#WB8V3CHIec zzMKxLCV$}6YUQTnL#Z?`kc2iA7bLA|Ldub#_HfVrMOG@0MOOy^IQQj^{5=LA4|?8!ROKJSvJ6Cd%zr4L5WkDnWq z|8mQO*_e7>KM&G8MoXHOG`%NHw{mkx%rQVWf5qyUvn5|kzRumPUWV!SB~443&Pvnf zl{md`2WwyZY`)B4d!4_++Dm4*{r5b#m&|s1!9O32n30W`UO4#HafVNENiF81OQVqMdd?KAuCeFRg`ML zTSY!FDew^`v1ZQ>UGWaFPF0X@LIf*NGC;99ThMF@C2vGYLd9G`=AEEI5;G#FAd(zf z0PURsddRFzsvz4G4^;1Bpb$*dDKm31V6!S%ffEQDXOoE~8PK8#F$PD`vX?4`vzDi~ zbG4E((HQ4)M&~KIY*o^MBWmHgas~OyNmr)9Kn@(Jp1^P-C0K}oJyZ}i-lG@@P9vm* znG|}=>{Qf1?A*kOE65j@VpIu>QX$wBMVsh7XYe^ql|VIBZplGuB - - + + - - - - + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv__to_actual/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv__to_actual/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5adb5ca9aeebf2ade2ded4535391cd59f341e6f2 GIT binary patch literal 187 zcmV;s07U;EiwFP!00000|CNn94#F@L1bd%?Bly|zub`koq@kj>)_#tN1W^~rjg52hYN#RrcVahu)+XFOhI#ovhX9P1okcZ@}J?G?vW&U(Yt zuGsUYwDV_I`&3VLXJ07JoR}EWN=Kz}T3YM9A#|Z3QU|(dVGA59XIzrdkVa<-!=4M6 pvk!Wa - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__tlv__to_base/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv__to_base/why3session.xml deleted file mode 100644 index 6579ea27a..000000000 --- a/tests/spark/proof/sessions/ada___rflx__tlv__to_base/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__tlv__unreachable_tlv_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv__unreachable_tlv_length/why3session.xml deleted file mode 100644 index e97a1fdaf..000000000 --- a/tests/spark/proof/sessions/ada___rflx__tlv__unreachable_tlv_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__tlv__unreachable_tlv_tag/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv__unreachable_tlv_tag/why3session.xml deleted file mode 100644 index e9356a567..000000000 --- a/tests/spark/proof/sessions/ada___rflx__tlv__unreachable_tlv_tag/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__tlv__valid/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv__valid/why3session.xml deleted file mode 100644 index b591dd0b2..000000000 --- a/tests/spark/proof/sessions/ada___rflx__tlv__valid/why3session.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data/why3session.xml index 6017d0069..fe5348c66 100644 --- a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data/why3session.xml @@ -3,298 +3,282 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - - - - - + + - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + - - + + - + - + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..5247105497131622b7099f8e5b396bf26a79df45 GIT binary patch literal 4828 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic/why3session.xml index d710e9d0f..dcc4d1753 100644 --- a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic/why3session.xml @@ -3,290 +3,268 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - - - - - + + - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - - - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4f9d7d0c09e01af03069371a809a1379a5088f72 GIT binary patch literal 4573 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value/why3session.xml index a289e0607..015511908 100644 --- a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value/why3session.xml @@ -3,309 +3,252 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - + - + - - - + + - - - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - + - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4d8813ef837a7beb77caaabccc9b21efd37aa4f4 GIT binary patch literal 4625 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 - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value__buffer_last/why3session.xml index 71b9c0326..6a5893936 100644 --- a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_generic__set_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_zero/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_zero/why3session.xml index d0be842bd..135206a63 100644 --- a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_zero/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_zero/why3session.xml @@ -3,290 +3,271 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - + + - + - + - - - - - - - + - - - + + - - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + + + + - + - - - - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_zero/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_data_zero/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..94504b434db2c267a8641396fecd283b0c51a69e GIT binary patch literal 4581 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 - + - - - - + + + + - - - - + - + - - - + + - - - + + - + - - - - - - - + - + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + - + - - + + - + - - + + - + - - + + - - + + - + - - + + - + + + + - + - - - - - + + - - + + - - + + - - + + - - + + - + - + - + - - + + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_error/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_generating_tlv_error/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..989e0eac2aba1b532579e8f85433df0bdc236fde GIT binary patch literal 3806 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 UCR@m)+=03NAH!JFO3vN@0JG|NbN~PV literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_invalid_tlv_invalid_tag/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_invalid_tlv_invalid_tag/why3session.xml index 9a69ca20a..3fe31f7b0 100644 --- a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_invalid_tlv_invalid_tag/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_invalid_tlv_invalid_tag/why3session.xml @@ -3,144 +3,129 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - - - - - + + - - - - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_invalid_tlv_invalid_tag/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_invalid_tlv_invalid_tag/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..e87c028430a5716bb4b87b839a7c4a7957afa409 GIT binary patch literal 2274 zcmV<82p#tyiwFP!00000|Lt5&Z`()`z4KShZ4ZM1y863;@c4}P(tWVu>&#xZzG-K-cHY`qXPago zum5)W-8Zco2IiD_S5_(+H*Ty#N}oFIIrU6b@#Pde74uI`e@I*_T+;-v)xtp zV&~DLi-0~?pYt^Rg6^ibO>-F+3wsfp#$V04_yylJwTt}v#r3r9n$Rx%d{N66t!6XWiCt2H?Enz zN{yY*?N{3&Et>qtUR=!M1^(WIm>Q4-Ji%HngUTsy3k2>Xf&EB0lz7`Qs`dHWRAKb@O)@RceEV9`PliBu|1mc)7E3hc-ld8oUDfo z!}|)&k$%55p&6hGyBbXnmxW!fMV}dP`?C%0t^EZx$O8`0FnNk!Hrs~TKXYj9EW|JP z^zr@nrkZ#HNgOGEGP+AMdfs~U7$1t_C_Ya*`x?N^%KmnC-$7%>cM8S$VXE>Y3{|I? z6Wd>hl6fooCn#u{brmY_L*>!r_~$X#5ud5aMjmh3jJM`Ojt(`V@ zvADUs?%Jzat=3@|W))^VyT4RuRA@BDHf3Q*VaPK>SkttN=JM(`hIJCOhG&z+`zudR za@?(2TOQ9_2lt>aBgJ1A-Q2b_jAv!@Y?5z`H@y#q?l0^G*b@Nz@%fZjAQtFP1iibu znl|yT$3oaNvzzI(xxQ)S~6KG!UNcP(5$3CO?pz7S#x zTyf1LR|V@QSi?wzW!qr{rlteMU18>O?RovN<*dslVy4#HpE|RvqP73qm^iH;m<%~6 zR-626zG__CJ=jnkuoqaH$*==)%dq;(vEo|!os4nJ2g6%-=3sAk*)D(f{+*)yIA?!LXDTE?QcB-($^jVVYgzi>H(TH(ABZC`w#(YAWNCROEXX>dT+Zr{`h`| zBexnJx9w5ixYut#?(qS#vDuw4!k7FJVtE9~ATMS|uiv-&UpwxvX?8wrgxl1OL&mtL zq3$`toqT{Bz>ekdTZHV!cQF7gt#5ZGHglx&yIT`dc8k`jxL$rp_*+Cpr0hJeDf@?;jWscz_4o zb!!c5HNZTk(VcrVf6LM5n9c9w2Y_*=jYo^^lktZQIcocGBEh#$BtEV=P{gE&NfDFp zOH7tigjK0{Y2^p4%u6djXl1_H%3{^ZkNTIF5#(KsAXUF^v3gytmSy_5E^v{DA`e9# z-WulDlLwp-lbuZZxIKA%eNN*!(_Zy9Oh?!UHG?)$2XBO$VUNS{i&qbJLd_UXh6nQq zlz|(nqhZq@2EgVRFTdp}gY0tSq#``+#%-rLK0cTeR9*i+-e9A*vkSXy{K=d zK!jjI^T>=&$vFr=!9N(UD2))9wwhbUMTlG`&RC>D1BsF;v?7%eR51#aC7!fWi6y}W z@q#lg0(g%`v@%*o1pz1tgfl4vra{3m88JCDhi4z&aDDRxHE<%Wtjv*jW!|& z#VaX<=Zu>qLsB9I;}lRG71JzgrwJN~{fv~*BzcB`E2F(&CV_XDKOr2m5e|)HrDcK` z5TZm=@E{T~7#xCR64#bzPYR8Mhyu7|oGNR*CCo`BB=wOi?*$s^3NvaMziD*Zsn7u7ZoZ7p**yBn{>lEHP9%udPkeV{!u1$wi%z8%8qcb7_EA+9~3Kj>dq}k}wh#cQHur@Kc4}N>oH4tCIEJYn23X zKrtjjUE&e2CK(8jRdSN2BqCPdQjt73B`i4OkRlLG%vP#WflDWtM96|pL3xbP7>i_+ zO0u4Opew5>rO7DF8lgrq2$%Cw4h!T0r`gI>_;v@J5vH-u!ZJpbj!qfkwFWCQ5|m(E zc$=WD5n9=3Ej7_#K?tT5HR0I`DxnnCBOwGvIDycS5WNqSS?-ZqHe1muG0w2~*iw=> zPYp#%&?th&G8iOSwqlh-j$$zoXqL1#)LE;10G6CJ)U%8P<(1&)KA}5Am)X^Kku>%>yKw~C7 zMeIdzOmj@nCZV(m0c(cT5y?c1S!OF;AxIvug%VIK3r0zmMwq-s-Xn0mFH>RbVRraf zBA6IQm2o^o& - + - - - - + + + + - - + + - - - - - - - - - - + + - - - - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + + - + - + - + - + - + + + + - + - - + + + - + - - + + - + + + + - + + + + - + - + + + + + + + + + + - - + + + + + + + + + + + + + + + + + - + + + + + + + + + + - - + + + + + - - + + - + - - + + - + - - + + - + - + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_data/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..251d83c1a101d8ca34ee5238d9372f27fd1a4b2b GIT binary patch literal 5401 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_data_zero/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_data_zero/why3session.xml index 9dc75bf3d..73aad8c1a 100644 --- a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_data_zero/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_data_zero/why3session.xml @@ -3,212 +3,183 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - + + - + - - - - - - - + - + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - - - - - + + - + - + - + - - - - + - - + + - + - + - + - + - - + + - + - - - - + - + - - - + + - - - - + - - + + - + - + - + - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_data_zero/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_data_zero/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..033f104720e0d194c6135317481e4f38bc89c34b GIT binary patch literal 3281 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 - + - - - - + + + + - - - - - - - - - - - - + - - + + - - + + - + - + - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - + + - + - - + + - - + + - - + + - - + + - + - + - + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - - - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_error/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_parsing_tlv_error/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4d3473fe92e828a9a735828dd14bfbd4fd03ca18 GIT binary patch literal 2718 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 Y?$KDLv{SA1`bb^>2ajX&x-NnM0L9WhO#lD@ literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset/why3session.xml index 0f890a692..885e1fa18 100644 --- a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset/why3session.xml @@ -3,227 +3,199 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - - - + + - + - - - - - - - + - + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - + - + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + + - - + + - - + + - + - - + - - + - - - - + + - - + - - + + - - - - + + - + - - + + - - - - + + + + + - - + - + - - + + - + - + - - + - - - - + + - - + - - - - + + - + - - + + - + - + - - + + - + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..16ce3bd6518ea4c8ebd641e4234dd6c72c280a58 GIT binary patch literal 3607 zcmV+y4(Rb8iwFP!00000|LvVyZ{x-lfZzEm`qqb_z?``ckPYAfacdym0>zfE#9SSr zzD1H3Nq>FMP!~!TWlJKxE8CMrWZ4`Zo;jCqhI1k3S2p~4XKyFIncRJ~(}}&C+oqYu zhrizbw%LEakzG0@Gyrf<$_xME96doW88-iE{fDzI@j6ycRXfBVla)XSCcQwi2O!C~PzGz9yt zRqM-6;;|8PNK}s^b2C^-f42={U6>(lj56oD=1q8*&CvVPB%j;aJ!wTC_C-Zhx?0^40zg8HCK#9xit6my7k; z?ANT?>f?fXG(`U}=17BwGI&u2FAk365sBwPfihYe zP_IhUGA#VQV(^o_y$@sJCEvOh2$lf+1_9U)!o@5{0bq&0gW_)`;$a%Y#N&l)g>qxE zk2iCaJDE@HO=D-X$J>YbQ!T?I;vl^8p4mZ}6)38-VSUISHYnsWdxxN1y zLsuPI!?V@J<4Z|9wcSs$p40QB#M=A|P4U;+d}=3msL!&@vz0s>%hR<|^lBzGS@D{wY#XKLMl z)+f7k-{gNAov!YLiy_O`YLm~+-x@cWZ%ytFn3t^0#js_13$@y>W9hY&dojl1BUEpZ zql2ZbYPXr=AT{nIlWPMqR+n!qRB!FN|b?eqZv+00WIVbEX%U7na^kQB2g>(@#D z`<~-nm|YHQ>oy5;Ol!BR>Va+Dt2cE6qGPc<7)|!*=Z{kaM#1F+%<0bas!9?vn#pZhoXK7V>5oTkS~NvZl_? zq9?iXYkMpx`mYac57@E?tg^KRwrpUYhS5qq7XO~D&nc7cr#ArObRbWL?N0l{hAai% z?nv=%e$2oxw3C=@7s94PD=Nf0Hg zx3XH4tlr9Mv6bMSsl$zTurkax0i6+mfH(rmp&O}N_yg#Q*gbK~Ocv~zQ z9;y@hz4PF&wsY=i&BuWQ;YX(HNiOZp`)}TUoVh`&bqy%-{c9N7NBv*~Ozy7j;y&); z%a?y&{rsOVzcg3>y!iVso_lrG#Z>`I0ZRePTLDYHb$B7aYYK}5r|sBH+Ccg*HigR64zBlJb$j z@!}G)tBr-KnHzZtW=-jG9V>omM^y3W`XH54_+O(X+cO932SI4RRi|9sYCY<${ZXi-L;}h>Lxr1)X^cCJH7BCJH9Dh7?wJO`V-|P1Vv- zI$vy{qq4Z;9JM~<EHc^NchtcMFh z5Pa@@S)fp$P@qttuzjPz*wY&YMr#HOx8Ya3^BTh0D;&K<2ac)uHwPHYa&+#uZ! zN2YgoIJU9y^164rSd_Vps{)n+mI9Wy0+vH|I5M+L@b>x7A7=Yd4(z_|L(IIqeTeC^ z!RT3RAKC)xIcy(#O44)KKJ;x!I^GV)TCB)atF2C7?jJIM z$hBuz1JeYBT)ucE@Itnis<}J>IWkvLyo8RO@;yem916l7+aE?kdL#*-_gE!3|cxM2jhXH8$df~$mv?^R6bgmHE zH(FQ{z9f7}_;;A_gZc|iGnqBF_g^=6dbOcaAOc5I1ileQ;AD;r#KfD7A=8=WF?h0#5&ZKSStj@9CcdI#0BHY zwmPYbda4OnB^ZmsBOI|9xMV?E1>EOCy3!&M%Pkkm#}u6Kk`g9};~EW@h{Qss(usr+ z(OP(nVM)v)CL)v8D9=4lSO`ePbmTn9keK&bXLOpv0wOsULa;QKf{KFy2M{f&6r+ua za4lSvpo~Pj#9WG2Hgct+C0e;iWRQ|Z5S(M3K_tpaF2yQkj8qsR%5kF=v4RuIlaPc3 z7nHQQ6t5yTF-8$-2*NQZqK-^k$qAY|L?3b~bdHo*e?o*}!WhMUME#A73hU#T%GLr| z0cz?nk^)aD7>LFQi$NeE7{}@2imH;DC2I|JDzDSa28bT;>NL^hMA*{(ZrfsOzWJ13;{ut22PZBki(vu3X{uWGz*HCP#hD0CV{a{ zqLX&17b8`!pYs7N;US`j36cXnsbj(fr7p)RgUVx0C!;lDMler2bzt)whpCT|U;^e+ zv?A!8h(>gnFPNv!Ypx8oSyTxSGUe=GEXztda30Z)fjP_}?KxI9(TK3q*%FLbj4^@{ zXVD@Oup(3vK~2s`%uOUiE`@QQFsae@ND+uyMu4myHRv6snaWYfWThPu(P5PoN2>B1 z9=V>FrBNDywvMU-$^wR^u~8)!k>CXR964S!Q!iz2GhIc58W?TTE$8!QiPh=vc-a)}i$yr&aVKL~LjRAf6N@1Whc_W7+|#NZV2j^U*nLBmU80 zoa*FIqYz2*Rw(?nZ4P)P0hr-Q5)?p%#YiIvfS^o3e`9l%ONq(}?vebM@s@IIz&O%N zq23A`EFNRFJ;%7muB!yh2^lc66w(0gWf0Ylp>cR_Hn^&s#7qd(8I;)BHYJQ< - + - - - - + + + + - - + + - + - - + + - + - - + + - + + + + - - + + - - + + + - + - - + + + + + + + + + + + + + + - + - - - - + - - + + + + + - - + + - - + + - - + + - - + + + - - + + - + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - - - - - - + + - + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset__B_1__message_read/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset__B_1__message_read/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..04c91a9eb3b1e4353ed73e0b730925058dd19c5a GIT binary patch literal 1901 zcmV-z2a@<7iwFP!00000|Lt5&j~h1>jJ{L=U1@^jyR%Ih`$mis>4-;Mdp*zd;d`}JzM82hrwOIptbpSXKiF8kH} zf(?hwEPw3h`*`5aTzr3QnDdOBZ{tnmU@Q}ub0he`#1?|4Sk6`v($$VFqE;Z8>@Yb|m8^Uj@tQO^6uc=e>N4e`59gp3iEd}{`IABY`Fb>l!xi!Zdv@{C1Skq zhrIeu-*;y==pIKfm+!wJCH`be>d|X60^8wReO+sPZE@VWPK$LKwuPnN*S=ZdPe_Z; z`14#QNIt>r*ey0X<>DR(^I7M~1TCT$>vcuPGzh$yBQ7Rg9*SLObT;Fl| zcv*)hu3rt+pQ8DCU5B=?f3>iyM)q4Hdt2CVjO<*AZDGGnuD6B#mbiX~o6(+&YgZ;o zf{go;K2J5z_JVzKwu!=;9T(VnCOR`(e}d{MM`Njla9?^H2Hb?UIjHw>SgAH99}d@r z*`GSX+2OU|tlb6rM=c;{d>{(q{i#Q1g9H^%MpwZJ+yCDl?r`$Y;}l-P$^SS`KQ4k7 z)xfF3dRYXgn(4f7H4*$y5uE7N7CE8+CuKuFFB;NxG2Z*MPO&f1P z8xL*)g4$IXpW4>rhFPywwWA%yvGxg>U)QL5+8fca3+`^6m=yoQYl` zRF~Q`(v+$xRa2_zJA`RuKwnY@&iIRK)OP$PYE9H`NYoDBA~I)snfMY40jDHl@_q4_ z(+D^v5>s!CZz9n|qKd@P+r;K7HDJHP{HRTsaKHS8+XOh(Crr6vzG*t85tw*=cQ!A9`6O7ItN368U)Hehyq zbuc@+X>eq8j(dr->v?JcC;JdMQzJ4FFw;HNosE;YbkRH=U1P!Y7g-Y}YPwxJ6D6wa zg7PLA4_G7?i>?IiNG5caM7B=-3w~9$%OF*;kSQxKb5hDg%L){PAr*}kY$ZCKvQdO3 z3FXj;V6siFn5ebQ7_4L?*(DTCmq5j4NKyOjlc#_zv?dl;Qk}1}CddRKkWf(sSyB## zAXx!P3o?$4bVtq#9>im!=qbk(gY^(~);}LoGz~-bg^r z6Uc0A@G%BoOmI?0HVR#V%o8%cLJ2l-$_gX1&Hz#%**X%4E-R%-5ODx51_lYx8xu46 zc}x~R_P+=VA!${D4{>9qJ8cs2pIFFptflZMsGT>OGJk)AC@}6OI_H4>V7GK| zUPPxPa$;;CZEUr&U7(Ot!pz}w?IdM2p-U->j0u&f#Q?6OWTeeHp-J9GUo;OYWii@> z!hvD6@||#8N~(ZWF@d(uD5)?yZ3v>^j8?1A@xlqrXHSuQq39AQrK`1c(FCZdO3{(Y z8Wa_B9HmE}D&Xv-kv>b#WVHge;zCaXL1Zpbtudm|=tVLlAlRC0DLaNh<$^#(2~!{u zgJzTqr5LVjs7OfF5d+|yrzDK|x5)Ds+xVg_s># z^pPvrGgWzZLzbECTt!uhE^4cjhUiG^B4iPfQ3rGmh1J$>WDD4e*~--p#S16cZQ*Sx zA)vK9aIAhQ*(q6^O2V=LA+mmejh6pbU|GvtjZvviI+dCI+6iG&k}LpRu`FSdr7kl) ns}+k<;s#71dkvf)&vmLp2n<@XvS8YbWxD?XeP - + + - - - - + + + + - + - - + + + + + + - + - + + + + + + + - + + + + - + - + - - + + - - + + - - - + + - - + + - - + + - + - - - - + - + + + + - - + + + + + - + - - + + + + + - - + + - + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + + + + + - - + + - + - - + + - - + + - - + + + + + + - - + + + - - + + - + - - + + + + + - + - - + + - - + + - + + + + + + + + + + + + + + + + + + + - - + + - + + + + + + + + + + + + + + - - + + + + + - + - + + + + + + + + + + + + + + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + - - + + - + - - + + + + + + + + + - - + + + - - + + - - + + - + + + + + + + + - + - + - - - - - + + - - + + - - + + - - + + - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset__B_2__message_write/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__test_read_write_reset__B_2__message_write/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..9546caaddd5bd22e82043e5e11ae38df3d22858c GIT binary patch literal 4762 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 literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__write_data/why3session.xml b/tests/spark/proof/sessions/ada___rflx__tlv_tests__write_data/why3session.xml index cde4910d3..1be104085 100644 --- a/tests/spark/proof/sessions/ada___rflx__tlv_tests__write_data/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__tlv_tests__write_data/why3session.xml @@ -3,72 +3,61 @@ "http://why3.lri.fr/why3session.dtd"> - + - - - - + + + + - - + + - + - + - - - - - - - - + - - + + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__tlv_tests__write_data/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__tlv_tests__write_data/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..3fbf1ff2f400ed61655dadaf5499feccf7f51194 GIT binary patch literal 804 zcmV+<1Ka!`iwFP!00000|Ls^!Z{s!)z3W%>UIgIG@Dpebx)^I9=&8_E7=FyIfvjUF z+6D6OOIfbtHc1h9jdmUAV3{I^!^ijDP=dzwhV#>wziv{$8yGU1nm+j~AOGh29`S#VtJ6gRmG(qTab@jxI>xGWL z({an+`F@l8%p>(7b5E<6X8L_`)8eMH+_ZVc zPVYOx+SeYNFMZfv=UZ5NNe{RG?&tQB-fl1WVY40Eldr~Ayc4L?-4QHM2XDiLxADRr z@U<6F;{-ztQ8Fnp#hV;$@)B)GfvL8Cflpu>tu&MK8I4a-Ih{jR3am-S2OmAwDAj~u zL?LU=WFcw-4?#LPbxysK!~R4ExGCvdcPXHW*V0 zMX4M-O{oAH#RVm!7*%YkVymi%PtHdxl#@)T0GlciQ~`BH2SsclpQ^m|hlz`zpQ5PA i9<=v$)0vA6*=COtJQ`&oB-(=q-TVpUc=QX68vp=iH<2a) literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__udp__to_actual/why3session.xml b/tests/spark/proof/sessions/ada___rflx__udp__to_actual/why3session.xml deleted file mode 100644 index f0b3e0f3b..000000000 --- a/tests/spark/proof/sessions/ada___rflx__udp__to_actual/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__udp__to_actual__2/why3session.xml b/tests/spark/proof/sessions/ada___rflx__udp__to_actual__2/why3session.xml index 433a5437a..e99356bf2 100644 --- a/tests/spark/proof/sessions/ada___rflx__udp__to_actual__2/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__udp__to_actual__2/why3session.xml @@ -2,34 +2,23 @@ - - + + - - - - + + + + - + - - - - - - - - - - - - - + + diff --git a/tests/spark/proof/sessions/ada___rflx__udp__to_actual__2/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__udp__to_actual__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..981b30b08cdbfbb285194f2682dbf5554da918b0 GIT binary patch literal 194 zcmV;z06qU7iwFP!00000|CNoqZbC5-M0H(>o~QNTEAjx=mS?AQ^NQ1BiQ12k-z!~Bd7DYrON?lF=#z4=zGEV zX#cYvJ|CskC(D~3FMBs*Gv0KY;JrohtSq@$Dq6*b0z1`gYu0JyzJhUfZCO2W&_YuT wk%@&oNwJax;vKTDL6hdJALE2&xHX10Fw1vDF6Tf literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/ada___rflx__udp__to_actual__3/why3session.xml b/tests/spark/proof/sessions/ada___rflx__udp__to_actual__3/why3session.xml deleted file mode 100644 index d7f91cab7..000000000 --- a/tests/spark/proof/sessions/ada___rflx__udp__to_actual__3/why3session.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_checksum/why3session.xml b/tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_checksum/why3session.xml deleted file mode 100644 index 03e02a17d..000000000 --- a/tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_checksum/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_length/why3session.xml b/tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_length/why3session.xml deleted file mode 100644 index bd10f806b..000000000 --- a/tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_length/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_port/why3session.xml b/tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_port/why3session.xml deleted file mode 100644 index ca7dbbb4d..000000000 --- a/tests/spark/proof/sessions/ada___rflx__udp__unreachable_udp_port/why3session.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__byte_index/why3session.xml b/tests/spark/proof/sessions/ada___rflx__universal__to_base__2/why3session.xml similarity index 53% rename from tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__byte_index/why3session.xml rename to tests/spark/proof/sessions/ada___rflx__universal__to_base__2/why3session.xml index 7004da69f..f152519b3 100644 --- a/tests/spark/proof/sessions/ada___rflx__custom_types_tests__test_index_60_enum__types__byte_index/why3session.xml +++ b/tests/spark/proof/sessions/ada___rflx__universal__to_base__2/why3session.xml @@ -5,21 +5,20 @@ - - - + + + - - - + + - - - - + + + + diff --git a/tests/spark/proof/sessions/ada___rflx__universal__to_base__2/why3shapes.gz b/tests/spark/proof/sessions/ada___rflx__universal__to_base__2/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..4d39b5a2f74e026ef788bb3590e3737ae5f7614c GIT binary patch literal 273 zcmV+s0q*`EiwFP!00000|HYEKPD3#ahW9)LkC6LiU|>OXVPdzOI1v%2=}}JF(zhqT z0!$T47t4~r-~MeGkq`iSS>6GTt)6n)vPlz++d?|i1Nd&7>FjS&0yH^S^ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___spark__assertions__assert__2/why3session.xml b/tests/spark/proof/sessions/ada___spark__assertions__assert__2/why3session.xml deleted file mode 100644 index d2758cd7f..000000000 --- a/tests/spark/proof/sessions/ada___spark__assertions__assert__2/why3session.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___spark__assertions__assert__3/why3session.xml b/tests/spark/proof/sessions/ada___spark__assertions__assert__3/why3session.xml deleted file mode 100644 index b88d9b618..000000000 --- a/tests/spark/proof/sessions/ada___spark__assertions__assert__3/why3session.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___spark__assertions__assert__4/why3session.xml b/tests/spark/proof/sessions/ada___spark__assertions__assert__4/why3session.xml deleted file mode 100644 index d25cc8f97..000000000 --- a/tests/spark/proof/sessions/ada___spark__assertions__assert__4/why3session.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/ada___spark__file_io__read_file_ptr/why3session.xml b/tests/spark/proof/sessions/ada___spark__file_io__read_file_ptr/why3session.xml deleted file mode 100644 index db6a19eef..000000000 --- a/tests/spark/proof/sessions/ada___spark__file_io__read_file_ptr/why3session.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/spark/proof/sessions/b0208039c7e9956332ad-ests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_first/why3session.xml b/tests/spark/proof/sessions/b0208039c7e9956332ad-ests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_first/why3session.xml index 97b7b445b..8dc2d365e 100644 --- a/tests/spark/proof/sessions/b0208039c7e9956332ad-ests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/b0208039c7e9956332ad-ests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/b0208039c7e9956332ad-ests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/b0208039c7e9956332ad-ests__test_generating_ethernet_ii_vlan_dynamic__set_payload__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/b6a70d66b03ce3f56d8c-ence__sequence_size_defined_by_message_size__get_field_value__buffer_last/why3session.xml b/tests/spark/proof/sessions/b6a70d66b03ce3f56d8c-ence__sequence_size_defined_by_message_size__get_field_value__buffer_last/why3session.xml index e9a6d0fbc..e21a2f060 100644 --- a/tests/spark/proof/sessions/b6a70d66b03ce3f56d8c-ence__sequence_size_defined_by_message_size__get_field_value__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/b6a70d66b03ce3f56d8c-ence__sequence_size_defined_by_message_size__get_field_value__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/b6a70d66b03ce3f56d8c-ence__sequence_size_defined_by_message_size__get_field_value__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/b6a70d66b03ce3f56d8c-ence__sequence_size_defined_by_message_size__get_field_value__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..75b4be04306063b1bccc4ec193be13d0c6020ece GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxN(WVUs27cQ-%nUuY85kNF_?mfa_V6+G_Vo5L Z_VV-bHVilTVxZtB$RNGarZ*C30sw?j7bXAz literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/c4bede9013d7b1cb5e72-nce__sequence_size_defined_by_message_size__get_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/c4bede9013d7b1cb5e72-nce__sequence_size_defined_by_message_size__get_field_value__buffer_first/why3session.xml index 3d7685e3c..597ffd0c9 100644 --- a/tests/spark/proof/sessions/c4bede9013d7b1cb5e72-nce__sequence_size_defined_by_message_size__get_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/c4bede9013d7b1cb5e72-nce__sequence_size_defined_by_message_size__get_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/c4bede9013d7b1cb5e72-nce__sequence_size_defined_by_message_size__get_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/c4bede9013d7b1cb5e72-nce__sequence_size_defined_by_message_size__get_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..8d23b05bb348892f4d851c27e251af22858487f1 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk(ZB;r>UuzubH8#@fHtLLnCtoBQrCTEgMXX Zw|W?v`GgpJF;MUmWDvideIpWR0svBI7T5p) literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/e1784b79eadeee9bb6f6-nce__sequence_size_defined_by_message_size__set_field_value__buffer_first/why3session.xml b/tests/spark/proof/sessions/e1784b79eadeee9bb6f6-nce__sequence_size_defined_by_message_size__set_field_value__buffer_first/why3session.xml index 49f169029..13f81e224 100644 --- a/tests/spark/proof/sessions/e1784b79eadeee9bb6f6-nce__sequence_size_defined_by_message_size__set_field_value__buffer_first/why3session.xml +++ b/tests/spark/proof/sessions/e1784b79eadeee9bb6f6-nce__sequence_size_defined_by_message_size__set_field_value__buffer_first/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/e1784b79eadeee9bb6f6-nce__sequence_size_defined_by_message_size__set_field_value__buffer_first/why3shapes.gz b/tests/spark/proof/sessions/e1784b79eadeee9bb6f6-nce__sequence_size_defined_by_message_size__set_field_value__buffer_first/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..87020011e1e855cb8e8629dd6fbd3f50ca0740f9 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&&OFp{cQvkGGMrsjr!#vA@qo4-;=MV-sIf Z!|gt%1_1_N3>5qX8NwNoPDTPv001&b6;J>G literal 0 HcmV?d00001 diff --git a/tests/spark/proof/sessions/f3df9bfb562b435bd6fd-s__test_generating_message_sequence_independent__set_payload__buffer_last/why3session.xml b/tests/spark/proof/sessions/f3df9bfb562b435bd6fd-s__test_generating_message_sequence_independent__set_payload__buffer_last/why3session.xml index 5ba6f87fc..8ea05b219 100644 --- a/tests/spark/proof/sessions/f3df9bfb562b435bd6fd-s__test_generating_message_sequence_independent__set_payload__buffer_last/why3session.xml +++ b/tests/spark/proof/sessions/f3df9bfb562b435bd6fd-s__test_generating_message_sequence_independent__set_payload__buffer_last/why3session.xml @@ -6,17 +6,9 @@ - + - - - - - - - - - + diff --git a/tests/spark/proof/sessions/f3df9bfb562b435bd6fd-s__test_generating_message_sequence_independent__set_payload__buffer_last/why3shapes.gz b/tests/spark/proof/sessions/f3df9bfb562b435bd6fd-s__test_generating_message_sequence_independent__set_payload__buffer_last/why3shapes.gz new file mode 100644 index 0000000000000000000000000000000000000000..12973961559dcf33801bd495a60106db93af3867 GIT binary patch literal 73 zcmb2|=3oGW|Jo0|&gyEc?9o5xq2uxNk&%I~$u7e9$S4(w)*&)Y&0-3 ZG&A+vViIcb#X!MNkRf`8%GF4q2>^JK7qb8W literal 0 HcmV?d00001 From f6151e41dd93a512ed4698bb757e460cef589cfe Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 8 Jun 2021 11:04:22 +0200 Subject: [PATCH 42/43] Improve naming of method returning all dependencies of type Ref. #672 --- rflx/model/message.py | 8 ++++---- rflx/model/type_.py | 6 +++--- tests/unit/model/message_test.py | 6 +++--- tests/unit/model/type_test.py | 10 +++++----- tools/generate_spark_test_code.py | 2 +- 5 files changed, 16 insertions(+), 16 deletions(-) diff --git a/rflx/model/message.py b/rflx/model/message.py index 1f18a8280..481ba97bf 100644 --- a/rflx/model/message.py +++ b/rflx/model/message.py @@ -121,8 +121,8 @@ def __init__( assert len(self.identifier.parts) > 1, "type identifier must contain package" - self._enum_literals = mty.qualified_enum_literals(self.all_types, self.package) - self._type_literals = mty.qualified_type_literals(self.all_types) + self._enum_literals = mty.qualified_enum_literals(self.dependencies, self.package) + self._type_literals = mty.qualified_type_literals(self.dependencies) if not state and (structure or types): try: @@ -197,8 +197,8 @@ def refined_type(self, refinements: Sequence["Refinement"]) -> rty.Message: ) @property - def all_types(self) -> List[mty.Type]: - return [self, *unique(a for t in self.types.values() for a in t.all_types)] + def dependencies(self) -> List[mty.Type]: + return [self, *unique(a for t in self.types.values() for a in t.dependencies)] @abstractmethod def copy( diff --git a/rflx/model/type_.py b/rflx/model/type_.py index b9d692f8b..6168df216 100644 --- a/rflx/model/type_.py +++ b/rflx/model/type_.py @@ -49,7 +49,7 @@ def type_(self) -> rty.Type: return rty.Undefined() @property - def all_types(self) -> ty.List["Type"]: + def dependencies(self) -> ty.List["Type"]: """ Return a list consisting of the type and all types on which the type depends. The dependencies are determined recursively. @@ -521,8 +521,8 @@ def element_size(self) -> expr.Expr: return expr.Size(self.element_type.name) @property - def all_types(self) -> ty.List["Type"]: - return [self, *self.element_type.all_types] + def dependencies(self) -> ty.List["Type"]: + return [self, *self.element_type.dependencies] class Opaque(Composite): diff --git a/tests/unit/model/message_test.py b/tests/unit/model/message_test.py index e4ed4be81..c21b65573 100644 --- a/tests/unit/model/message_test.py +++ b/tests/unit/model/message_test.py @@ -3090,14 +3090,14 @@ def test_paths() -> None: } -def test_message_all_types() -> None: - assert TLV_MESSAGE.all_types == [ +def test_message_dependencies() -> None: + assert TLV_MESSAGE.dependencies == [ TLV_MESSAGE, TLV_TAG, TLV_LENGTH, OPAQUE, ] - assert SEQUENCE_MESSAGES_MESSAGE.all_types == [ + assert SEQUENCE_MESSAGES_MESSAGE.dependencies == [ SEQUENCE_MESSAGES_MESSAGE, SEQUENCE_LENGTH, SEQUENCE_INNER_MESSAGES, diff --git a/tests/unit/model/type_test.py b/tests/unit/model/type_test.py index bbdf05d0e..72ce867d5 100644 --- a/tests/unit/model/type_test.py +++ b/tests/unit/model/type_test.py @@ -39,11 +39,11 @@ class NewType(Type): assert NewType("P::T").type_ == rty.Undefined() -def test_type_all_types() -> None: +def test_type_dependencies() -> None: class NewType(Type): pass - assert NewType("P::T").all_types == [NewType("P::T")] + assert NewType("P::T").dependencies == [NewType("P::T")] def test_modular_size() -> None: @@ -295,12 +295,12 @@ def test_enumeration_invalid_multiple_duplicate_elements() -> None: ) -def test_sequence_all_types() -> None: - assert models.SEQUENCE_MODULAR_VECTOR.all_types == [ +def test_sequence_dependencies() -> None: + assert models.SEQUENCE_MODULAR_VECTOR.dependencies == [ models.SEQUENCE_MODULAR_VECTOR, models.SEQUENCE_MODULAR_INTEGER, ] - assert models.SEQUENCE_INNER_MESSAGES.all_types == [ + assert models.SEQUENCE_INNER_MESSAGES.dependencies == [ models.SEQUENCE_INNER_MESSAGES, models.SEQUENCE_INNER_MESSAGE, models.SEQUENCE_LENGTH, diff --git a/tools/generate_spark_test_code.py b/tools/generate_spark_test_code.py index 49841bb69..1b51ad264 100755 --- a/tools/generate_spark_test_code.py +++ b/tools/generate_spark_test_code.py @@ -24,7 +24,7 @@ tests.data.models.NULL_MODEL, tests.data.models.TLV_MODEL, tests.data.models.NULL_MESSAGE_IN_TLV_MESSAGE_MODEL, - Model(tests.data.models.FIXED_SIZE_SIMPLE_MESSAGE.all_types), + Model(tests.data.models.FIXED_SIZE_SIMPLE_MESSAGE.dependencies), ] SPECIFICATION_FILES = [ From 3e8310681cae304d7a6bc0c5a6f635936ab3310c Mon Sep 17 00:00:00 2001 From: Tobias Reiher Date: Tue, 8 Jun 2021 12:31:44 +0200 Subject: [PATCH 43/43] Update comment about workaround related to use of constant access type Ref. #672, Componolit/Workarounds#36 --- rflx/generator/generator.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/rflx/generator/generator.py b/rflx/generator/generator.py index e4c509c70..2fd4f43ee 100644 --- a/rflx/generator/generator.py +++ b/rflx/generator/generator.py @@ -2670,11 +2670,9 @@ def __create_valid_context_function( [], [], [ - # WORKAROUND: - # Limitation of GNAT Community 2020 + # WORKAROUND: Componolit/Workarounds#36 # An access constant type cannot be used here, because the "implicit conversion # between access types with different designated types is not yet supported". - # The warning is no longer shown in later versions of SPARK. Pragma( "Warnings", [