Corso di Informatica per la laurea breve in matematica by wulinqing

VIEWS: 14 PAGES: 35

									Corso di Informatica per la laurea breve in matematica
                       Salvatore Caporaso
                                                  a
        Dipartimento di Informatica dell'Universit di Bari
                        (caporaso@di.uniba.it)


                        November 23, 2006
Indice

1 Modelli di Computazione                                                                                                  3
  IFI sl lingu—ggio ‚4 F F F F F F F F F F F F F F F F F F F F F F        F   F   F   F   F   F   F   F   F   F   F   F    Q
      IFIFI €rogr—mmi ˜—se F F F F F F F F F F F F F F F F F F            F   F   F   F   F   F   F   F   F   F   F   F    R
      IFIFP €rogr—mmi deniti per ™omposizione F F F F F F                F   F   F   F   F   F   F   F   F   F   F   F    R
      IFIFQ ‚i™orsione primitiv— F F F F F F F F F F F F F F F            F   F   F   F   F   F   F   F   F   F   F   F    S
      IFIFR he™isione di rel—zioni logi™he F F F F F F F F F F F          F   F   F   F   F   F   F   F   F   F   F   F    V
      IFIFS €rogr—mmi deniti per minim—lizz—zione F F F F                F   F   F   F   F   F   F   F   F   F   F   F    V
      IFIFT €rogr—mmi di ™odi™— e de™odi™— F F F F F F F                F   F   F   F   F   F   F   F   F   F   F   F    W
      IFIFU iser™izi F F F F F F F F F F F F F F F F F F F F F F          F   F   F   F   F   F   F   F   F   F   F   F   IH
      IFIFV gon™lusione F F F F F F F F F F F F F F F F F F F F           F   F   F   F   F   F   F   F   F   F   F   F   II
  IFP w—™™hine — registri F F F F F F F F F F F F F F F F F F F F         F   F   F   F   F   F   F   F   F   F   F   F   II
      IFPFI punzion—mento F F F F F F F F F F F F F F F F F F             F   F   F   F   F   F   F   F   F   F   F   F   II
      IFPFP ƒimul—zione di RHH medi—nte m—™™hine — registri               F   F   F   F   F   F   F   F   F   F   F   F   IS
      IFPFQ gon™lusione F F F F F F F F F F F F F F F F F F F F           F   F   F   F   F   F   F   F   F   F   F   F   IU
  IFQ w—™™hine di „uring struttur—te F F F F F F F F F F F F F            F   F   F   F   F   F   F   F   F   F   F   F   IU
      IFQFI w—™™hine di „uring ordin—rie F F F F F F F F F F              F   F   F   F   F   F   F   F   F   F   F   F   IU
      IFQFP sl lingu—ggio struttur—to F F F F F F F F F F F F F           F   F   F   F   F   F   F   F   F   F   F   F   IW
      IFQFQ „wƒ notevoli F F F F F F F F F F F F F F F F F F F            F   F   F   F   F   F   F   F   F   F   F   F   PH
      IFQFR …n interprete del lingu—ggio …‚wQ nelle w„ƒ F                 F   F   F   F   F   F   F   F   F   F   F   F   PP
      IFQFS …n— m—™™hin— univers—le F F F F F F F F F F F F F             F   F   F   F   F   F   F   F   F   F   F   F   PQ
      IFQFT iser™izi F F F F F F F F F F F F F F F F F F F F F F          F   F   F   F   F   F   F   F   F   F   F   F   PS
      IFQFU gon™lusione F F F F F F F F F F F F F F F F F F F F           F   F   F   F   F   F   F   F   F   F   F   F   PT
  IFR gon™lusione del g—pitolo F F F F F F F F F F F F F F F F F          F   F   F   F   F   F   F   F   F   F   F   F   PT
2 Teoremi di punto sso e indecidibilit    a                                                                             28
  PFI xot—zioni F F F F F F F F F F F F F F F F F F F F F F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   PV
  PFP eritmetizz—zione di ‚4 F F F F F F F F F F F F F F F    F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   PW
  PFQ „eorem— del p—r—metro F F F F F F F F F F F F F F F     F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   PW
  PFR porm— de˜ole del teorem— dell— ri™orsione F F F F F     F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   QH
  PFS ve ™l—ssi tot—li non —mmettono funzioni univers—li      F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   QI

                                              I
PFT   porm— forte del teorem— dell— ri™orsione     F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   QP
PFU   gome denire nuove forme di ri™orsione F     F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   QP
PFV                —
      snde™idi˜ilit @teorem— di ‚i™eA F F F F F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   QQ
WFW   €rogr—mm—D —F—F PHHTEU F F F F F F F F F     F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   F   QR




                                           P
Capitolo 1
Modelli di Computazione
1.1 Il linguaggio R"
1 Premessa ygni —ttivit di ™—l™olo ri™hiedeX un— qu—l™he formalizzazione di un— re—lt Y l—
                            —                                                           —
riduzione —d algoritmo di un pro˜lem— od —zioneY l— des™rizione dell9—lgoritmo medi—nte un
programma Y l9esecuzione del progr—mm— per ™erti d—ti in entr—t— d— p—rte di un ™—l™ol—tore
@um—no o me™™—ni™oAF s progr—mmi sono s™ritti in un linguaggio di programmazione D ™heD
per poter essere inteso in modo inequivo™—˜ile d—l ™—l™ol—toreD deve ˜—s—rsiD — dierenz— d—l
lingu—ggio n—tur—leD su regole sintattiche e semantiche ™erte e determin—te I F
                                                            e
…n modo e™—™e per ™ostruire ed interpret—re lingu—ggi  per chiusura di ™erti elementi di
base D rispetto —d —l™uni schemi costitutivi F
   o                                                —
€u ™—pit—re @per errore od —n™he per ne™essit D ™ome vedremoA ™he un —lgoritmo eGo
                    —
des™riv— un9—ttivit di ™—l™olo ™he si protr—e —ll9innitoF uesto o˜˜lig— —d —ggiungere —ll—
denizione ™l—ssi™— di funzione l— distinzione ™he segueF
2 Denizione @IA h—ti due insiemi M e J D un— funzione (parziale) f da M a J  un          e
insieme di ™oppie @x; yA t—li ™he per ogni xD yD e z si h— ™he
@—A @x; yA P f impli™— x P M ed y P J Y
@˜A @x; yA P f non™h @x; z A P f impli™— y a z F
                        e
ƒe si h— @x; yA P f D si di™e ™he y  il valore di f in x @o —n™he nel punto xAD e si s™rive
                                       e
f @xA a y F
v9insieme fx j esiste y t—le ™he f @xA a yg si ™hi—m— dominio di f D e si denot— ™on dom @f AF
v9insieme fy j esiste x t—le ™he f @xA a yg si ™hi—m— codominio di f D e si denot— ™on range @f AF
                           e
…n— funzione d— M — J  tot—le se si h— dom @f A a M F
3 Notazione ‘ “  l— interpretazione (semantica) dell9espressione  del lingu—ggio oggetto
                     e
del dis™orso ™orrenteF sn p—rti™ol—reD qu—ndo interpreti—mo gli elementi P di un lingu—ggio
   1 v—sint—ssi studi— le regole di ™ostruzione e ™oordin—mento delle espressioni di un— d—t— lingu—D mentre
l— sem—nti™— studi— il loro signi™—toF

                                                     Q
di progr—mm—zione medi—nte funzioni d— M n —d M D s™rivi—mo ‘ P “ @xI ; : : : ; xn A per indi™—re
il v—lore dell9—ppli™—zione —d xI ; : : : ; xn P M dell— funzione ‘ P “ @p—rentesi qu—dre omesse
qu—ndo non ne™ess—rieAF
4 Nota @IA …n— funzione f  dunque un insiemeD mentre f @xA  un elemento di range @f AF
                              e                                   e
                        e
@PA …n— funzione tot—le  un ™—so p—rti™ol—re di funzione p—rzi—leF

1.1.1 Programmi base
                                                                         e
…n programma ricorsivo parziale @—˜˜revi—zioneX prpA ad n P posti  un elemento F D GD
H DF F F del lingu—ggio €‚HH ™he ™i —™™ingi—mo — denireF …n prp —d n posti prevede un input
™onsistente in n numeri @n—tur—liAF „—lvolt— —ggiungi—mo un —pi™e o un doppio —pi™e per
dire ™he il prp  rispettiv—mente —d un posto @per esempio F H A o — due @per esempio GHH AF
                  e
5 @IA ƒsx„eƒƒs I prp di base —d un posto sonoX SD PD Ql @uno per ™i—s™un lAD ed IF uelli
— due posti sonoX II D ed IP F
@PA ƒiwex„sge
  ‘ S“ @xA a x C I ‘ P“ @HA a H ‘ P“ @x C IA a xY ‘ Qn “ @xA a nY ‘ I“ @xA a xY ‘ Ii “ @xI ; xP A a xi :
@QA „i‚wsxyvyqse uesti prp si ™hi—m—no rispettiv—mente successore, predecessore,
costante n, identit, selettrici. ve funzioni ™he essi ™—l™ol—no si ™hi—m—no funzioni base F
                   a

1.1.2 Programmi deniti per composizione
6 Denizione ƒi—no d—ti i prp —d un posto F H D GH e H H D ed i prp — due posti F HH D GHH e H HH F
 @IA ƒsx„eƒƒs               sono prp —d un posto le stringheX CHI @F H ; GH A CHP @F HH ; GH ; H H AY
                            sono prp — due posti le stringheX CHH @F H ; GHH A CHH @F HH ; GHH ; H HH AF
                                                                                 I                  P
 @PA ƒiwex„sge                          ‘ CHI @F H ; GH A““@xA a ‘ F H “ @‘‘GH “ @xAA
                                 ‘ CHP @F HH ; GH ; H H A““@xA a ‘ F HH “ @‘‘GH “ @xA; ‘ H H “ @xAA
                                   ‘ CHH @F H ; GHH A““@x; yA a ‘ F H “ @‘‘GHH “ @x; yAA
                                       I
                           ‘ CHH @F HH ; GHH ; H HH A““@x; yA a ‘ F HH “ @‘‘GHH “ @x; yA; ‘ H HH “ @x; yAAF
                              P
@QA „i‚wsxyvyqse s progr—mmi C::: si di™ono deniti per composizione di F H o di F HH
                                                       :::
™on i prp GH ; : : :F el™uni —utori di™ono per sostituzione di GH D et™F in F D et™F
Commento. ƒi— l— p—rte @IA ™he l— p—rte @PA sono denizioni induttive F €er ™ostruire ed
                          u                                     —
interpret—re l9oggetto pi ™omplesso F D si suppone di —ver gi costruito @p—rte @IAA oppure
                             u
interpretato @p—rte @PAA i pi sempli™i prp G; H F @v9inizializzazione di questi pro™edimenti
          e
induttivi  fornit— d—ll— hefF SFA
7 Esempio €er il prp — due posti nHH a CHH @Qn ; IP A —˜˜i—mo ‘ nHH “ @x; yA a nF snf—tti
                                        I
‘ n“ @x; yA a ‘ Qn “ @‘‘IP “ @x; yAA @defF di ‘ CHH “ A a ‘ Qn “ @yA @defF di ‘ IP “ A a n defF di ‘ Qn “ A :
                                                 I

                                                         R
8 Notazione ymetti—mo le p—rentesi ‘ : : :“ qu—ndo d—l ™ontesto si ™—pis™e se sti—mo p—rE
l—ndo del progr—mm— o dell— su— interpret—zioneF uindi qu—l™he volt— s™rivi—mo F @xA inve™e
di ‘ F “ @xAF
9 Nota ƒupponi—mo ™he si —˜˜i— ‘ p““@x; yA a f @x; yA per ™erti F ed f F Usiamo questo
prp — due posti gi scritto per ottenere i nuovi prp pI @—d un postoAD e pP ™he ™—l™ol—no
                   a
rispettiv—mente f @x; xA e f @y; xAF
      pI a CHP @p; I; IAY       pP a CHH @p; IP ; II A:
                                      P

ƒi h— inf—tti
       pI@xA       a CHP @p; I; IA@xA
                   a p@I@xA; I@xAA              sem—nti™— di CHP
                   a f @x; xA                   ipotesi su ‘ F “ :
          pP@x; yA a CHH @p; IP ; II A@x; yA
                       P
                   a p@IP @x; yA; II @x; yAA    sem—nti™— di CHH
                                                              P
                   a f @y; xA                   sem—nti™— delle selettri™iD ipotesi su ‘ F “ :
10 Nota qli s™hemi di ™omposizione —ppli™—ti — funzioni tot—li d—nno funzioni tot—liF

1.1.3 Ricorsione primitiva
11 Denizione @IA ƒsx„eƒƒs ƒe G  un prp —d un posto ed H  un prp — due posti —llor—
                                e                         e
         e
R@G; H A  un prp — due postiF
@PA ƒiwex„sge
      (
           ‘ R@G; H A““@x; HA     a ‘ G“ @xA
           ‘ R@G; H A““@x; y C IA a ‘ H “ @x; ‘ R@G; H A““@x; yAA:
@QA „i‚wsxyvyqse R@G; H A si di™e denito per ricorsione primitiva in G e in H F G             e
l— base e H  il passo dell— ri™orsioneF x  il parametro P D e y  l— variabile principale dell—
            e                              e                      e
ri™orsioneF
                            e                                           
Commento v— p—rte @IA  un— denizione sint—tti™— induttiv— ™os ™ome l— p—rte @IA di
                      e                                         e     
hefF TF v— p—rte @PA  dupli™emente induttiv—X int—nto per™h @™os ™ome su˜ hefF TF@PAA si
                                          —                                         e
ridu™e l9interpret—zione di F — quelleD gi noteD di G e di H Y m— sopr—ttutto per™h il v—lore
                                  e
dell— funzione F nel punto y C I  ridotto —l suo v—lore nel punto yF hur—nte l— ri™orsione il
v—lore di x rim—ne inve™e ™ost—nte @onde il nome di p—r—metroAF
   2 …n             e
        p—r—metro  un— v—ri—˜ile il ™ui v—lore rim—ne ™ost—nte per un ™erto tr—tto del dis™orso ™he si st—
f—™endoX per esempioD a; b; c sono i p—r—metri dell— p—r—˜ol— y a ax2 C bx C cY tutt—vi— sono v—ri—˜ili se si
st— studi—ndo l— ™l—sse di tutte le p—r—˜oleF

                                                          S
12 Esempio €osto ƒ…w a R@I; CHH @S; IP AAD —˜˜i—mo
                             I
        ƒ…w@x; HA     a R@I; CHH @S; IP AA@x; HA
                                I
                      a I@xA a x                          sem—nti™— di R e di IF
        ƒ…w@x; y C IA a CHH @S; IP AA@x; ƒ…w@x; yAA
                         I                                sem—nti™— di R
                      a S@IP @x; ƒ…w@x; yAAA              sem—nti™— di CHH
                                                                         I
                      a ƒ…w@x; yA C I                     sem—nti™— di S e di IP F
gon™ludi—mo ™he si h— ƒ…w@x; yA a x C yF
13 Nota vo s™hem— di ri™orsione primitiv— —ppli™—t— — funzioni tot—li d funzioni tot—liF
                                                                       —
14 Esempio €osto w…v„ a R@QH ; ƒ…wAD —˜˜i—mo
        w…v„@x; HA     a QH @xA a H                                 sem—nti™— di R e QH :
        w…v„@x; y C IA a ƒ…w@x; w…v„@x; yAA                         sem—nti™— di R
                       a w…v„@x; yA C x                             isF IP:
gon™ludi—mo ™he si h— w…v„@x; yA a xyF
15 Notazione €er —ument—re l— leggi˜ilit di queste note —dotti—mo le seguenti not—zioniF
                                                —
@IA ve ™omposizioni nell— form— C:::  ::: @F; G; H A@x; y A @dove H eGo y possono essere —ssentiA
vengono s™ritte nell— form— inssa o esplicita F @G@x; yA; H @x; yAAF
@PA s prp I; II ; IP ; Qn ed n verr—nno identi™—ti ™on i loro risult—tiF @yssi— s™riveremo per
esempio y inve™e di IP @x; yA ed n inve™e di Qn @xA e di n@x; yAAF
@QA …n— volt— —™quisito ™he il progr—mm— F ™—l™ol— l— funzione f s™rivi—mo f —l posto di F
—n™he —ll9interno dell— denizione di un nuovo progr—mm—F
@RA ƒ™riveremo le denizioni di prp nell— form— F a R@G; H A su due righe nell— form—
        (
            F @x; HA       a G@xA
            F @x; y C IA   a H @x; F @x; yAA:
v— p—rte @RA ™i —vre˜˜e ™onsentito di denire l— moltipli™—zione nell— form—
        (
            w…v„@x; HA     a H                              inve™e di QH @xA per l— p—rte @QA
            w…v„@x; y C IA a x C w…v„@x; yA                 per le p—rti @IAD @PA e @QAF
16 Esempio sn ˜—se — xot—zF ISD poni—mo
            (                                                  (
                ƒ…f@x; HA     a x                                  ƒqHH @x; HA      a H
  @—A           ƒ…f@x; y C IA a P@ƒ…f@x; yAA Y           @˜A       ƒq HH @x; y C IA a I:




                                                 T
sl prp ƒ…f ™—l™ol— l— funzione sottrazione chiusa @cut-o subtraction A solit—mente denot—t—
d— x   y e denit— d—
      •
                (
                    x y                                      qu—lor— y x
      x y
       •    a       H                                        —ltrimenti:
€oni—mo ƒq a CHP @ƒqHH ; QI ; IAD ossi— @xot—zF ISA ƒq@yA a ƒqHH @I; yAF
e˜˜i—mo ƒq@yA a H se y a H e ƒq@yA a I se y Ta HF ve funzioni ™—l™ol—te d— questi due prp
si ™hi—m—no segno di yF €oni—mo inne ƒq@yA a I   ƒq@yAF
                                                     •
17 Lemma @IA ƒe F; G; H sono prp —d n posti ™he ™—l™ol—no le funzioni f; g; h —llor—
esiste un prp —d n posti ™he ™—l™ol— l— funzione
             e@x; y A   a if f @xI ; : : : ; xn A a H then g@xI ; : : : ; xn A else h@xI ; : : : ; xn AF
@PA ƒe i prp G; HI ; : : : ; Hk ™—l™ol—no le funzioni —d un posto g; hI ; : : : ; hk —llor— esiste un
prp —d I posto ™he ™—l™ol— l— funzione
              8
              >
              <     hI @xA   qu—lor— g@xA a I
      f @xA a >     :::
              :     hk @xA   qu—lor— g@xA a k:
                                                       e
Dimostrazione. @IA ƒi— —d esempio n a PF v— funzione e  ™—l™ol—t— d—
      CHH @ƒ…w; CHH @w…v„; CHH @SG; F A; GA; CHH @w…v„; CHH @SG; F A; H AA:
       P         P          I                 P          I

ed esempioD per F @x; yA a P —˜˜i—mo
CHH @ƒ…w; CHH @w…v„; CHH @SG; F A; GA; CHH @w…v„; CHH @SG; F A; H AA a
 P         P          I                 P           I
                                              a ƒq@F @x; yAA ¡ G@x; yA C ƒq@F @x; yAA ¡ H @x; yA
                                              a ƒq@PA ¡ G@x; yA C ƒq@PA ¡ H @x; yA
                                              a H ¡ G@x; yA C I ¡ H @x; yA a H @x; yAF
@PA h—ll— p—rte @IAD per™h f pu essere denit— us—ndo k   I ™ostrutti if-then-else.
                           e       o
18 Notazione u—ndo l— legge di dipendenz— delle hi d— i  ovvi— o not— des™riveremo un—
                                                            e
denizione per casi ™ome quell— nell— p—rte @PA di questo lemm— nell— form—
      f @xA a ‘g @xA a i 3 hi @xA“:




                                                         U
1.1.4 Decisione di relazioni logiche
‚i™ordi—mo ™he un— relazione —d n posti  un sottoinsieme di x n F v— su— funzione caratte-
                                           e
           e
ristica cR D per denizioneD l— funzione tot—le t—le ™he
                                (
                                                             e
                                    H se R@xI ; : : : ; xn A  ver—
      cR @xI ; : : : ; xn A a
                                                             e
                                    I se R@xI ; : : : ; xn A  f—ls—:
                          e
ed esempio xu C yu a z u  un— rel—zione — R posti vera per i v—lori u a PD x a QD y a R e
z a SF @…n— rel—zione —d un posto si ™hi—m— —n™he propriet FA
                                                          a
19 Denizione …n prp P decide un— rel—zione R —d n P posti se ne ™—l™ol— l— funzione
                              e               e
™—r—tteristi™—F …n— rel—zione  decidibile se  de™is— d— un prpF
                                               e
ƒi osservi ™he un prp ™he de™ide un— rel—zione  ne™ess—ri—mente tot—leF
20 Esempio @IA ll prp ƒq de™ide l— propriet x a HF
                                                 —
                       e
@PA v— rel—zione x y  de™is— d— wi a CI    HH @ƒq; ƒ…fAF snf—tti wi@x; y A a ƒq@x   y AF
                                                                                     •
                          e
@PA v— funzione min@x; yA  ™—l™ol—t— d— if x y then x else yF ƒimilmente per il m—ssimoF
21 Teorema ve rel—zioni de™idi˜ili sono ™hiuse rispetto —i ™onnettivi logi™i X; •; ”; 3F
Dimostrazione. h—te le rel—zioni ri™orsive R@xI ; : : : ; xn A e S @xI ; : : : ; xn AD —˜˜i—mo
         cXR @xI ; : : : ; xn A     a   I   cR @xI ; : : : ; xn AY
                                          •
        cR•S @xI ; : : : ; xn A     a   cR @xI ; : : : ; xn A ¡ cS @xI ; : : : ; xn AY
        cR”S @xI ; : : : ; xn A     a   min@cR @xI ; : : : ; xn A C cS @xI ; : : : ; xn A; IAY
       cR3S @xI ; : : : ; xn A      a   M EQ@cR @xI ; : : : ; xn A; cS @xI ; : : : ; xn AA:



1.1.5 Programmi deniti per minimalizzazione
22 Denizione @IA ƒsx„eƒƒs ƒe G  un prp — due posti —llor— M@GA  un prp —d un
                                         e                                 e
postoF
@PA ƒiwex„sge ‘ M@GA““@xA a min z @‘‘G“ @x; z A a HAF
                                                                     e
@QA „i‚wsxyvyqse ƒi di™e ™he un prp dell— form— F a M@GA  denito per minima-
lizzazione in GF ƒe G@x; yA de™ide un— rel—zione dell— form— H @x; yA • y x si di™e ™he F 
                                                                                          e
denito per minimalizzazione limitata in H F
                                                                                  e
@RA xy„esyxi snve™e di F a M@GA s™rivi—mo F @xA a z ‘G@x; z A a H“F ƒe F  denito
per minim—lizz—zione limit—t— ™ome sopr—D s™rivi—mo z a @z xA‘H @x; z A a H“F
23 Nota F a M@GA  un progr—mm— —d un posto per™h il suo v—lore non dipende d— z F
                 e                               e


                                                              V
24 Esempio €er ogni mD le p—rti intere di quoziente e resto nell— divisione di x per m
sono ™—l™ol—te d—i prp —d un posto @sotto l— ™onvenzione x=H a H ™on resto xA
 „m @xA a @z           xA‘@z ¡ m   xA ” X@@z C IAm       xA“Y       ‚wm @xA a x   „m @xA ¡ m:
                                                                                  •
25 Nota
                    e
ƒi osservi ™he non  detto ™he esist— un v—lore di z ™he soddis l— sem—nti™— di M F €er
esempio il prp F @xA a z ‘jx   Pz j a H“ ™—l™ol— l— funzione
                (   I
                    Px                          e
                                           se x  p—ri
      f @xA a
                    indenit—              —ltrimentiF

1.1.6 Programmi di codica e decodica
‚i™ordi—mo ™he un— ˜iiezione d— x P —d x  un— funzione 
 @x; yA denit— per ogni ™oppi—
                                              e
@x; yAD l— ™ui invers— si— un— funzione denit— per ogni z P x F
                                                                          I
26 Denizione sl numero tri—ngol—re — ˜—se n  denito d— Tr @nA a P n@n C IAF @sl suo
                                                  e
      e
nome  dovuto —l f—tto ™he si h— Tr @nA a I C P C : : : C nAF
                                    e
v— funzione triangolare a due posti  l— funzione @x; yA a Tr @x C yA C yF
27 Denizione …n— ˜iiezione 
 X x P U3 x  un— codica ricorsiva se sono ri™orsive si—
                                                        e

 @x; y A ™he le funzioni 
I @z A e 
P @z A ™he ™—l™ol—no gli elementi dell— ™oppi— 
  I @ossi— t—li ™he

 @
I @z A; 
P @z AA a 
 @z AAF

28 Teorema v— funzione tri—ngol—re — due posti fornis™e un— ™odi™— ri™orsiv—F
Dimostrazione. v9esistenz— di un prp ™he ™—l™ol—  dis™ende d—gli isempi IPD IRD PRD per l—
™hiusur— di ‚4 sotto lo s™hem— di ™omposizioneF
€er —vere le inverseD ™omin™i—mo ™on l9osserv—re ™he esiste il prp ™he ™—l™ol— l— ˜—se di un
numero tri—ngol—re d—to
       @uA adf   min v‘@T r@vA      uA ” T r@v C IA > u“:

ve funzioni inverse di  sono or— d—te d—
      P @z A adf z   T r@ @z AAY
                    •                        I @z A a  @z A   P @z A:
                                                              •


29 Esempio ƒi h— @Q; IA a T r@RA C I a IIY non™hD invers—menteD  @IIA a RD e quindi
                                                         e
             • T r@ @IIAA a I e I @IIA a R   P @IIA a QF
P @IIA a II  


                                                     W
30 Notazione ƒi— z a @x; yAF ƒ™rivi—mo hx; yi per z D ed —n™he hx; y; z i per @x; hy; z iAF
€oni—mo inoltre
     @uAI adf I @uAY @uAP adf I @P @uAAY @uAQ adf P @P @uAA:
                                 —
xel seguito sfrutteremo l9identit
     @hxI ; xP ; xQ iAi a xi @i a I; P; QA:                                                       @IFIA
31 Esempio @hH; H; HiAi a H @hI; H; PiAQ a @PTAQ a P @SA a PF

1.1.7 Esercizi
  IF prp ƒ‚„@xA ™he ™—l™ol— l— p—rte inter— di xF
                                                            p
  PF prp ƒ‚„ƒ…w@x; yA ™he ™—l™ol— l— p—rte inter— di x C yF
                                                                   p
  QF prp ƒ‚„Q@xA ™he ™—l™ol— l— p—rte inter— di 3 xF
                                                            p
  RF prp ™he de™ide l— rel—zione xP           y ” @x C IAP > y F

  SF h—ti i prp F HH D GHH ed H HH ™he ™—l™ol—no rispF le funzioni f @x; yAD g@x; yA e h@x; yAD s™rivere
     il prp ™he ™—l™ol— f @h@y; xA; g@x; yAAF
  TF h—ti i prp F HH D GHH ed H H ™he ™—l™ol—no rispettiv—mente le funzioni f @x; yAD g@x; yA e
     h@y AD s™rivere il prp ™he ™—l™ol— f @h@xA; g @x; y AAF

                               —
  UF prp ™he de™ide l— proprietX               e
                                              x  un   qu—dr—to perfettoF
                               —
  VF prp ™he de™ide l— proprietX               e
                                              x  un   ™u˜o perfettoF
  WF prp ™he ™—l™ol— l— funzione         Px F
 IHF h—to il prp F ™he ™—l™ol— l— funzione f @xAD s™rivere il prp G ™he ™—l™ol— l— funzione
     g @x; y A a f @f @: : : @f @xAA : : :AA @y ! HAF

 IIF prp ™he de™ide l— proprietX l— form— di x  hy; Hi per qu—l™he yF
                               —                e
 IPF prp ™he de™ide l— proprietX l— form— di x  hy; y; yi per qu—l™he yF
                               —                e




                                                       IH
1.1.8 Conclusione
s programmi ricorsivi parziali sono gli elementi del lingu—ggio P RHH denito per ™hiusur— dei
prp ˜—se rispetto —gli s™hemi di ™omposizioneD ri™orsione primitiv—D e minim—lizz—zioneF ve
funzioni ™he essi ™—l™ol—no si ™hi—m—no ricorsive parziali F ƒi di™e ™he un prp de™ide un—
                                         —
rel—zione @in p—rti™ol—reD un— proprietA se ne ™—l™ol— l— funzione ™—r—tteristi™—Y in t—l ™—soD
       e                        e
il prp  tot—leD e l— rel—zione  dett— ricorsiva F
                                                                           e
s prp deniti per minim—lizz—zione possono divergereF „utt—vi—D un prp  tot—le se tutti gli
@eventu—liA s™hemi di minim—lizz—zione us—ti nell— su— denizione sono limit—tiF
s prp sono —ppli™—ti —d un input ™ostituito d— uno ovvero d— due numeri @n—tur—liAF uest—
             e                    e
limit—zione  inessenzi—le per™h esistono funzioni ri™orsive per l— ™odi™— e de™odi™— delle
nEple @per qu—lunque nA in un solo numeroF


1.2 Macchine a registri
†edi—mo or— un— ide—lizz—zione di ™—l™ol—toreD dett— macchina a registri illimitati @…‚wQA
Q


1.2.1 Funzionamento
sn un numero potenzialmente innito @ossi— nito m— gr—nde — pi—™ereA di registri 1,2,3,...
di quest— m—™™hin— qu—l™uno h— registrato dei numeri interi non neg—tiviF * i denoter il   —
numero ™ontenuto @registr—toA in iF
                            o
sl ™ontenuto dei registri pu essere modi™—to d—ll— …‚wQ in seguito — ™erte istruzioni ™he
     e
ess—  in gr—do di ri™onos™ereF ueste istruzioni ™orrispondono — sempli™issime oper—zioni
us—te nell9eettu—zione di ™—l™oli numeri™iF isse sono dei tre tipi illustr—ti nel seguitoF

Istruzioni di successore €er ogni i a I; P; Q; : : : ™9 un9istruzione di successore i+F v—
                                                       e
rispost— dell— …‚wQ ™onsiste nell9—ggiungere I — *i @ossi— —l ™ontenuto di iAD e nel l—s™i—re
tutto il resto inv—ri—toF
Esempio ƒupponi—mo ™he l— …‚wQ si— nell— ™ongur—zione seguente
                       I P Q R S T U :::
                       W T S PQ U H H : : :
e ™he esegu— l9istruzione i+F sn t—l ™—so si ottiene l— ™ongur—zione
@£A             W T T PQ U H H : : :
    3                   e
      uesto ™—pitolo  un —d—tt—mento delle macchine a registri di tF ƒhepherdson @per un— esposizione
  u
pi fedele —llorigin—le e per m—ggiori dett—gli si ved— il li˜roX xFtF gutl—ndX Computability. g—m˜ridge
…niversity €ressF sl nome …‚wQ viene d—l f—tto ™he nel nostro lingu—ggio ™i sono solo tre istruzioniF

                                                  II
Istruzioni di predecessore €er ogni i a I; P; Q; : : : ™9 un9istruzione di predecessore i-F
                                                            e
v— rispost— dell— …‚wQ ™onsiste nel sottr—rre I —l ™ontenuto di *i se positivoD e nel l—s™i—re
tutto il resto inv—ri—toF en™he *i rim—ne inv—ri—to se er— nulloF
Esempio ƒupponi—mo ™he l— …‚wQ si— nell— ™ongur—zione seguente
                 I P Q R S T U :::
 @££A            W T S PQ U H H : : :
e ™he esegu— l9istruzione i-F sn t—l ™—so si ottiene l— ™ongur—zione
                       W T S PQ U H H : : :
                                         e
v— rispost— dell— …‚wQ —ll9istruzione 6-  inve™e —n™or— l— ™ongur—zione @BBAF

Istruzioni di salto xell9eettu—zione di un —lgoritmo inform—le ™i pu essere un punto in
                                                                                    o
                                                                                         e
™ui sono pres™ritte diverse —zioni —ltern—tiveD se™ondo il punto in ™ui il ™—l™olo  giunto sin lF    
                      o
sn —ltre situ—zioni pu essere ne™ess—rio ripetere un— d—t— routine p—re™™hie volteF v— …‚wQ
s— riettere pro™edure di questo tipoD us—ndo istruzioni di salto (jump) F xoi potremo per
esempio us—re un9istruzione di s—lto per produrre l— rispost— seguente
        e                   —
’ƒe *i  positivoD —llor— v —ll— @go to A de™im— istruzione del progr—mm—F4
v9istruzione di salto ™he provo™— quest— rispost—  i?10 F e
                                                                 e
sn gener—leD per ogni i a I; P; Q; : : : ; q a I; P; Q; : : :D ™9 un9istruzione i?q F v— rispost— dell—
        e
…‚wQ  ™ome segueF ƒupponi—mo ™heD dur—nte l9ese™uzione di un progr—mm— P D si— venuto
il momento di eseguire quest— istruzioneF sl ™ontenuto *i viene es—min—toD m— tutti i registri
rim—ngono in—lter—tiF uindi
   IF se *i>0D l— …‚wQ pro™ede —ll— ese™uzione dell— qEm— istruzione di P Y
   PF se *i=0D l— …‚wQ p—ss— —ll— prossim— istruzione di P F
                           e                                         e
v— …‚wQ si ferm— per™h h— eseguito l9ultim— istruzione o per™h h—eseguito l9ultim—
                                  e
istruzione @e ovvi—mente ess— non  un s—lto —d un indirizzo pre™edenteAF

Computazioni €er oper—re l— …‚wQ deve ri™evere un progr—mm— P ed un— congurazione
iniziale D ossi— un— sequenz— aI ; aP ; aQ ; : : : di numeri n—tur—li ™ontenuti nei registri 1,2,3,...F
ƒupponi—mo ™he P ™onsist— di s istruzioni II ; : : : ; Is F v— …‚wQ ™omin™i— l— ™omput—zione
                                        
o˜˜edendo —d II D poi — IP ; IQ D e ™os vi—D — meno ™he non in™ontri un9istruzione di s—lto i?q F
sn t—l ™—soD l— …‚wQ p—ss— —ll9istruzione determin—t— d—ll9istruzione di s—lto e d—l ™ontenuto
                                            o
™orrente *i di iF sllustri—mo tutto ™i ™on un esempioF
32 Esempio henoti—mo ™on 03i il progr—mm— seguente
       II        i-
       IP        i?1

                                                  IP
gonsideri—mo le ™omput—zioni dei progr—mmi 033 e 032 per l— ™ongur—zione inizi—le
       I P Q R S :::
       W Q H H H :::
€ossi—mo r—ppresent—re il progredire dell— ™omput—zione elen™—ndo le su™™essive ™onguE
r—zioni ™he si present—no
       I P Q R S :::
       W Q H H H :::                 I P Q R S :::
       W P H H H :::                 W Q H H H :::
       W I H H H :::
       W H H H H :::
gi sono n—tur—lmente ™omput—zioni ™he non si —rrest—no m—iF €er esempio non si —rrest—
—l™un— ™omput—zione del progr—mmm— ™he segue
       1C
       1c1
„orneremo nel seguito sul pro˜lem— di de™idere se un— p—rti™ol—re ™omput—zione —ll— ne si
—rrest— o noF
33 Esempio ƒe qu—ndo il progr—mm— seguente ™omin™i— —d oper—re si h— *1=m e ™on
                                              e
*2=nD qu—ndo esso termin— si h— *1=m C n non™h *2=HF
      II 2c4
      IP 2C
      IQ 2c7
      IR 1C
       IS 2 
       IT 2c4
       IU 2 
34 Notazione €er des™rivere un ™omport—mento ™ome quello dell9esempio QQ si s™rive
      £1 Xa £1 C £2        £2 Xa 0
il segno := si legge diviene F uindiX il ™ontenuto del registro 1 diviene ugu—le —ll— somm—
di *1 e *2D mentre *2 diviene 0F
35 Denizione @IA h— or— in poi supponi—mo ™he in ogni progr—mm— P  II ; : : : ; Ip
in tutte le istruzioni dell— form— i?r si —˜˜i— sempre r p C IF yssi— ™he i progr—mmi
terminino ™on un s—lto —ll— prim— rig— inesistenteF
@PA h—ti i progr—mmi P  II ; : : : ; Ip e Q  II ; : : : ; Iq D l— loro concatenazione P Q @—n™he
                               P
                                   e
s™ritt— nell— forma verticale Q A  il progr—mm— II ; : : : ; IpCq in ™ui

                                               IQ
  IF le prime p istruzioni sono quelle di P Y
                                                                             e
  PF le ultime q istruzioni sono identi™he — quelle di QD s—lvo ™he ogni i?r  sostituito in
     P Q d— i?p+rF

@QA …n numero i in un punto del dis™orso in ™ui s—re˜˜e r—gionevole —ttendersi un9istruzione
st— per Ii F
                                                              e
@RA sl numero dei registri @P A impieg—to d—l progr—mm— P  d—to d—
      @P A a     m—x l‘l a m; q per qu—l™he istruzione di P dell— form—
                  m C oppure m   oppure mcq“:

Commento. sl senso dell— p—rte @PA di quest— denizione dovre˜˜e essere ™hi—roF s proE
                            —
gr—mmi P e Q sono st—ti gi s™rittiD ed or— vogli—mo eseguire prima P e poi QF e t—l ne
˜—st— giust—pporre i due progr—mmiD ed —ggiorn—re —ll— loro nuov— posizione gli indirizzi dei
                              e
s—lti del se™ondoF …n esempio  ™ontenuto nel prossimo progr—mm—F
36 Esempio i3j denoti il progr—mm— seguenteF isso tr—sferis™e il ™ontenuto del registro
i in j l—s™i—ndo inv—ri—to *i e azzerando *3Y ossi—X
     £j Xa £i £3 XaH
      i3j
             I 033
              Q    1c 5
              R    3C
              S    3c13
              T    i 
              U    3C
              V    jC
              W    ic 6
             IH    3 
             II    iC
             IP    3c10
             IQ    3 

ƒi osservi ™he l9indirizzo Q —ssegn—to —ll— se™ond— rig—  dovuto —l f—tto ™he 0 3 3  un
                                                         e                           e
progr—mm— form—to d— due istruzioniF




                                                IR
1.2.2 Simulazione di R00 mediante macchine a registri
37 Notazione ƒ™rivi—mo P @aI ; : : : ; ah A 9 bI ; : : : ; bk se il progr—mm— P ™omin™i— —d operE
—re ™on £1 a aI DF F F D£h a ah e diverge oppure si —rrest— ™on £1 a bI DF F F D£k a bk D mentre il
                                                                            e
™ontenuto degli —ltri registri @prim—D dur—nte e dopo l— ™omput—zioneA  ignoto o irrilev—nteF
sn quest— sezione f—™™i—mo vedere ™he il lingu—ggio dell— …‚wQ  non meno potente di RHH D
                                                                      e
mostr—ndo il
38 Teorema €er ogni prp F ™he ™—l™ol— un— funzione ri™orsiv— p—rzi—le f @x; yA ™9 un          e
progr—mm— …‚v PF t—le ™he
      PF @x; y A 9 z sse f @x; y A 9 z:
Dimostrazione. snduzione sull— ™ostruzione di F e sep—r—zione dei ™—siF xelle ™ostruzioni ™he
seguono ™i —tterremo —ll— ™onvenzione ™he ogni funzione us— il registro 3 solo per tr—sferimenti
dell— form— i3jF
                                         e
f—seF g—so IF F a Qn F sl teorem—  d—to d—l progr—mm—
      0 3 1 1 C : : : 1C           @n volteA:
                                                e
g—so PF F a S ovvero F a P F sl teorem—  d—to d—i progr—mmi 1+ e @rispFA 1-F
g—so QF F a I o F a II F sl teorem—  d—to d—l progr—mm— 1 3 1F snne — IP —sso™i—mo il
                                           e
progr—mm— 2 3 1F
€—ssoF g—so IF f @x; yA a e@g@x; yA; h@x; yAA ™on e a ‘ E “ g a ‘ G“ e h a ‘ H “ e ™on qu—ttro
sottoE™—si se™ondo l— —ssenz—Gpresenz— di h e di yF ƒi—no PE D PG e PH @l9ultimo possi˜ilmente
—ssenteA —sso™i—ti d— sFrF R —i prp E D G e H D e poni—mo
      m a m—x@@PE A; @PG A; @PH A; QA
                               e      e
dove l— r—gione di quel Q  ™he 3  riserv—to —i tr—sferimentiF
                    e       e
ƒotto™—so IFIF x h n y sono —ssentiF ƒi pone il pro˜lem— di salvare x ed y dur—nte il
                               e
™—l™olo di g o di hD non™h il v—lore dell9un— o dell9—ltr— funzione dur—nte il ™—l™olo dell9—ltr—F
                                        e
…n progr—mm— ™he ™—l™ol— f @x; yA  list—to nell— prim— ™olonn— dell— gur— ™he segueF xelle
                      e
™olonne su™™essive  indi™—to l9evolversi dei registri ID PD m C I e m C P @’c4 signi™— ™he il
                                              e
™ontenuto del registro in quel momento  imprevedi˜ileA
       13mC1 x                   y        x c
       23mC2 x                   y        x y                                s—lv—t—ggio input
       PH             h@x; y A c          x y                       ™—l™olo di h@x; yA per sFrF
       m C 2 3 2 h@x; y A y               x y                              re™upero di y per g
       1 3 m C 2 h@x; y A y               x h@x; y A              s—lv—t—ggio di h@x; yA per f
       mC131 x                   y        x h@x; y A                       re™upero di x per g
       PG             g @x; y A c         x h@x; y A                ™—l™olo di g@x; yA per sFrF
       m C 1 3 2 g @x; y A h@x; y A x h@x; y A                       re™upero di h@x; yA per e
       PE             f @x; y A c         x h@x; y A     ™—l™olo di e@g@x; hA; h@x; yAA per sFrF
  4   a ipotesi induttiv—F

                                                IS
                  e                  e
ƒotto™—so IFPF y  —ssente m— h ™9F gome su˜ IFID m— do˜˜i—mo s—lv—re solo x ed h@xAF
ƒono indi™—ti i ™ontenuti dei registri ID P e m C IF
       13mC1        x           c          x
       PH           h@xA        c          x                             ™—l™olo di h@xA
       132          h@xA        h@xA       x                 primo s—lv—t—ggio di h@xA
       mC131        x           h@xA       x                        re™upero di x per g
       23mC1        x           h@xA       h@xA     ™omplet—mento s—lv—t—ggio di h@xA
       PG           g @xA       c          h@xA                 ™—l™olo di g@xA per sFrF
       mC132        g @xA       h@xA       h@xA                  re™upero di h@xA per e
       PE           f @xA       c          h@xA        ™—l™olo di e@g@xA; h@xAA per sFrF
                 e                                   e                  e
ƒotto™—so IFQF h  —ssenteF v— presenz—G—ssenz— di y  irrilev—nte per™h si— f @xA a e@g@xAA
™he f a e@g@x; yAA sono ™omunque ™—l™ol—te d— PG PE F
g—so PF ƒi h— F a R@G; H AF €oni—mo g a ‘ G“ e h a ‘ H “ Y si—no PG e PH i progr—mmi
—sso™i—ti — G ed H d— sFrF heni—mo
      p a lh@PG A q   a lh@PH A m a m—x@@PG A; @PH A; QA
                                     e
…n progr—mm— ™he ™—l™ol— f @x; yA  list—to e ™omment—to nell— se™ond— e nell9ultim— ™olonn—
                                                                                   e
dell— gur—F v— prim— ™olonn— delle righe ™he ™ontengono un9istruzione ™9 il suo indirizzoF
                    e                                                                 e
xelle —ltre ™olonne  indi™—to l9evolversi dei registri ID PD m C I e m C P @k y  un ™ont—tore
                                               e
delle ™hi—m—te di PH Y f @kA st— per f @x; kAY  molto f—™ile ™—l™ol—re l9 indirizzo A e l— lunghezz—
B   I di questo progr—mm— — p—rtire d— pD d— q e d—ll— lunghezz— dei progr—mmi i 3 jA
   13mC1          x         y          x    c
   23mC2          x         y          x    y               s—lv—t—ggio input @k a HA
   PG             f @HA     c          x    y                          ™—l™olo di g@xA
   m C 2c A       f @k A    c          x    y                       prosegui se y > H
   m C 2C         f @k A    c          x    I            prep—r—zione prossimo s—lto
   m C 2c B       f @k A    c          x    I                                       es™i
 A 132            f @k A    f @k A     x    y k   f @k A in RP in prep—r—zione di PH
   mC131          x         f @k A     x    y k       x in RI in prep—r—zione di PH
   PH             f @k A    c          x    y k                            f @k A in RI
   m C 2          f @k A    c          x    y k                            k Xa k C I
   m C 2c A       x         f @k A     x    y k                        ripeti se k < y
 B
g—so QF ƒi h— F a M @GAF €oni—mo g a ‘ G“ Y si— PG il progr—mm— —sso™i—to — G d— sFrY
                                                                       e
deni—mo m a m—x@@PG A; QAF …n progr—mm— ™he ™—l™ol— f @x; yA  list—to e ™omment—to
nell— se™ond— e nell9ultim— ™olonn— dell— gur—F v— prim— ™olonn— delle righe ™he ™ontengono
                e                                       e
un9istruzione ™9 il suo indirizzoF xelle —ltre ™olonne  indi™—to l9evolversi dei registri ID PD

                                                      IT
mCI                        e                                                       e
        e m C P @k y  un ™ont—tore delle ™hi—m—te di PH Y f @kA st— per f @x; kAY  molto
f—™ile ™—l™ol—re l9 indirizzo A e l— lunghezz— B di questo progr—mm— — p—rtire d— pD d— q e
d—ll— lunghezz— dei progr—mmi i 3 jA
   13mC1            x          c x c
   032              x          H x c                                          zaH
   23mC2            x          H x H                              s—lv—t—ggio x e z
 A mC131            x          z x z            prep—r—zione PG @inutile per z a HA
   mC232            x          z x z
   PG               g @x; z A c x z                                   ™—l™olo di g@x; z A
   m C 2C           g @x; z A c x z C I                   prep—r—zione prossimo ™i™lo
   1cA              g @x; z AA c x z C I                ripeti ™on z C I se g@x; z A Ta H
   mC231            zCI        c x zCI
   1                f @xA      c x zCI                 x    in RI in prep—r—zione di PH

1.2.3 Conclusione
v— m—™™hin— …‚wQ ™ostituis™e un— ide—lizz—zione di ™—l™ol—toreF s suoi progr—mmi ™onE
sistono in sequenze di istruzioni d— eseguire l9un— dopo l9—ltr— — meno ™he un— di esseD dett—
di salto D non dispong— —ltrimentiF e ™i—s™un— funzione ri™orsiv— p—rzi—le ™orrisponde un
p—rti™ol—re progr—mm— …‚wQ ™he l— ™—l™ol— se™ondo uno st—nd—rd —ppropri—toF

1.3 Macchine di Turing strutturate
1.3.1 Macchine di Turing ordinarie
39 ƒi— d—to un alfabeto di nastro   a SH ; : : : ; Sk S F …n— „w in   oper— su un— string— T in
                        e                                                 —
 F …n— delle ™elle di T  osservataF SH h— l— funzione di bianco D e s—r denot—to d— 5F ve
     5                 e
        …n alfabeto    un— ™l—sse nit— e non vuot— di segni gr—™iD ™hi—m—ti lettere o caratteriF …n— stringa
in    un— sequenz— X di n  H lettereY n  l— su— lunghezza D denot—t— ™on jX jF €er n a H si h— l— string—
      e                                         e
vuot— F v— concatenazione X1 X2 di X1 e X2  l— string— X t—le ™he jX j a jX1 j C jX2 jD e ™he le sue prime
                                                    e
jX1 j @ultime jX2 jA lettere sono ugu—li — quelle di X1 @di X2 AF ƒi denot— ™on  £ l— ™l—sse delle stringhe in  F
                           e                      e                       e
sn termini —lge˜ri™iD  £  un monoide per™h l— ™on™—ten—zione  —sso™i—tiv— e h—  ™ome elemento neutroD
m— non —mmette invers—F
     Notazione   @IA X; Y; : : : sono stringhe e a; b; : : : sono lettere nell9—lf—˜eto ™orrenteF
     @PA eppli™hi—mo —gli —lf—˜eti i segni insiemisti™i usu—li @2; D et™FA „utt—vi—  ; ¡ st— per   [ ¡ e  ; a
st— per   [ fagD nell9ipotesi t—™it—   \ ¡ a ; e a 2  F =
  @QA @X Am denot— l— ™on™—ten—zione di m  H stringhe tutte ugu—li —d X Y p—rentesi omesse qu—ndo X
™onsiste in un— singol— letter—F €er esempio @BAA2 a BABAD m— BA2 a BAAY B 1 a B Y @BAA0 a B 0 a F
     Terminologia     €er r—gioni stori™he l— string— di un— „w e le sue lettere sono spesso ™hi—m—te nastro e
celleF …n— string— in   appartiene —   D m— ™—pit— di s™rivere ™he  in   F e
                                           £                                       £




                                                       IU
espressioni T a U . W e U / W di™ono rispettiv—mente ™he il ™—r—ttere osserv—to in T a U W
e
 il primo di W o l9ultimo di U F
ygni „w M  des™ritt— d— un— list— di q ! I righe @stori™—mente ™hi—m—te stati interniA ™he
             e
™ontengono un9istruzione Ii @I i qA ™ome di seguito indi™—toF
ve istruzioni sono di tre tipi e sono molto simili — quelle di …‚wQF
                                                   e
  IF SpostamentoF v9eetto delle istruzioni d e s  ™he si p—ss— —d osserv—re l— letter— —
     destr—Gsinistr— di quell— pre™edentemente osserv—t—D ossi—
      d@U a . bcW A a U ab . cW       s@U a . bcW A a U . abcW         @U e W possono essere A
                                                                    e
      „utt—vi— l9ese™uzione di s e di d qu—ndo l— letter— osserv—t—  rispettiv—mente l— prim—
                                      e
      o l9ultim— ™omport— ™he un 5  —ggiunto automaticamenteD ossi—
            d@U a . bA a U ab . 5      s@.bW A a .5bW

  PF ScritturaF €er ogni a P   ™9 un9istruzione a il ™ui eetto  ™he il ™—r—ttere osserv—to
                                  e                              e
     viene sostituito ™on aF yssi—
            b@U . bW A a U . aW

  QF Salto €er ogni a P   ™9 un9istruzione di s—lto nell— form—
                            e
            Jaq

                    e                                                  e
      il ™ui eetto  di s—lt—re —ll— rig— q se il ™—r—ttere osserv—to  aF
                                                     e
ve istruzioni vengono eseguite un— dopo l9—ltr— n™h non si —rriv— —ll— rig— q C I ™ome
                                     ee
™onseguenz— di un s—ltoD oppure per™h  st—t— eseguit— l— Iq ed ess— non er— un s—lto — Ip
@p < qAF
Commento. gonseguenz— dell— ™ondizione q ! I  ™he un9istruzione ™ome dD ™ome sD o ™ome
                                             e
  e
a  un— „wF v— ™hi—meremo elementareF
40 Notazione @IA s puntini : : : — sinistr— @destr—A di un— string— X st—nno per sequenze di
5 non signi™—tivi @e non osserv—tiA — sinistr— @— destr—AF x—stri ™he dieris™—no per ˜i—n™hi
non signi™—tivi sono ™onsider—ti ugu—liF
@PA M @X . Y A a U . W signi™— ™he per ogni ZI e ZP si h—
      M @ZI X . Y ZP A a ZI U . W ZP
w— M @: : : X . Y A a : : : U . W @e M @X . Y : : :A a U . W : : :A signi™— ™he prim— e dopo l—
™omput—zione — sinistr— di X e di U @— destr— di Y e di W A ™i sono solo dei 5 non signi™—tivi
@vedi SI per un esempioAF

                                                IV
41 Notazione ghi—mi—mo test un9espressione  nell— form— aI ; : : : ; ah D e di™i—mo ™he    e
                               e
vero se il ™—r—ttere osserv—to  un— delle ai F ƒ™rivi—mo J  q per l— sequenz— di h istruzioni
       J a1 q
       :::
       J ah q
 ƒe   in quest— form— ™hi—mi—mo test —n™he l9espressione X D ugu—le per denizione —
       e
Ta aI; : : : ; Ta ahY X  vero se il ™—r—ttere osserv—to non  un— delle aiF €oni—mo XX a  F
                         e                                    e
      J Ta b1 ; : : : ; Ta bh q st— per J a1 ; : : : ; ak q @faI ; : : : ; ak g a     fbI ; : : : ; bh gA
snne J q st— per il s—lto incondizionato J  q ™on  ugu—le — tutte le lettere di  F
42 Esempio uest— „w in   a f5; A; B; C g
       d
       J Ta 5 1
e
 ™ostituit— d— R righeY ess— si spost— sul primo ˜i—n™o — destr— del ™—r—ttere osserv—toF

1.3.2 Il linguaggio strutturato
43 Concatenazione sn modo del tutto —n—logo — qu—nto detto per le …‚w @vedi QSA l—
                                                                       M
concatenazione M N @—n™he s™ritt— nell— forma verticale N A delle „w M  II ; : : : ; Ip e
N  II ; : : : ; Iq  per denizione l— „w II ; : : : ; IpCq in ™ui le prime p istruzioni sono quelle di
                    e
                                                                                         e
M Y le ultime q istruzioni sono identi™he — quelle di N D s—lvo ™he ogni J a r  sostituito d—
J a p C rF

44 if-then-else €er ogni M D N e  D l9espressione
      ‘   3 MY b 3 N“
denoter l— „w seguente @p e q sono i numeri delle righe di M e di QY b  un modo di dire
       —                                                                e
altrimenti Y nell— prim— ™olonn— i st— per I A     i



           I         J  qC3
           P         N
         qCP         J pCqC3
         qCQ         M
       pCqCQ



                                                       IW
45 while €er ogni „w M e  l9espressione
        while  M end
       —
denoter l— „w @p a lh@M AA
           I J X p C 3
           P M
         pCP J 1
         pCQ

46 …n— m—™™hin— di „uring si di™e strutturata @„wƒ A se pu essere denit— — p—rtire d—lle
                                                           o
„w element—ri medi—nte i soli s™hemi di ™on™—ten—zioneD if-then-else e whileF

47 Esempio v— „w dell9isF RP equiv—le —ll— „wƒ
        d while Ta 0 d end

48 Notazione ‘a 3 M Y b 3 N Y b 3 L“ st— per ‘a 3 M Y b 3 ‘b 3 N Y b 3 L““F uesto
 —
d senso —ll9espressione
        ‘a1 3 MI Y a2 3 MP Y : : : Y ah 3 Mh Y b 3 N “
ymetti—mo l— ™l—usol— b 3 N qu—ndo —ltri ™—si oltre gli h elen™—ti non sono possi˜ili
                                                                e
o interess—ntiF u—ndo l— legge ™he f— dipendere le Mi d—lle ai  not— o ovvi— s™rivi—mo
sempli™emente ‘a 3 M @aA“ @vedi inzio di per un esempioAF

1.3.3       TMS notevoli
49                      e
         IF …n— string—  connessa se non vi o™™orre 5Y
     PF un campo  un— string— ™onness— nell— qu—le non o™™orr— il separatore jY
                 e
     QF un record  un— sequenz— jXI j : : : jXn j di n ! I ™—mpiF
                  e
50 v— prossim— „wƒ ™—n™ell— l— string— ™onness— X — sinistr— di uno sp—zio osserv—toD ossi—
        CANCELLA@: : : X . 5A a : : : . 5

         CANCELLA       s while Ta 5 5 s end                ™—n™ell— no —l prossimo sp—zio
                         D@5A                            torn— —l ™—r—ttere osserv—to inizi—le



                                                 PH
51 v— prossim— „wƒ ™opi— —ll— sinistr— di un re™ord X un numero i > H qu—lsi—siD ossi—
      COPIA@: : : X . i aA a : : : . i 5 X i a            @a Ta IA
e t—l ne ess— eettu— un ™i™lo ™he ™opi— un uno —ll— volt—Y il segno 4 h— il ruolo di m—r™—tore
dell9I in ™orso di ™opi—
       COPIA          while 1
                         4 S@Ta 5A S@Ta 5A ™er™— il secondo 5 per sovr—s™river™i I
                         1 D@Ta4A 1 d
                      end
                      S@Ta 5A S@Ta 5A d            —
                                                 v — sinistr— del numero ™opi—to
52 v— prossim— „wƒ ™er™— l9iEmo ™—mpo di un re™ord di n ™—mpi dopo il primo 5D ossi— @Y
 ™onness— e non ™omin™i— ™on IY a Ta IA
e
      CERCA@X . i a Y 5jXI : : : jXi A a X i a Y 5jXI : : : j . Xi
in p—rti™ol—reD per i a n si pi—zz— dopo l— ne re™ord jF
       CERCA      4D@Ta 5A d 5 S@Ta4A 1 d
                      while 1
                      4 D@Ta5A j D@Ta jA   5 S@Ta4A 1 d end
                      D@Ta5A j d

53 Shiftatrici heni—mo due „wƒ per shift—re @a tr—sl—reA un— string— di un posto —
sinistr— o — destr—F gomin™i—mo ™ol porre @a; b; c P  Y not—zioni —ll— ne di RV ™on b ™ome aA
       shS          ‘b 3 s b d d“         shS@a . bcA a bb . c
       shD          ‘b 3 d b s s “        shD@a . bcA a .abb
@IA „r—sl—zione — sinistr— di un— string— ™onness— aX
       ShiftS           while Ta 5 shS end
                         s5

      ShiftS@a . X 5 : : :A a X . 5 : : :

@PA €er poterl— us—re in situ—zioni diverseD deni—mo l— shift—tri™e — destr— in un modo
              u
leggermente pi gener—leX poni—mo @l— letter— a non o™™orr— nell— string— X A
       ShiftDa          D@Ta aA d a s                     .a X a : : : diviene a X / a a : : :
                         while Ta a shD end         a b X / a a : : : diviene . a b X / a : : :
                         d a

      ShiftDa @.a X a : : :A a a . a X a : : :

                                                    PI
1.3.4 Un interprete del linguaggio URM3 nelle MTS
himostri—mo or— ™he le „wƒ sono non meno potenti dei progr—mmi …‚wQ in modo pi              u
                                                                e
™ostruttivo o uniforme di qu—nto f—tto per il teorem— QVD per™h s™rivi—mo un— „wƒ INT ™he
interpreta i progr—mmi …‚wQF
54 Alfabeto di nastro heni—mo l9—lf—˜eto
      A a 5; j; H; I; 4; 5; C;  ; c
dove i sim˜oli 4 e 5 sono marcatori us—ti per ritrov—re p—rti di n—stro visit—te in pre™edenz—F
55 Rappresentazione dei programmi e dei registri his™utendo ‚4 e …‚wQ —˜˜i—mo
sempre ™onsider—to si— i progr—mmi ™he i numeri n—tur—li in modo indipendente d—ll— loro
r—ppresent—zioneF hovendo or— —gire su stringhe do˜˜i—mo pre™is—re ™he nelle ™ostruzioni di
queste sezioni
   IF l9o™™orrenz— di un numero x in un n—stro st— sempre per H se x a H e per Ix se x > HF
   PF l9o™™orrenz— di un progr—mm— P a II : : : Ih in un n—stro st— sempre per un re™ord di
                           e
      h ™—mpiD il ™ui iEmo  nell— form—
            8
            > c i H q qu—lor—
            <                      I a ic q
            >Ci
            : i
                      qu—lor—      Ii a iC
                      qu—lor—      Ii a i 
56 Teorema isiste un— „wƒ INT nell9—lf—˜eto A or— denitoD t—le ™he per ogni P a
II : : : Ih @@P A a mA e per ogni mEpl— xI ; : : : ; xm si h—
          INT @: : : . j II j : : : j Ih j 5j xI j : : : j xm j : : :A 9 j : : : yI j : : : j ym j sse
                                                  P @xI ; : : : ; xm A 9 yI ; : : : ; ym : : :
Dimostrazione. h—ll— ™ostruzione ™he segueF
Esempio €er P  3   3c1 e per xI a HD xP a PD xQ a I l9input per INT                          e
        : : : 5 . j   III j c IIIHI j 5 j H j II j Ij5 : : :
                                    e
mentre l9output desider—to  @™fF isempio QTA
        : : : 5j H j II j Hj 5 : : :
Ciclo principale INT ™omin™i— —d oper—re sul primo jD e si —rrest— se e qu—ndo ries™e —
s™—ndire il 5 ™he sep—r— le istruzioni d—i registriF
          INT  while j
                       d ‘C 3 exC Y   3 ex  Y c 3 exc Y 5 3 5“ end
                  CANCELLA
dove le „wƒ exC ; ex  e exc eseguono rispettiv—mente le istruzioni C;  ; cD e si —rrest—no sull—
j — sinistr— dell— prossim— istruzioneY e dove l— „wƒ CANCELLA elimin— il progr—mm— …‚wQ
—l termine dell— simul—zioneF

                                                 PP
Esecutrici u—ndo queste „wƒ ™omin™i—no —d oper—reD il ™i™lo prin™ip—le h— capito ™he
deve essere simul—t— l9istruzione
      I    OiHq          @O a C;  ; c ™on Hq —ssente se O Ta cA
            e
e il n—stro  nell— form— @PI =PP sono le p—rti di P prim—Gdopo I D e possono essere vuoteA
      PI j . O i   H q j PP 5 jxI j : : : jxm 5 : : :                                                     @IFPA
isse eseguono I D e si —rrest—no osserv—ndo l— ˜—rr— j —ll9inizio dell— prossim— istruzione o su
quell— —ll— ne del progr—mm—F
       exC     4 d CERCA                               j   C i j : : : j xi diviene   j 4 i j::: j   . xi
                ‘H 3 1Y                                                             j . H diviene j   . I
                b 3 5 ShiftD5                                            . Ixi diviene 5 . 5 Ixi  I
                        1 s 1“                                         5 . 5 Ixi  I diviene . xi C I
                   S@Ta4A C D@1A                               ripristin— il C sostituito d—ll— m—r™— 4
simmetri™—menteD m— distinguendo i tre ™—si xi a HD xI a I e xi > ID poni—mo
       ex      4 d CERCA
                ‘H 3 0Y
                I 3 d ‘1 3 s ShiftSY                              se xi > I elimin— un I
                        b 3 s 0““                                  se xi a I poni xi a H
                  T       T
                S@a4A   D@a jA

       exc    4 d CERCA
                        T
               ‘0 3 S@a4A c D@Ta jAY                             se aI a H non s—lt—re e ripristin— ?
                      T       T
               b 3 S@a4A c D@a 0A                           se ai Ta H ripristin— ? e v — destr— di q
                                                                                        —
                        d COPIA                                                   prep—r— ri™er™— di Iq
                        CERCA s 4                                       v —d Iq e m—r™— l— j inizi—le
                                                                          —
                        S@Ta 5A CANCELLA                                         ™—n™ell— l— ™opi— di q
                        D@Ta4A j“

1.3.5 Una macchina universale
57 Premessa …n el—˜or—tore @computer A h— l— ™—p—™it di eseguire qu—lsi—si programma
                                                           —
                                                                    e
s™ritto in un lingu—ggio predenitoF gi sono inniti progr—mmi e ™9 un singolo ente ™—p—™e di
eseguirli tuttiF ve singole „w n qui ™onsider—te possono essere ™onsider—te ™ome progr—mmiY
                                                        —
l— „wƒ universale U  ™he or— deni—mo h— l— ™—p—™it di eseguire tutte le „w ™he oper—no
                                             o
su un d—to —lf—˜eto di n—stro  F iss— pu dunque essere ™onsider—t— ™ome l9equiv—lente
                                                                  e
™on™ettu—le di un el—˜or—toreF h— un —ltro punto di vist—D poi™h U  esegue un— —ll— volt— le
                                                                    o
istruzioni del programma oggetto ™he le viene d—to in entr—t—D pu essere ™onsider—t— ™ome

                                                        PQ
                                                                   e           e
un interprete delle „w nel lingu—ggio delle „w stesseF snneD poi™h U  D ˜en™h struttur—t—D
e
 ™—p—™e di simul—re tutte le „w ordin—rieD l— su— ™ostruzione dimostr— il risult—to @noto
                    o
™ome teorem— di fhmEt—™opiniA ™he st—˜ilis™e ™he i progr—mmi struttur—ti sono non meno
potenti dei progr—mmi ordin—riF
58 Rappresentazione h—to  D poni—mo
     A  a  ; £; j; 4; 5;  >; s; d; c
‚—ppresenti—mo l— „w M            II   : : : Ih   in   ™on h ™—mpiD l9iEmo dei qu—li h— l— form—
     (
         c a Iq        qu—lor— Ii a J a q                     aP 
         s; d; a       qu—lor— Ii a s; d; a
59 Teorema isiste un— „wƒ U  in A  t—le ™heD per ogni „w M in   ed ogni n—stro T D si
h— @il sim˜olo  > h— il ruolo di m—r™—tore del ™—r—ttere osserv—to d— M A
     U  @: : : 5 . M      £  > T £ : : :A 9 : : : S : : :     sse M @: : : T : : :A 9 : : : S : : :
Dimostrazione. h—ll— ™ostruzione ™he segueF

Il ciclo principale ƒi ripete un ™i™lo del tutto simile — quello dell9interprete per …‚wQD
us™endone se e qu—ndo si —rriv— — s™—ndire l— B ™he sep—r— M d—l n—stro oggettoY — questo
punto si ™—n™ell—no M e le due B
      U          while j
                    d ‘ d 3 exd Y s     3 exsY a 3 exaY c 3 excY £ 3 £“ end
                  CONCLUDI

Le esecutrici ueste „wƒ ™omin™i—no —d oper—re sull— j —ll— sinistr— dell9istruzione d—
eseguireD l— eseguonoD e si —rrest—no sull— j — sinistr— dell— prossim— istruzione d— eseguireF
v9ese™utri™e di d deve ™onsider—re il ™—so in ™ui si si— —ll9ultimo 5 — destr—
      exd    4 D@Ta  >A d d                                      m—r™— istrF in ™orsoD ™er™— ™—rFossF oggetto
              ‘£ 3 5 d  > d 5 d £Y                                —ggiungi 5D ossi—  > 5£ diviene 5 > 5£
              b3s
                   ‘a 3  > d a“                                                                    >   a   diviene a >
                   “
                   S@Ta4A d d                        torn— —ll9istruzF in ™orsoD ripristin— dD prossim— istruzF




                                                         PR
v— ese™utri™e dell— s deve inve™e ™onsider—re il ™—so in ™ui si si— —ll9ultimo 5 — sinistr—F
                                        e
ƒi™™ome — sinistr— del n—stro oggetto ™9 il re™ord d—tiD ˜isogn— f—r posto shift—ndo
      exs     4 D@Ta  >A s               m—r™— istrF in ™orsoD ™er™— il ™—rFossF oggetto
               ‘£ 3 ShiftD£  > d 5Y             . £   X : : : diviene £   .5 X : : :
                                                       >                     >
               b3d
                      ‘a 3  > s a“ “                                     >   a diviene a   >
                  T
               S@a4A s d                 torn— — istrF in ™orsoD   ripristin— sD prossF istrF
       exc    4 d ‘a 3 exca“                              un— „w divers— per ™i—s™un a
      exca          T
              D@a  >A d                                 —
                                                        v —l ™—r—ttere osserv—to oggetto
                          T
                ‘a 3 S@a4A c d                                       se a prep—r— il s—lto
                    COPIA CERCA                                            ™ome per INT
                    s4                        prep—r— ™—n™ell—zione indirizzo prim— di M
                    S@Ta 5A CANCELLA
                    D@Ta4A jY
                 b 3 S@Ta4A D@Ta jA“                                               non s—lt—re
      CONCLUDI       D@Ta £A 5 S@Ta £A 5 CANCELLA

1.3.6 Esercizi
                                    —     e
  IF „wƒ ™he „ƒEsEde™ide l— propriet X x  p—riF
  PF „wƒ ™he „ƒEsE™—l™ol— l9—ddizioneF
  QF „wƒ ™he „ƒEsEde™ide l— rel—zioneX x a yF
  RF „wƒ ™he „ƒEsEde™ide l— propriet X AA gur— in X P fA; : : : ; Z gF
                                    —
  SF „wƒ ™he „ƒEsEde™ide l— propriet X A; B o C gur— in X P fA; : : : ; Z gF
                                    —
  TF „wƒ ™he „ƒEsEde™ide l— propriet X ogni tre lettere di X P fA; B g ™9 —lmeno un— AF
                                    —                                     e
  UF „wƒ ™he „ƒEsEde™ide l— propriet X X P fA; B; C g  un palindromo pariD ossi— un—
                                       —                     e
     string— di lunghezz— p—riD ™he risult— ugu—le se lett— d— sinistr— — destr—D o d— destr— —
     sinistr— @per esempio feeggeefAF
  VF „wƒ ™he „ƒEsE™—l™ol— l— moltipli™—zioneF
  WF „wƒ ™he „ƒEsE™—l™ol— l— sottr—zione ™hius—F
 IHF „wƒ ™he „ƒEsEde™ide l— propriet X le p—rentesi sono ™orrett—mente —nnid—te in X
                                    —                                                            P
     fA; B; @; AgF
                                             PS
1.3.7 Conclusione
gonveni—mo di dire ™he il lingu—ggio v  non meno potente del lingu—ggio vI e di s™rivere
                                         e
v " vI se @nozione intuitiv—A tutto ™i ™he si pu fare in v pu essere f—tto in vID — meno di
                                      o          o             o
™onvenzioni inessenzi—li sul form—to di d—ti e risult—tiY ™onveni—mo inoltre di dire ™he v ed
vI sono equivalenti se si h— si— v " vI ™he vI " vF sn quest— sezione —˜˜i—mo dimostr—to i
risult—ti seguenti
                                   „wƒ     "    „w                                          @IFIA
      „wƒ ™on —lf—˜eto qu—lsi—si           "    „wƒ —lf—˜eto ˜in—rio                        @IFPA
                           „w              "    RHH                                         @IFQA
                        U RM Q             "    „wƒ                                         @IFRA
€o™h —vev—mo visto in pre™edenz— ™he si h— RHH " U RM Q " U RM QD possi—mo ™on™ludere
      e
™he tutti questi lingu—ggi sono equiv—lentiF
                                                                   o
xe segue in p—rti™ol—re un— v—ri—nte dei teoremi di t—™opini e di fhmD se™ondo ™ui ogni proE
             o
gr—mm— pu essere s™ritto in form— struttur—t— @ossi— ™ostruitoD — p—rtire d— —l™une istruzioni
element—riD medi—nte ™omposizioni in sequenz—D iter—zioni di tipo while e dir—m—zioni di tipo
if-then-else AF T
e dierenz— degli —ltri risult—ti di tipo v " vI —˜˜i—mo ottenuto l9in™lusione @IFRA medi—nte
l— ™ostruzione di un interprete F
v9elemento universale di un d—to lingu—ggio v  un progr—mm— ™heD per un9entr—t— ™ostituit—
                                                 e
d— un qu—lsi—si progr—mm— P P v e d— un9entr—t— qu—lsi—si per P D d in us™it— l— @eventu—leA
                                                                     —
us™it— di P per quell9entr—t—F v9—trri˜uto ’univers—le4 signi™— ™heD — dierenz— d—gli —ltri
progr—mmiD ™he sono s™ritti per f—re una singola cosa @l— somm—D l— moltipli™—zioneD et™FAD
           o
questo pu fare tutto F
e˜˜i—mo ™ostruito un— „wƒ UA nell9—lf—˜eto A ™he interpret— le „wƒ nell9—lf—˜eto BF ƒi™E
™omeD in sn ˜—se — @IFPA esiste un— „wƒ UB nell9—lf—˜eto B ™he si ™omport— ™ome UA e ™heD
pert—ntoD  un— macchina universale per le „wƒ in BF
           e
ƒi— d— un punto di vist— —str—ttoD si— in termini re—lizz—tiviD si—D inneD sul pi—no stori™o
                                               o
l— denizione di un— m—™™hin— univers—le pu essere vist— ™ome strett—mente ™olleg—t— —ll—
progett—zione di un ™omputerF

1.4 Conclusione del Capitolo
isistono modelli di ™omput—zione e lingu—ggi di progr—mm—zione equiv—lenti tr— loroD ed
equiv—lentiD rispettiv—mente —gli el—˜or—tori elettroni™i ed —i lingu—ggi —d —lto livello @€—s™—lD
gD et™FAF uest— equiv—lenz— ™omport— ™he in ™i—s™un lingu—ggio ™i sono degli elementi
                    —
univers—li @in re—lt innitiA e degli interpreti per tutti gli —ltriF
  6 enziD                                          e
            si dimostr— ™he l— stess— if-then-else  superu—F

                                                       PT
v— ™l—sse g delle funzioni ™—l™ol—te d— uno qu—lunque di questi lingu—ggi  dunque machine
                                                                             e
independent D ossi— indipendente d—l p—rti™ol—re lingu—ggio e d—l p—rti™ol—re modello di ™omE
put—zioneF
v9esistenz— degli interpreti ™omport— ™he g ™ontiene tutti gli elementi di ˜—se dei v—ri linE
          e
gu—ggi ed  ™hius— rispetto — tutti i loro ™ostrutti @™omposizioniD ri™orsioniD et™FAF
ygni funzione per l— qu—le si— disponi˜ile un —lgoritmo —pp—rtiene U — g F
sn ˜—se — questi —rgomenti  gener—lmente —™™ett—t— l— Tesi di Church se™ondo ™ui g 
                              e                                                             e
un9—degu—t— espli™—zione m—tem—ti™— dell9ide— intuitiv— di funzione calcolabile F €ert—nto l—
dimostr—zione @per esempio per —ssurdoA ™he un— d—t— funzione non —pp—rtiene — g dovre˜˜e
™onvin™ere ™he ess— non  calcolabile F xon nel senso ™he non l— s—ppi—mo ™—l™ol—re adesso D
                          e
                            —
m— nel senso ™he non potr essere ™—l™ol—t— mai @senz— f—re ri™orso — metodi —ttu—lmente
in™on™epi˜iliAF




  7 d—to   di f—tto empiri™oF

                                             PU
Capitolo 2
                                     a
Teoremi di punto sso e indecidibilit
2.1 Notazioni
Premessa 60 @IA pissi—mo un— qu—lunque ™l—sse g a @€ ; hA ™ostituit— d— un— ™l—sse € di
programmi e d— un— ™l—sse h di dati per quei progr—mmiD ™he si— un— caratterizzazione delle
                                         
funzioni calcolabili D ossi— ™he si— @™os ™ome spieg—to — lezioneA equivalente —d un— delle ™l—ssi
studi—te nelle tre sezioni pre™edenti @RHH D „w o „wƒ D …‚wQ o …‚wQAD e quindi — ™i—s™un—
di esseF xel senso ™he tutto ™i ™he si pu fare in un—D si pu f—re in g D ed in tutte le —ltre
                                   o          o                   o
@—str—zion f—tt— d— dett—gli sul formato di d—ti e progr—mmiD ™he possi—mo ™onsider—reD —
questo punto del nostro studioD ™ome inessenzi—liAF
@PA ƒi— d—t—D in p—rti™ol—re e un— volt— per tutteD un— codica dei progr—mmi di g nei suoi
d—ti @ossi— un— iniezione 
 X € U3 h ™ostruit—D insieme ™on l— su— invers—D medi—nte elementi
di € stess—AF
@QA xel seguito di quest— sezioneD g rim—ne generi™— ed inv—ri—t—D —n™he se in qu—l™he ™—soD
                u                                       —
per rendere pi denito il nostro dis™orsoD ™i potr ™—pit—re di eettu—re d—pprim— delle
™ostruzioni in un— ™l—sse p—rti™ol—reD e poi di —erm—re ™he quelle ™ostruzioni sono possi˜ili
in ogni g D st—nte l9equiv—lenz— ipotizz—t— @si ved— per esempio l— dimostr—zione del teorem—
del p—r—metro ™he viene eettu—t— nel lingu—ggio RHH D e poi estes— —ll— generi™— g A pres™elt—
in virt dell— su— equiv—lenz— — RHH AF ve seguenti ™onvenzioni sono di uso univers—leF
       u
Notazione 61 @IA sn line— di prin™ipioD u; : : : ; z; xI ; : : : sono elementi di h @per esempio
numeri se g  RHH o …‚wQY n—stri se —˜˜i—mo s™elto „w oppure „wƒ AY in pr—ti™— e per
                e
            —
sempli™itD li tr—tteremo qu—si sempre ™ome se fossero numeri n—tur—liF
P; Q; : : : sono progr—mmi di € F
@PA ; ; : : : sono funzioni p—rzi—li ™—l™ol—te d— progr—mmi in € D mentre f; g; : : : sono funE
zioni tot—li pure ™—l™ol—te d— progr—mmi in € F
           e                                                        —                e
@QA Px  il progr—mm— ™odi™—to d— x @si h— dunque l9identit 
Px a xAF x  l— funzione
                                                o
™—l™ol—t— d— Px F ƒi osservi ™heD si™™ome si pu ™—l™ol—re in molti modi un— stess— funzioneD si

                                                PV
pu —vere x a y ™on Px Ta Py F ƒ™rivi—mo fx inve™e di x se s—ppi—mo ™he quest—  tot—leF
   o                                                                              e
@RA P @xA 9 Q@yA signi™— ™he se P e Q ™onvergono per gli input indi™—tiD —llor— i loro
output sono ugu—liF x @yA 9 z @uA signi™— ™he si h— Px @yA 9 Pz @uAF
Esempio 62 v9equiv—lenz— tr— g e le „wƒ in B ™omport— ™he in € ™9 un elemento univers—le
                                                                   e
U N ™he ™—l™ol— un— funzione univers—le un t—le ™he per qu—l™he u si h—

       un@x; y A 9 u @x; y A 9 Px @y A:


2.2 Aritmetizzazione di R"
Notazione 63 ; I ; P ™ome in ƒezF IFIFTD m— in p—rzi—le diormit d— xotF QH
                                                                   —
 £ @x; y; z A a hx; y; z i a  @x;  @y; z AAY   @hxI ; xP ; xQ iAi a xi Y hx; yi a hx; y; HiY hxi a hx; H; Hi:
snoltreD ™ome gi in ƒezF ??D xi st— per @xAi F
                —
Denizione 64 …n— ™odi™— 
 nei n—tur—li dei prp  denit— @induttiv—menteA d—
                                                 e
             letter—              P S I II IP                   H  HH H  HH
                                                               CI CI CP CP R M                Q
             r—ppresent—zione H I P Q R                        S    T       U   V     W IH II
           E           H
                     CI @G; H A          HH
                                      CI @G; H A                     C H @F; G; H A           Qn
                                                                        P
         
 @E A hS; 
 @GA; 
 @H Ai hT; 
 @GA; 
 @H Ai          hU; h
 @F A; 
 @GA; 
 @H Aii hII; ni
           E           R@GA              M @GA                          H
                                                                      CP @F; G; H A
         
 @E A      hW; 
 @GAi      hIH; h
 @GAii             hV; h
 @F A; 
 @GA; 
 @H Aii
2.3 Teorema del parametro
                                    o                                            e
sl risult—to ™he or— presenti—mo pu —pp—rire — prim— vist— insens—toF sn genere  preferi˜ile
™he un progr—mm— si— m—ssim—mente parametrico D ossi— ™he esso dipend— il meno possi˜ile
d—i d—tiF €er esempioD nessuno si sognere˜˜e di ritenere interess—nte un metodo ™he ™onsent—
di p—ss—re d—l progr—mm— Px ™he eettu— l— somm— dei numeri y e z —d un— ™l—sse di
progr—mmi Ps@x;yA @uno per ogni v—lore di yA ™he si limiti — somm—re y —l suo uni™o input z
@onde per esempio ottenere Ps@x;SA @z A a S C z per ogni z AF ippureF F F
Teorema 65 (del parametro; anche: teorema s-m-n) isiste un— funzione s t—le ™he per ogni
x @y; z A si h—

       s@x;yA @z A 9 x @y; z A:




                                                          PW
Dimostrazione. sn RHH le ™ose sono molto pi f—™ili ™he in —ltre ™—r—tterizz—zioni delle funzioni
                                           u
ri™orsiveF f—st— inf—tti porre
      s@x; y A a  £ @U;  £ @x;  £ @II; y A; PAA:
ytteni—mo
       Ps@x;yA                                         H
                       a P£ @U;£ @x;£ @II;yA;PAA a CP @Px ; y; shA hefF TR
       s@x;yA @z A    9 x@y@zA; ID@zAA 9 x@y; zA                                  H
                                                                      henizione di CP D di y e di sh:

                               ~e
Notazione 66 s@xA adf s@x; xAY S  il prp ™he ™—l™ol— sD e   il suo ™odi™eF ƒi™™h si h—
             ~                                        ~      e                     e
       @xA @z A 9 s@xA @z A 9 x @x; z A:
                      ~


2.4 Forma debole del teorema della ricorsione
xell— dimostr—zione del teorem— dell— ri™orsione @„‚A in form— de˜ole @—n™he noto ™ome
form— di uleene del „‚A non si f— uso dell— funzione univers—leF €ert—nto @vedi l— prossim—
ƒezF PFSAD esso v—le @dunque ed —n™heA per ogni ™l—sse di funzioni tot—li non troppo piccola
@™omeD per esempioD ™erte sottoE™l—ssi proprie delle funzioni ™—l™ol—˜ili in tempo line—reAF
Teorema 67 €er ogni funzione x @y; z A esiste un punto sso n t—le ™he
      n @z A 9 x @n; z A:
                                                         ~ ~
Dimostrazione. en™or— in RHH D poni—mo @vedi xotF TT per sD S e A
      t@xA a hV; hx; hT; ; Qii; Ri:
e˜˜i—mo
              Pt@xA       HH       HH ~
                       a CP @Px ; CI @S; UI A; UP A                                                  @PFIA
       t@xA @y; z A   9 x@~@yA; zA:
                             s
€oni—mo or—
            ~
      n adf s@t@xAA:                                                                                 @PFPA
ytteni—mo
      n @z A    9 s~@t@xAA@zA                                      per l— @PFPA qui sopr—
                 9 t@xA@t@xA; zA                                    teorem— del p—r—metro
                 9 x@~@t@xAA; zA
                        s                                            per l— @PFIAF
                 9 x@n; zA                                          —n™or— per l— @PFPA:


                                                      QH
Corollario 68 isistono progr—mmi i qu—li d—nno in us™it— il loro proprio ™odi™eD ossi— t—li
™he Pn @z A a nF
Dimostrazione. ƒi —ppli™hi il teorem— —d un qu—lsi—si progr—mm— t—le ™he Px @y; z A a yF €er
esempioD in RHH —l prp UI F
                                   —
Commento. uesto ™oroll—rio d luogo — ™onsider—zioni di ™—r—ttere spe™ul—tivo sulle m—™E
                                              e
™hine ™he riproducono s stesse F snoltre  il fond—mento teori™o si— di fenomeni neg—tivi
                          e
@virus inform—ti™iA si— positivi @booting nei sistemi oper—tiviAF h— questo punto di vist—   e
                                                                 o               u
utile osserv—re ™he un progr—mm— ™he riprodu™e se stesso pu essere ˜en pi ™ompli™—to di
                —                                                    o
UP X nell— re—lt —ppli™—tiv— di un ™—l™ol—tore industri—leD esso pu d—pprim— ™ompiere v—rie
—zioni sul ™ontenuto di registriD dis™hiD et™FD per poi riprodursi solo in un se™ondo momentoF
ƒul fenomeno n 9 f @nA D osservi—mo inne ™he n  noto — Pf @nA @se n  un— p—rte del suo
                                                       e                     e
                                                                                      e
™odi™e f @nAD vuol dire ™he n gur— d— qu—l™he p—rte nell— su— ™ostruzioneAD mentre  costruito
                          e
d— Pn D ™he sa solo ™om9 f—tt— f D m— sa anche ™ome ™ostruire il punto sso di f F uindi l—
                            e                     u
dierenz— tr— Pn e Pf @nA  ™he il primo f— in pi del se™ondo il l—voro di ™ostruire nF

2.5 Le classi totali non ammettono funzioni universali
Teorema 69 xessun— ™l—sse di funzioni tot—li ™hius— rispetto —ll— ™omposizione ed —l su™E
™essore —mmette un— funzione univers—leF
Dimostrazione. ed —˜surdumF ƒi— d—t— un— ™l—sse g di funzioni tot—li ™on un— funzione
univers—le fu D si™™h si —˜˜i— fu @x; yA a fx @yAF €er l9ipotesi f—tt— su g possi—mo p—ss—re d—
                     e
qu—lunque funzione fx @y; z A in ess— ™—l™ol—˜ile —ll— funzione fx£ @z A a I C h@z; z AF w— —llor—D
s™egliendo u ™ome x ed x£ ™ome z otteni—mo
      fu£ @u£ A a I C fu @u£ ; u£ A @per denizione di u£ A a I C fu£ @u£ A @per denizione di fu A:
                                                             e
Commento. @IA hunque —mmettere funzioni p—rzi—li  ne™ess—rio per l9esistenz— dei ™omE
putersF
@PA v9—ssurdo ™—de se si h— — ™he f—re ™on funzioni p—rzi—li e si deve dunque us—re il segno 9
in luogo dell9ugu—gli—nz—F e˜˜i—mo
       u£ @u£ A 9 I C u @u£ ; u£ A 9 I C u£ @u£ A @per denizione di u£ e di uA
                  9 P C u@u£; u£A 9 P C u£ @u£A
                 9   :::
                 9   n C u£ @u£ A
                 9   :::
                  e
hivergenz—D per™h si ™ontinu— — somm—re I e —d —spett—re ™he si vuoti un— pil— strett—mente
™res™ente di ™hi—m—te ri™orsiveF ƒi h— dunque eettiv—mente u£ @u£ A 9 I C u @u£ ; u£ AD m—
          e
solo per™h entr—m˜e le funzioni divergonoF


                                                QI
2.6 Forma forte del teorema della ricorsione
xell— dimostr—zione del „‚ in form— forte @—n™heX „‚ nell— form— di ‚ogersA l— funzione
univers—le h— un ruolo essenzi—leF isso v—le dunque solo per ™l—ssi di funzioni p—rzi—liF
Teorema 70 €er ogni funzione ™—l™ol—˜ile tot—le f @xA esiste un punto sso n t—le ™he
      f @nA   9 n:
Dimostrazione. €oi™h g  ™hius— rispetto — qu—lsi—si ™omposizione esister w t—le ™he @vedi
                          e e                                                 —
isF TP per un e per UN A
      w @x; z A 9 un @f @xA; z A:                                                     @PFIA
                                                   HH     HH
€er esempio in RHH se F ™—l™ol— f si —vr w a 
CP @U N; CI @F; UI A; UP AF €rendi—mo ™ome n
                                         —
il punto sso di w fornito d—ll— form— de˜ole del „‚F ytteni—mo
       n @z A 9 w @n; z A                               form— de˜ole di „‚
                 9 un @f @nA; zA                          equ—zione @PFIA
                 9 f @nA@zA                              un @y; z A 9 y @z A:


2.7 Come denire nuove forme di ricorsione
ysservi—mo ™he il f—ttori—le non  ˜—n—le in RHH F snf—tti in un— denizione ri™orsiv— del tipo
                                    e
      (
         peg„@HA          a I
         peg„@y C IA a w…v„@y C I; peg„@yAA
l9inv—ri—nte dipende espli™it—mente d—ll— v—ri—˜ile prin™ip—le yY inve™e lo s™hem— R impone
™he ess— dipend— solo d—l p—r—metro x @e d—l v—lore pre™edente dell— funzioneAF v— form—
                 e                                         e
forte del „‚  import—nte per molte r—gioniF v— prim—  ™he ™onsente l— denizione di nuovi
s™hemi di ri™orsioneF ƒi vogli— —d esempio us—re in RHH il nuovo s™hem— R£ @m; GA denito d—
      ( £
         R @m; GA@HA         a m
         R  £ @m; GA@y C IA a G@y C I; R£ @m; GA@y AA:                                     @PFIA
€er non perder tempo in dett—gli di ™odi™—D supponi—mo denit— l— funzione @x; y; z A t—le
™he P@x;y;zA a if Px then Py else Pz F €osto @le ™ost—nti u e v ™odi™hino i prp ƒq e GA
      f @xA a @u; hII; mi; hU; hv; ID; hS; x; HiiiA;
                  e
otteni—mo @g  l— funzione ™—l™ol—t— d— GA
                                             H        H
            Pf @xA a if SG then m else CP @G; I; CI @Px ; P AA
        f @xA @y A 9 if y a H then m else g @y; x @y   IAA.
                                                                                           @PFPA
                                          e
u—nto ri™hiesto d—ll9equ—zione @PFIA  or— fornito d—l punto sso n di f @xA D —vendo noi
ottenuto
      n @y A a if y a H then m else g @y; n @y   IAA:

                                              QP
                 a
2.8 Indecidibilit (teorema di Rice)
                                                      e
…n gr—n numero di risult—ti neg—tivi sull9inform—ti™—  ri—ssunto d—l prossimo teorem—F
Denizione 71 …n— ™l—sse e  decidibile se esiste un— funzione ri™orsiv— tot—le f t—le ™he
                                e
@
  un— iniezione di e nei d—ti dell— ™—r—tterizz—zione g pres™elt—A
   e
                (
                    H qu—lor— 
  I @yA P e
     f @y A a
                    I qu—lor— 
  I @yA TP e:
           e                     e
…n— ™l—sse  indecidibile se non  de™idi˜ile in un— ™—r—tterizz—zione delle funzioni ri™orsive
@e dunque in tutteAF
Teorema 72 „utte le sottoE™l—ssi proprie non vuote delle funzioni ri™orsive sono inde™idi˜iliF
Dimostrazione.        emmetti—mo @—d —˜surdumA ™he per l— ™l—sse di funzioni e si —˜˜i—
     f @y A a H     se y P eY f @yA a I se y TP e:
€oi™h e non  vuot— e non es—uris™e le funzioni ri™orsiveD esistono h; k t—li ™he
     e       e
     h   P eY         k   TP e:                                                         @PFIA
€oni—mo @per ™omposizione ed if-then-else — p—rtire d—i progr—mmi per f D h; kA
     g @xA a k      se x P eY g@xA a h se x TP e:                                       @PFPA
ƒi— n a g@nA il punto sso di g@xA F ytteni—mo l— ™ontr—ddizione seguente
      n  Pe A          g @nA a k                              equ—zione @PFPA
              A         n a k                                g@nA a n
              A         n TP e                                equ—zione @PFIA
      n TP e A         g @nA a h                              equ—zione @PFPA
              A         n a h                                g@nA a n
              A         n P e                                 equ—zione @PFIA:

Corollario 73 ƒono —d esempio inde™idi˜ili le ™l—ssiX delle funzioni tot—liY delle funzioni
denite per un d—to insieme di input @per esempioD fx j@WyA@x @HA a yAgAY delle funzioni ™he
h—nno un d—to v—lore nel loro ™odominioY delle funzioni ™ost—ntiF ƒono perno inde™idi˜ili
™l—ssi apparentemente nite ™ome fI; PgF
                                                  —e
Commento. ƒi f—™™i— —ttenzione ™he l9inde™idi˜ilit  un fenomeno ™he rigu—rd— i ™odi™iD
non gli oggetti ™he essi r—ppresent—noF
Esercizio 74 €er™h ’—pp—rentemente4 nell9—sserto del goroll—rioc
                  e

                                                QQ
9.9 Programma, a.a. 2006-7
 IF progr—mmi ri™orsivi p—rzi—liY
 PF m—™™hin— — registri …‚wQ e simul—zione dei progr—mmi ri™orsivi p—rzi—liY
 QF m—™™hine di „uring struttur—teY interprete per …‚wQY m—™™hin— univers—leY
                                         —
 RF teoremi di punto sso e inde™idi˜ilitF




                                              QR

								
To top