Il termine
sistema formale e' generico.
In che contesto lo hai usato?
Hai provato con Wikipedia?
https://it.wikipedia.org/wiki/Sistema_formal
Comunque, in pratica, e' un insieme di regole matematiche e di logica matematica con il quale definire qualcosa.
Ad esempio: come definisci l'insieme dei numeri interi?
Lo potresti definire cosi':
'0' (e' il carattere 'zero') e' un numero INTERO: questo e' un ASSIOMA, cioe' un DATO DI FATTO, una AFFERMAZIONE SENZA DIMOSTRAZIONE, e' cosi' e basta
Se N e' un intero, allora 's(N)' e' il successore di quell'intero, cioe' l'intero MAGGIORE di valore MA STRETTAMENTE PIU' PICCOLO POSSIBILE: questa e' una REGOLA, ma che puoi vedere anche come un TEOREMA
Ok, ora tu hai 2 oggetti: un ASSIOMA e un TEOREMA: mediante questi oggetti puoi definire TUTTI I NUMERI INTERI POSITIVI:
s(0) == 1
s(1) = s(s(0)) == 2
s(3) = s(s(2)) = s(s(s(1)) = s(s(s(s(0)))) = 4
...
nota che '1','2' sono modi per SEMPLIFICARE la scrittura del numero intero: teoricamente dovresti scrivere 's(s(s(s(s(...(0)...)))))'
Ma, cosa interessante, da questo ASSIOMA e da questo TEOREMA, puoi definire, le operazioni aritmetiche (SOLO SOMMA e MOLTIPLICAZIONE)
sum(0,0) = 0
sum(s(M),N) = s(sum(M,N))
sum(M,s(N)) = s(sum(M,N))
mul(0,0) = 0)
mul(s(M),0) = 0
mul(0,s(N)) = 0
mul(s(M),N) = sum(mul(M,N),N)
mul(M,s(N)) = sum(M,mul(M,N))
Per capire questa sintassi devi aver chiaro:
1) cosa vuol dire N e M: GENERICI interi
2) cosa vuol dire s(M), s(N): sono dei PATTERN/TEMPLATE, configurazioni di qualcosa che devi confrontare. Devi immaginare di SMONTARE il tuo intero '3 = s(s(s(0)))' in due parti: la 's' piu' esterna, da quello che ci sta' dentro:
3 = s(s(s(0))) = s(M) dove M = s(s(0))
3) che cosa e' una DEFINIZIONE RICORSIVA: cio'e una definizione che usa se stessa nella sua stessa definizione.
Le difinizioni ricorsive non sono una cosa miracolosa: devi RICORDARE SEMPRE che nella definizione ricorsiva, che e' a tutti gli effetti una normale definizione, ESISTE SEMPRE la base della ricorsione, cioe' un momento in cui la definizione SI FERMA. Questo DEVE ESISTERE SEMPRE.
Infatti, nei vari gruppi di regolette precedenti, la PRIMA regoletta e' LA BASE DELLA RICORSIONE, cioe' il punto in cui la definizione si ferma.
In pratica la tua definizione inizia, ad esempio da 5 e procede con 4,3,2,1,0 e a 0 si ferma.
Le definizioni ricorsive funzionano SEMPRE cosi': un passo alla volta e all'indietro, fino a fermarsi sullo ZERO.
(vabbe, non e' proprio cosi' ma come primo approccio basta e avanza)
Perche' si usano i sistemi formali?
Ovvio, perche' sono basati su regole e non su concetti intuitivi, e un computer puo' funzionare SOLO in base a regole.
In ogni caso STUDIA sui libri: e non pensare che queste cose non servano!
Se vuoi fare informatica, QUESTO SARA' il tuo pane quotidiano