## 4 Spectrogram  
FROG is a typical method based on spectrogram measurement [32], where the recorded trace is  
\[S_{\mathrm{FROG}}(\omega,\tau)\ =\ \left|\int E(t)g(t-\tau)\exp(-i\omega t)dt \right|^{2} \tag{7}\]  
where \(g(t-\tau)\) is the gate function with a delay \(\tau\) relative to the test field \(E(t)\). FROG can also be seen as a frequency-resolved correlation. [PERSON] and [PERSON] [11] pointed out that the problem of inverting the FROG trace is equivalent to the two-dimensional phase-retrieval problem [33], which can yield essentially unique results, compared to the unsolvable one-dimensional phase-retrieval. In FROG, the input pulse is divided into two parts, one is the test pulse, the other is used to generate an ultrafast time gate that is induced by \(\chi^{(2)}\)- or \(\chi^{(3)}\)-nonlinear effects. Many different nonlinear gating mechanisms can be used for FROG, such as polarization-gating (PG) [11], self-diffraction (SD) [34], transient-grating (TG) [35], SHG, third-harmonic generation (THG), and so on. Different versions of FROG generate different kinds of FROG traces and have different strengths and weaknesses. Table 1 shows the comparison of different nonlinearities applied for FROG. \begin{table}
\begin{tabular}{c c c c c} \hline \hline
**Nonlinearity** & **XPW** & **SD** & **TG** & **SHG** \\ \hline Sensitivity (Single-shot) & \(\sim\)1 uJ & \(\sim\)10 uJ & \(\sim\)0.1 uJ & \(\sim\)10 nJ \\ \hline Sensitivity (Multi-shot) & \(\sim\)0.1 uJ & \(\sim\)1 uJ & \(\sim\)10 nJ & \(\sim\)1 pJ \\ \hline \multirow{2}{*}{Advantage} & Auto phase-matching & UV capability & Sensitive; deep UV capability & Very sensitive; High SNR \\ \hline \multirow{2}{*}{Disadvantage} & \multirow{2}{*}{Require polarizers} & Require phase-matching & \multirow{2}{*}{Three beams} & Phase-matching; Unintuitive traces \\  & & & & \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Comparison of different nonlinearities applied for FROG [12; 36]. Figure 1: Schematic of a single-shot four-order autocorrelator. The gate pulse is generated by frequency-degenerate four-wave mixing process. The original version of FROG is a PG-FROG, using time-to-space encoding by cross-incidence, which is designed by [PERSON] and [PERSON] [11], as shown in Figure 2. The PG generator is composed of crossed polarizers and a Kerr medium. When the test pulse passes through the PG generator, which is triggered by a delayed pulse, the trace is given by \(\mathrm{S_{FROG}}^{\mathrm{FG}}(\omega,\tau)=|\int\!E(t)|E(t-\tau)|^{2}\mathrm{ exp}(-\mathrm{i}\omega t)\)\(\mathrm{d}t|^{2}\). Using a cross incident configuration, a single-shot function can be gotten for the time-space correlation between test and gate pulses like that in a single-shot autocorrelator. The most common commercial version is SHG-FROG [22; 37]. SHG-FROG is a frequency-resolved autocorrelator, so it can be easily realized only by replacing the detector in the autocorrelator with a spectrometer. Another advantage of SHG-FROG's is its high sensitivity, because it is based on \(\chi^{(2)}\)-nonlinear effect instead of \(\chi^{(3)}\)-nonlinear effect used in most other versions of FROG. However, the symmetry of the SHG-FROG traces, like in autocorrelation, brings an ambiguity, or cannot distinguish the sign of the chirp in the measured pulses. To remove this ambiguity, additional steps should be made, such as place a piece of medium in the beam, to introduce a positive chirp. Similar to interferential autocorrelation, SHG-FORG can also operate in a collinear geometry, called interferential FROG, or iFROG [38], to avoid a loss of temporal resolution via geometric effects in the characterization of few-cycle pulses. FROG works on a 2D spectrograph, so it requires higher energy than those based on spectral interferometry (such as SPIDER), especially when it uses a \(\chi^{(3)}\)-nonlinear. To improve the sensitivity, cross-correlation FROG (XFROG) was proposed [39]. In an XFROG, the reference pulse is a known pulse that does not need to be spectrally overlapping with the unknow test pulse.