Skip to main content
IBM Quantum Platform

Formalismo matematico

Quando si deve studiare il rumore di Pauli per un insieme di porte di Clifford, una tecnica di analisi comunemente utilizzata consiste nel tracciare come i singoli operatori di Pauli vengono trasformati attraverso una sequenza di applicazioni delle porte (nell’ipotesi che le porte siano di Clifford e che il rumore sia un canale di Pauli, un singolo operatore di Pauli verrà sempre mappato su un altro operatore di Pauli, a parte un fattore scalare che è una funzione del rumore). Ovviamente, l’evoluzione di qualsiasi stato in una sequenza di questo tipo può essere rappresentata da una combinazione lineare di tali traiettorie; tuttavia, nell’ipotesi che lo stato venga sempre preparato in uno stato proprio di Pauli e che i risultati vengano sempre misurati ed elaborati successivamente per calcolare il valore atteso di un operatore di Pauli, la relazione tra il valore atteso e i parametri del modello di rumore dipenderà sempre e solo da una singola traiettoria di questo tipo. Ciò deriva dal semplice fatto che lo stato iniziale è una combinazione lineare di operatori di Pauli, che ogni gate e ogni modello di rumore mappa gli operatori di Pauli su altri operatori di Pauli preservandone l’ortogonalità, e che il valore atteso finale “seleziona” solo uno degli operatori di Pauli nella decomposizione finale prima della misurazione.

Questo tipo di ragionamento ricorre in numerosi filoni di ricerca paralleli nell’ambito del noise learning, tra cui la letteratura sull’apprendimento basato sui set di porte di Pauli [ 1, 2 ], quella sull’ACES [ 3 ] e quella sui benchmark ciclici [ 4 ]. Questo ragionamento è stato ulteriormente generalizzato in [ 5 ] per includere le porte Clifford-MCM (una porta Clifford seguita da una misurazione proiettiva a metà circuito). Questo pacchetto si basa in larga misura su [ 1, 5 ]. Sebbene non venga esplicitamente menzionato, adottiamo il formalismo del Pattern Transfer Graph (PTG) per descrivere l’evoluzione degli operatori di Pauli attraverso i circuiti di apprendimento, fornendo una rappresentazione diretta dei percorsi attraverso il grafo.

Di seguito viene presentata una rassegna di alcuni concetti matematici fondamentali tratti dalla letteratura. Il suo scopo principale è quello di standardizzare la notazione e di fungere da riferimento concettuale per il resto del pacchetto.


1. Contesto

1.1 Notazione

Per l’ K∈NK \in \mathbb{N}, si abbia che [K]={0,1,…,K−1}[K] = \{0, 1, \dots, K - 1\}. Per un insieme finito S⊂NS \subset \mathbb{N} di indici di qubit, si indichi con PS\mathcal{P}^S l’insieme degli operatori di Pauli non sfasati che agiscono su tali qubit. Si noti che consideriamo gli elementi di PS\mathcal{P}^S come funzioni che mappano S→{I,X,Y,Z}S \rightarrow \{I, X, Y, Z\}, in modo tale che, per ogni P∈PSP \in \mathcal{P}^S e T⊆ST \subseteq S, P∣TP|_T indichi la restrizione di PP al sottoinsieme di qubit TT. In questo stesso spirito, per insiemi disgiunti S,TS, T, e P∈PSP \in \mathcal{P}^S e Q∈PTQ \in \mathcal{P}^T, P⊗QP \otimes Q indica l’elemento di PS∪T\mathcal{P}^{S \cup T} tale che P⊗Q∣S=PP \otimes Q |_S = P e P⊗Q∣T=QP \otimes Q |_T = Q. Questa notazione è utile per evitare di dover gestire esplicitamente gli ordinamenti dei sottosistemi e per facilitare la descrizione delle restrizioni.

Per insiemi finiti M⊂NM \subset \mathbb{N}, indichiamo con Z2M\mathbb{Z}_2^M l’insieme delle stringhe di bit i cui elementi sono indicizzati da MM. Analogamente a quanto fatto in precedenza, consideriamo gli elementi come funzioni che mappano M→Z2M \rightarrow \mathbb{Z}_2, in modo da poter descrivere facilmente le sottostringhe in termini di restrizioni dell’insieme degli indici.

Infine, per una matrice XX, utilizziamo ∣X⟩ ⁣⟩| X \rangle\!\rangle per indicarne la vettorizzazione. Considerato l'uso limitato che facciamo di questa notazione, non è in realtà necessario scegliere una convenzione di vettorizzazione specifica. Per una stringa di bit classica mm, utilizziamo la notazione abbreviata ∣m⟩ ⁣⟩=∣∣m⟩⟨m∣⟩ ⁣⟩| m \rangle\!\rangle = | | m \rangle\langle m | \rangle\!\rangle.

1.2 Strumenti quantistici

Un'operazione quantistica che produce bit classici m∈Z2Mm \in \mathbb{Z}_2^M (ad esempio, il risultato di una misurazione) viene generalmente modellata come una mappa lineare della forma:

ρ↦∑m∈Z2MEm(ρ)⊗∣m⟩⟨m∣, \rho \mapsto \sum_{m \in \mathbb{Z}_2^M} \mathcal{E}_m(\rho) \otimes | m \rangle\langle m |,

dove l'insieme {Em:m∈Z2M}\{\mathcal{E}_m: m \in \mathbb{Z}_2^M\} è completamente positivo e ∑mEm\sum_m \mathcal{E}_m preserva la traccia. Un insieme di mappe completamente positive {Em}\{\mathcal{E}_m\} che soddisfano tali proprietà è detto strumento quantistico. Un gate unitario è un caso particolare di strumento costituito da un unico elemento che rappresenta un'operazione unitaria.


2. Porte Clifford-MCM con reset rumorose

Il formalismo utilizzato in questo pacchetto presuppone che ogni porta dell'insieme di porte da caratterizzare sia costituita dalla seguente sequenza di operazioni su qubit KK i:

  1. Un'operazione di Clifford su tutti i qubit.
  2. Una misurazione proiettiva a metà circuito lungo un ZZ e su un sottoinsieme di qubit M⊆[K]M \subseteq [K].
  3. Un reset a metà circuito allo stato di base dell’ ZZ e su un sottoinsieme di qubit R⊆[K]R \subseteq [K].

Si tratta di una classe generale di operazioni che comprende i gate di Clifford unitari, la misurazione, la preparazione dello stato e qualsiasi combinazione di queste operazioni. Si noti che si ipotizza che la misurazione e il reset avvengano sempre lungo l’asse ZZ per ciascun qubit. Sebbene ciò non sia strettamente necessario, si tratta di una caratteristica comune a molte modalità di calcolo quantistico e consente di semplificare le rappresentazioni e le analisi.

Come illustrato in [ 5, 6 ] per il caso senza reset, se si applica una specifica strategia di rotazione a un’istanza soggetta a rumore di tale gate, l’azione dell’operazione risultante può essere modellata matematicamente come uno strumento di Pauli uniforme. Vale a dire, nella notazione degli strumenti quantistici, Em=UmG\mathcal{E}_m = \mathcal{U}_mG, dove GG è l'unitario di Clifford, e:

Um=∑a,b∈Z2MΛa,b⊗∣m+a⟩ ⁣⟩⟨ ⁣⟨m+b∣, \mathcal{U}_m = \sum_{a,b \in \mathbb{Z}_2^M} \Lambda_{a,b} \otimes | m + a \rangle\!\rangle\langle\!\langle m + b |,

dove ogni Λa,b\Lambda_{a,b} è un canale di Pauli subnormalizzato sui qubit non misurati N=[K]∖MN = [K] \setminus M. Il fatto che si tratti di uno strumento quantistico implica che anche ∑a,bΛa,b\sum_{a,b} \Lambda_{a,b} sia a traccia conservata. Alcune note:

  • Il rumore iniziale non distorto è modellato in modo da includere sia errori “quantistici” che “classici”: operazioni errate sui registri quantistici, nonché errori nella segnalazione dei valori di misura.
  • La mappa del rumore Λa,b\Lambda_{a,b} è indipendente dal risultato della misurazione mm.

In altre parole, un singolo termine nella somma sopra riportata rappresenta l’osservazione di un risultato di misura pari a mm quando lo stato misurato era ∣m+b⟩| m + b \rangle (una classificazione errata se b≠0b \neq 0 ), e quando lo stato in uscita sul registro di misura è ∣m+a⟩| m + a \rangle (lo stato “errato” se a≠0a \neq 0 ). La mappa Λa,b\Lambda_{a,b} codifica simultaneamente l’azione sui qubit non misurati (condizionata dal comportamento della misura) e la probabilità dello specifico comportamento della misura (attraverso la normalizzazione).

Si noti che in questa sede non ci occupiamo dei dettagli della strategia di rotazione: è sufficiente che esista una strategia di questo tipo in grado di portare il canale nella forma sopra indicata. Si noti che esistono strategie di “twirling” più “raffinate” in grado di limitare ulteriormente la forma dei canali di Pauli [ 7 ]; tuttavia, consideriamo la forma sopra indicata come la rappresentazione matematica più generale tra quelle prese in esame.

Nel Lemma 1 di [ 5 ] si dimostra che Em=UmG\mathcal{E}_m = \mathcal{U}_mG può essere riscritto come:

Em=122∣M∣+∣N∣∑x,y∈Z2M,Q∈PN(−1)m⋅(x+y)λx,yQ∣Q⊗Zy⟩ ⁣⟩⟨ ⁣⟨G†(Q⊗Zx)∣. \mathcal{E}_m = \frac{1}{2^{2|M| + |N|}}\sum_{x, y \in \mathbb{Z}_2^M, Q \in \mathcal{P}^N} (-1)^{m \cdot (x + y)} \lambda^Q_{x, y}| Q \otimes Z^y \rangle\!\rangle\langle\!\langle G^\dagger(Q \otimes Z^x) |.

per alcuni numeri reali λx,yQ\lambda_{x,y}^Q, denominati “fidelità ” dello strumento.

Aggiungere il pulsante di reset a questa immagine è relativamente semplice. Un'operazione di reset soggetta a rumore sui qubit R⊂[K]R \subset [K] può essere modellata secondo la seguente scomposizione:

12∣R∣∑r∈Z2Rλr∣Zr⟩ ⁣⟩⟨ ⁣⟨IR∣. \frac{1}{2^{|R|}}\sum_{r \in \mathbb{Z}_2^{R}} \lambda_r | Z^r \rangle\!\rangle\langle\!\langle I_R |.

La formula sopra riportata si basa esplicitamente sul presupposto che il reset avvenga lungo l'asse ZZ per ciascun qubit. Il rumore durante il funzionamento è codificato nelle fedeltà di reset λr\lambda_r, che sono semplicemente indicizzate in base a sottoinsiemi di qubit.

È possibile ottenere un'analoga dell'equazione (1) che includa un'operazione di reset alla fine semplicemente combinandola con l'equazione (2). Questa espressione, dopo alcune semplificazioni, si riduce a:

122∣M∣+∣N∣∑x∈Z2M,y∈Z2M∪RQ∈PN∖R(−1)m⋅(x+y∣M)λx,yQ∣Q⊗Zy⟩ ⁣⟩⟨ ⁣⟨G†(Q⊗IN∩R⊗Zx)∣.\begin{split} \frac{1}{2^{2|M|+|N|}} \sum_{\substack{x \in \mathbb{Z}_2^M, y \in \mathbb{Z}_2^{M \cup R} \\ Q \in \mathcal{P}^{N\setminus R}}} (-1)^{m \cdot (x + y|_M)} \lambda^Q_{x,y} | Q \otimes Z^y \rangle\!\rangle\langle\!\langle G^\dagger(Q \otimes I_{N \cap R} \otimes Z^x) |. \end{split}

Questa scomposizione indica che il numero di fedeltà λx,yQ\lambda^Q_{x, y} è

4∣N∖R∣2∣M∣2∣M∪R∣=4K2∣M∣2−∣M∪R∣=4K2−∣R∖M∣.4^{|N \setminus R|} 2^{|M|}2^{|M \cup R|} = 4^{K}2^{|M|}2^{-|M \cup R|} = 4^K 2^{-|R \setminus M|}.

Si considerino i casi limite: (1) In assenza di misurazioni o di azzeramenti, M=R=∅M = R = \emptyset, e l’espressione fornisce 4K4^K, ovvero il numero di operatori di Pauli privi di fase su KK qubit. (2) Per M=∅M = \emptyset e R=[K]R=[K], si ottiene 2K2^K, che è il numero di sottoinsiemi di [K][K]. Infine, (3) per M=[K]M = [K] e R=∅R = \emptyset, si ottiene 4K4^K. Si noti che ciò può inizialmente sembrare sorprendente: nell’apprendimento standard, la misurazione e il reset sono tipicamente considerati come aventi lo stesso numero di fedeltà: 2K2^K. Tuttavia, in questo contesto il gate «all-measurement» non è inteso come una misurazione terminale, ma come un MCM, e in quanto tale sono incluse anche le fedeltà corrispondenti agli output non identici della misurazione (come y≠0y \neq 0 nell’equazione (3) ).

Infine, è importante sottolineare che qualsiasi strategia di rotazione che porti alla forma riportata nell’equazione (1) nel caso senza reset si applica ugualmente bene anche al caso non banale con reset, con una semplice modifica. Il potenziale problema è che una strategia di questo tipo potrebbe richiedere operazioni sui qubit misurati dopo la misurazione. Pertanto, se un qubit viene misurato e riportato allo stato iniziale, l'attuazione della strategia richiede apparentemente l'inserimento di operazioni all'interno del gate tra la misurazione e il ripristino. Tuttavia, data la natura del reset, tali operazioni non hanno alcun effetto e possono essere semplicemente omesse, ottenendo comunque la stessa struttura desiderata.


3. Formalismo dei percorsi

Come descritto nell’introduzione, tutti gli algoritmi di apprendimento per il rumore di tipo Pauli sui gate di Clifford si basano sul monitoraggio dell’evoluzione dei singoli Pauli all’interno di un circuito, acquisendo lungo il percorso i fattori di fedeltà del rumore. I valori attesi di un circuito composto da tali porte sono quindi semplicemente correlati ai prodotti delle fedeltà sottostanti delle singole porte e, in questo modo, è possibile dedurre i parametri del modello invertendo qualsiasi mappatura sparsa da parametro a fedeltà si stia ipotizzando.

In [ 1 ], nel contesto degli insiemi di porte unitarie, ciò viene formalizzato nel Pattern Transfer Graph (PTG): un grafo orientato che descrive tutti i possibili esperimenti costituiti da elementi dell’insieme di porte e da strati di porte di Clifford su un singolo qubit (che si suppone siano operazioni perfette, ovvero “libere”). Questo risultato è stato generalizzato in [ 5 ] per includere insiemi di porte con misurazioni a metà circuito. In entrambi i casi, ogni esperimento viene descritto seguendo il percorso di un singolo operatore di Pauli attraverso il circuito, partendo dal presupposto che in ciascun punto di misurazione venga calcolato un particolare osservabile. In questa sede non esaminiamo direttamente la costruzione dei grafi o dei percorsi; presentiamo tuttavia gli elementi necessari per giustificarli nell’ambito della nostra notazione, tenendo conto dei ripristini.

Sebbene il tracciamento di un singolo operatore di Pauli attraverso il circuito possa risultare intuitivo nel caso dell’insieme di porte unitarie, ciò non vale in modo altrettanto ovvio nel caso più generale del reset Clifford-MCM, a causa della natura non deterministica della misurazione. La seguente proposizione ripropone questo quadro anche nel caso più generale [ 5 ]:

Proposta n. 1

Per qualsiasi x∈Z2Mx \in \mathbb{Z}_2^M, y∈Z2M∪Ry \in \mathbb{Z}_2^{M \cup R} e Q∈PN∖RQ\in \mathcal{P}^{N \setminus R}, vale quanto segue:

⟨ ⁣⟨Q⊗Zy∣⊗⟨ ⁣⟨Zx+y∣M∣M(∑m∈Z2MEm⊗∣m⟩ ⁣⟩)=λx,yQ⟨ ⁣⟨G†(Q⊗IN∩R⊗Zx)∣ \langle\!\langle Q \otimes Z^y |\otimes \langle\!\langle Z^{x + y|_M} |_M \left(\sum_{m\in \mathbb{Z}_2^M} \mathcal{E}_m \otimes | m \rangle\!\rangle\right) = \lambda_{x,y}^Q\langle\!\langle G^\dagger(Q \otimes I_{N \cap R} \otimes Z^x) |

In altre parole, se calcoliamo il valore atteso Zx+y∣MZ^{x + y|_M} sull’uscita del registro classico generata dall’MCM, allora l’evoluzione secondo il “quadro di Heisenberg” di un osservabile attraverso il gate Clifford-MCM-reset mappa Q⊗Zy→Q⊗IN∩R⊗ZxQ \otimes Z^y \rightarrow Q \otimes I_{N \cap R} \otimes Z^x. Questo fatto da solo consente di recuperare un’analisi simile a quella del PTG al di là del caso dell’insieme di gate unitari: con una particolare post-elaborazione dei risultati di misura, anche i gate con misure e reset possono essere considerati come una mappatura deterministica da un operatore di Pauli a un altro.

Prima di dimostrarlo, riscriviamo l'equazione (3) in una forma più intuitiva. Si noti che, per l' x,y∈Z2Mx, y \in \mathbb{Z}_2^M o, vale che l' Zx+y=∑m∈Z2M(−1)m⋅(x+y)∣m⟩⟨m∣Z^{x+y} = \sum_{m \in \mathbb{Z}_2^M} (-1)^{m \cdot (x + y)}| m \rangle\langle m | e e, pertanto (nella notazione degli operatori superiori), si ha:

∑m∈Z2MEm⊗∣m⟩ ⁣⟩M=122∣M∣+∣N∣∑x∈Z2M,y∈Z2M∪RQ∈PN∖Rλx,yQ∣Q⊗Zy⟩ ⁣⟩⟨ ⁣⟨G†(Q⊗IN∩R⊗Zx)∣⊗∣Zx+y∣M⟩ ⁣⟩M,\begin{split} \begin{aligned} \sum_{m \in \mathbb{Z}_2^M} \mathcal{E}_m \otimes | m \rangle\!\rangle_M = \frac{1}{2^{2|M|+|N|}}\sum_{\substack{x \in \mathbb{Z}_2^M, y \in \mathbb{Z}_2^{M \cup R} \\ Q \in \mathcal{P}^{N\setminus R}}} \lambda^Q_{x,y} | Q \otimes Z^y \rangle\!\rangle \langle\!\langle G^\dagger(Q \otimes I_{N \cap R} \otimes Z^x) | \otimes | Z^{x + y|_M} \rangle\!\rangle_M, \end{aligned} \end{split}

dove abbiamo applicato l’equazione (3) e raggruppato i termini; utilizziamo l’indice MM per indicare il registro dei risultati delle misurazioni classiche, che trattiamo sopra con una notazione simile a quella dei registri quantistici.

Dimostrazione. Si sostiene che:

⟨ ⁣⟨Q⊗Zy∣⊗⟨ ⁣⟨Zx+y∣M∣(∑m∈Z2MEm⊗∣m⟩ ⁣⟩)=⟨ ⁣⟨Q⊗Zy∣⊗⟨ ⁣⟨Zx+y∣M∣(122∣M∣+∣N∣∑a∈Z2M,b∈Z2M∪RP∈PN∖Rλa,bP∣P⊗Zb⟩ ⁣⟩⟨ ⁣⟨G†(P⊗IN∩R⊗Za)∣⊗∣Za+b∣M⟩ ⁣⟩)=122∣M∣+∣N∣∑a∈Z2M,b∈Z2M∪RP∈PN∖Rλa,bP⟨Q⊗Zy,P⊗Zb⟩⏟2∣M∣+∣N∣δP,Qδy,b⟨Zx+y∣M,Za+b∣M⟩⏟2∣M∣δx+y∣M,a+b∣M⟨ ⁣⟨G†(P⊗IN∩R⊗Za)∣\begin{split} \begin{aligned} &\langle\!\langle Q \otimes Z^y | \otimes \langle\!\langle Z^{x + y|_M} | \left(\sum_{m\in \mathbb{Z}_2^M} \mathcal{E}_m \otimes | m \rangle\!\rangle\right)\\ &= \langle\!\langle Q \otimes Z^y | \otimes \langle\!\langle Z^{x + y|_M} | \left( \frac{1}{2^{2|M|+|N|}} \sum_{\substack{a \in \mathbb{Z}_2^M, b \in \mathbb{Z}_2^{M \cup R} \\ P \in \mathcal{P}^{N\setminus R}}} \lambda^P_{a,b} | P \otimes Z^b \rangle\!\rangle\langle\!\langle G^\dagger(P \otimes I_{N \cap R} \otimes Z^a) | \otimes | Z^{a + b|_M} \rangle\!\rangle \right) \\ &=\frac{1}{2^{2|M| + |N|}}\sum_{\substack{a \in \mathbb{Z}_2^M, b \in \mathbb{Z}_2^{M \cup R} \\ P \in \mathcal{P}^{N \setminus R}}} \lambda^P_{a, b}\underbrace{\langle Q \otimes Z^y, P \otimes Z^b \rangle}_{2^{|M| + |N|} \delta_{P, Q}\delta_{y,b}} \underbrace{\langle Z^{x + y|_M}, Z^{a + b|_M} \rangle}_{2^{|M|}\delta_{x+y|_M,a+b|_M}}\langle\!\langle G^\dagger(P \otimes I_{N \cap R} \otimes Z^a) | \end{aligned} \end{split}

Infine, si noti che δy,bδx+y∣M,a+b∣M=δy,bδx,a\delta_{y,b}\delta_{x+y|_M,a+b|_M} = \delta_{y,b}\delta_{x,a}; ne consegue che il termine finale sopra riportato si riduce al singolo termine λx,yQ⟨ ⁣⟨G†(Q⊗IN∩R⊗Zx)∣\lambda^Q_{x,y} \langle\!\langle G^\dagger(Q \otimes I_{N \cap R} \otimes Z^x) |, fornendo il risultato desiderato.

Si veda [ 5 ] per ulteriori approfondimenti: la definizione del PTG, i percorsi attraverso il PTG e la dimostrazione che ogni percorso correttamente definito corrisponde a un esperimento.


Riferimenti

[1]

Senrui Chen, Zhihan Zhang, Liang Jiang e Steven T. Flammia. Apprendimento efficiente e auto-coerente del rumore di Pauli nell’insieme dei gate. PRX Quantum, 7(1):010305, 2026. URL: https://link.aps.org/doi/10.1103/1pnv-t9px, doi:10.1103/1pnv-t9px.

[2]

Edward H. Chen, Senrui Chen, Laurin E. Fischer, Andrew Eddins, Luke C. G. Govia, Brad Mitchell, Andre He, Youngseok Kim, Liang Jiang e Alireza Seif. Risoluzione delle ambiguità relative al rumore di Pauli nei computer quantistici. PRX Quantum, pagine, 2026. doi:10.1103/69wc-gzl6.

[3]

Steven T. Flammia. Campionamento medio degli autovalori del circuito. Nella 17ª Conferenza sulla teoria del calcolo quantistico, della comunicazione e della crittografia (TQC 2022), volume 232 della collana Leibniz International Proceedings in Informatics (LIPIcs), 4:1–4:10. Dagstuhl, Germania, 2022. Castello di Dagstuhl – Centro Leibniz per l’informatica. doi:10.4230/LIPIcs.TQC.2022.4.

[4]

Alexander Erhard, Joel J. Wallman, Lukas Postler, Michael Meth, Roman Stricker, Esteban A. Martinez, Philipp Schindler, Thomas Monz, Joseph Emerson e Rainer Blatt. Caratterizzazione dei computer quantistici su larga scala tramite benchmarking dei cicli. Nature Communications, 10(1):5347, 2019. doi:10.1038/s41467-019-13068-7.

[5]

Zhihan Zhang, Senrui Chen, Yunchao Liu e Liang Jiang. Algoritmo di benchmarking del ciclo generalizzato per la caratterizzazione delle misurazioni a metà circuito. PRX Quantum, 6(1):010310, 2025. URL: https://link.aps.org/doi/10.1103/PRXQuantum.6.010310, doi:10.1103/PRXQuantum.6.010310.

[6]

Stefanie J. Beale e Joel J. Wallman. Compilazione casuale per le misurazioni dei sottosistemi. 2023. URL: http://arxiv.org/abs/2304.06599, doi:10.48550/arXiv.2304.06599.

[7]

Ewout van den Berg e Pawel Wocjan. Tecniche per l'apprendimento di modelli di rumore di Pauli-Lindblad sparsi. Quantum, 8:1556, 2024. URL: https://quantum-journal.org/papers/q-2024-12-10-1556/, doi:10.22331/q-2024-12-10-1556.

Questa pagina è stata utile?
Segnala un bug, un errore di battitura o richiedi contenuti su GitHub.