vault backup: 2023-10-04 11:26:19
This commit is contained in:
parent
4f6e97f883
commit
390e6e5f26
2
.obsidian/workspace.json
vendored
2
.obsidian/workspace.json
vendored
@ -158,6 +158,7 @@
|
||||
},
|
||||
"active": "325e43e04f9c035d",
|
||||
"lastOpenFiles": [
|
||||
"Algo/CM/CM du 27 septembre.md",
|
||||
"Algo/CM/CM du 04 octobre.md",
|
||||
"Algo/Séminaire/Remediation.md",
|
||||
"Algo/Courses/Chapter 6 - Lists.md",
|
||||
@ -168,7 +169,6 @@
|
||||
"Algo/Séminaire/Exercices seminaire.md",
|
||||
"Algo/Séminaire/Chapter 3 - Case analysis.md",
|
||||
"Algo/Courses",
|
||||
"Algo/CM/CM du 27 septembre.md",
|
||||
"Algo/Séminaire/Chapter 5 - Recursivity.md",
|
||||
"COM-ADMR/Séjour international EPITA.md",
|
||||
"Algo/CM",
|
||||
|
@ -0,0 +1,19 @@
|
||||
An abstract type have a signature, which contains types, uses and operations, and have some axioms.
|
||||
|
||||
An axiom let us determine the value of the application of the observers with the internal operations (in the example below, the operation modify). An axiom must be precise.
|
||||
|
||||
```
|
||||
Types
|
||||
vector
|
||||
Uses
|
||||
integer, element
|
||||
Operations
|
||||
Modify : vector x integer x element -> vector /*internal operation*/
|
||||
Nth: vector x integer -> element /* Observers */
|
||||
Lowerlimit: vector -> integer /* Observers */
|
||||
Upperlimit: vector -> integer /* Observers */
|
||||
|
||||
Axioms
|
||||
lowerlimit(v) =< i =< upperlimit(v) -> nth(modify(v,i,e), i) = e
|
||||
```
|
||||
In this example, the axiom explain that it check nth position in the modified vector
|
Loading…
x
Reference in New Issue
Block a user