### 1.16.3 Ορισμός αλγεβρικών συναρτήσεων

#### Ορισμός συνάρτησης από το ℝp στο ℝ

Για p=1, π.χ. για f : (x)→ x*sin(x), εισάγετε :

`f(x):=x*sin(x)`

ή :

`f:=x->x*sin(x)`

Έξοδος :

`(x)->x*sin(x)`

Εάν p>1, π.χ. για f : (x,y)→ x*sin(y), εισάγετε :

`f(x,y):=x*sin(y)`

ή :

`f:=(x,y)->x*sin(y)`

Έξοδος :

`(x,y)->x*sin(y)`

Προσοχή!!! η παράσταση μετά το `->` δεν αποτιμάται. Θα πρέπει να χρησιμοποιήσετε `unapply` αν αναμένετε το δεύτερο μέλος να αποτιμάται πριν τον ορισμό της συνάρτησης.

#### Ορισμός συνάρτησης από το ℝp σε ℝq

Για παράδειγμα:

- Για να ορίσουμε την συνάρτηση h : (x,y)→ (x*cos(y),x*sin(y)).
  Είσοδος :
  `h(x,y):=(x*cos(y),x*sin(y))`
  Έξοδος :
  `" (x,y)->{
  x*cos(y),x*sin(y);
  }"`
- Για να ορίσουμε τη συνάρτηση h : (x,y)→ [x*cos(y),x*sin(y)].
  Είσοδος :
  `h(x,y):=[x*cos(y),x*sin(y)];`
  ή :
  `h:=(x,y)->[x*cos(y),x*sin(y)];`
  ή :
  `h(x,y):={[x*cos(y),x*sin(y)]};`
  ή :
  `h:=(x,y)->return[x*cos(y),x*sin(y)];`
  ή :
  `h(x,y):={return [x*cos(y),x*sin(y)];}`
  Έξοδος :
  `(x,y)->{return([x*cos(y),x*sin(y)]);}`

Προσοχή !!! η παράσταση μετά το `->` δεν αποτιμάται.

#### Ορισμός οικογενειών μιας συνάρτησης απο το ℝp−1 στο ℝq χρησιμποποιώντας μια συνάρτηση από το ℝp στο ℝq

Έστω ότι η συνάρτηση f: (x,y) → f(x,y) έχει ορισθεί, και θέλουμε να ορίσουμε μια οικογένεια συναρτήσεων g(t) τέτοιες ώστε g(t)(y):=f(t,y) (δηλαδή η t θεωρείται ως παράμετρος). Επειδή η παράσταση μετά το `->` (ή `:=`) δεν αποτιμάται, δεν θα πρέπει να ορίσουμε τη g(t) μέσω `g(t):=y->f(t,y)`, αλλά θα πρέπει να χρησιμοποιήσουμε την εντολή `unapply`.

Για παράδειγμα, υποθέτοντας ότι η f:(x,y)→ xsin(y) και g(t): y→ f(t,y), είσοδος :

`f(x,y):=x*sin(y);g(t):=unapply(f(t,y),y)`

Έξοδος :

`((x,y)->x*sin(y), (t)->unapply(f(t,y),y))`

Είσοδος

`g(2)`

Έξοδος :

`y->2``·``sin(y)`

Είσοδος

`g(2)(1)`

Έξοδος :

`2``·``sin(1)`

Επόμενο παράδειγμα: έστω ότι η συνάρτηση h: (x,y) → [x*cos(y),x*sin(y)] έχει ορισθεί, και θέλουμε να ορίσουμε την οικογένεια συναρτήσεων k(t) έχοντας το t σαν παράμετρο και έτσι ώστε k(t)(y):=h(t,y). Για να ορίσουμε την συνάρτηση h(x,y), εισάγουμε :

`h(x,y):=(x*cos(y),x*sin(y))`

Για να ορίσουμε κατάλληλα την συνάρτηση k(t), εισάγουμε :

`k(t):=unapply(h(x,t),x)`

Έξοδος :

`(t)->unapply(h(x,t),x)`

Είσοδος

`k(2)`

Έξοδος :

`(x)->(x*cos(2),x*sin(2))`

Είσοδος

`k(2)(1)`

Έξοδος :

`(2*cos(1),2*sin(1))`