Studiare la funzione x → xx (stabilire dove è definita, dove è derivabile, dove cresce/decresce; schizzarne il grafico negli intervalli di ampiezza positiva in cui è definita).

La funzione è definita per gli x per cui si può calcolare xx, ossia per ogni x positivo e, inoltre, per ogni x negativo tale che abbia senso un suo elevamento alla x, ossia ( potenze 2) per ogni x equivalente a −m/n con m e n numeri interi positivi e n non multiplo di 2.  Ad esempio nel caso di x = −3/2 ho (−3/2)−3/2 = (−3/2)−3·1/2 = ((−3/2)−3)1/2 = √(−27/8), che non è definito.  Invece nel caso di x = −2/3 ho (−2/3)−2/3 = (−2/3)−2·1/3 = ((−2/3)−2)1/3 = 2.251/3 = 1.3103706…, ovvero (−2/3)−2/3 = (−2/3)2·(−1/3) = ((−2/3)2)−1/3 = (9/4)1/3 = 1.3103706….
Per calcolarla con un mezzo di calcolo conviene operare una di queste trasformazioni, altrimenti si può ottenere un esito di "non definizione" anche nel caso in cui il termine sia definito.

Dunque la funzione x → xx non è derivabile per x < 0 in quanto ivi non è definita in alcun intervallo di ampiezza non nulla (infatti in ognuno di essi si può trovare un numero irrazionale).

[in qualche "buffo" libro di analisi si trova scritto che la funzione non è definita per input negativi]

Per x > 0 ( funzioni esponenziale e logaritmo) trasformo la funzione nel seguente modo:  xx = exp(log(xx)) = exp(x·log(x)), e a questo punto faccio:
Dx exp(x·log(x)) = exp(x·log(x))·Dx (x·log(x)) = xx·(log(x)+x·1/x) = xx·(log(x)+1).

Controllo con WolframAlpha:
d(x^x) / dx = x^x*(log(x)+1)

Controllo con R (vedi):
source("http://macosa.dima.unige.it/r.R")
f = function(x) x^x; deriv(f,"x")
# x^(x - 1) * x + x^x * log(x)
che posso semplificare in x^x + x^x*log(x) ossia in x^x*(1+log(x)).

xx·(log(x)+1) = 0 quando log(x) = −1, ossia quando x = exp(−1) = 1/e = 0.367879…. Ivi la funzione di partenza ha un punto di minimo, a sinistra decresce, a destra cresce.
Il valore di f è:
f(exp(-1))       # 0.6922006

# Grafici e soluzioni con R
BF=4.5; HF=3.5
f = function(x) ifelse(x>=0, x^x, 1/0)
Plane(-2,2.5, -2,f(2.5))
graph(f, 0,2.5, "brown")
m = maxmin(f,0,1); POINT(m,f(m), "red"); m; f(m)
#   0.3678794   0.6922006
# Potevo procedere anche trovando dove si azzera la derivata:
g = function(x) x^x*(1+log(x)); m = solution(g,0, 0,1); m; f(m)
#   0.3678794   0.6922006
#
# Per le parti del grafico corrispondenti a dove il dominio della funzione non è
# continuo (la parte a sinistra di x=0) si è proceduto come descritto QUI.