This is an old revision of the document!


Abstract Datatypes

1. Definiți constructori pentru un arbore binar ce poate conține ca elemente numere întregi. 2. Definiți axiome pentru următorii operatori:

  • size : BTree → Integer
  • height : BTree → Integer
  • mirror : BTree → Tree
  • flatten : BTree → List

3. Definiți constructori pentru o coadă (tip LIFO) ce poate conține elemente de un tip arbitrar E. 4. Definiți axiome pentru următorii operatori pe coadă:

  • deque : LIFO → LIFO
  • top : LIFO → E
  • length : LIFTO → Integer

5. Definiți constructori pentru un Map cu chei de tip K și valori de tip V. 6. Definiți axiome pentru următorii operatori pe Map:

  • get : Map × K → V
  • update : Map × K × V → Map
  • exists : Map × K → Bool
  • delete : Map × K → Map