## 3 Vampire  
In response to the ambiguities in Blind FROG, [PERSON] and [PERSON] introduced a self-referenced two-pulse measurement technique called very advanced method for phase and intensity retrieval of e-fields (VAMPIRE) [23, 24]. The technique was designed to remove the nontrivial ambiguities found in Bling FROG by generating non-centro-symmetric spectrograms. The schematic of VAMPIRE is shown in Figure 5.  
The key element of VAMPIRE is the conditioning filter, which consists of a spectral phase modulator and a temporal phase modulator. The spectral phase modulator can be implemented by an unbalanced Mach-Zehnder interferometer (MZI) with a dispersive element placed in one of the arms. The relative delay between the two replicas should not be too large to avoid sampling issues or too small to satisfy the required temporal separation. The use of the spectral phase modulator breaks the symmetry and so avoids ambiguities caused by symmetric VAMPIRE spectrograms. The relative-phase ambiguity is removed by choosing a suitable spectrum for signal 2, which covers the spectrum of signal 1. This could be done without using an external source by making a replica of signal 1 and modifying its spectrum. A temporal phase modulator, such as a self-phase modulation introduced by the Kerr nonlinearity of an optical fiber, can be used to broaden the spectrum. After the conditioning filter, the two unknown pulses interact inside a nonlinear medium to generate the cross-correlation signal. In the original work, a barium borate (BBO) crystal was used as the nonlinear medium to perform sum-frequency generation. The signal is measured by a spectrometer to generate the VAMPIRE spectrogram. Figure 5: Optical schematic of the very advanced method for phase and intensity retrieval of e-fields (VAMPIRE) technique [24]. The mathematical expression for the VAMPIRE spectrogram is given by:  
\[ \begin{split} I(\Omega,\tau)\propto\left|\int_{-\infty}^{+\infty}d \omega G(\omega,\Omega)\exp\{iP(\omega,\Omega)\}\exp(i\omega\tau)\right|^{2}\\ G(\omega,\Omega)=\left|\tilde{E}_{1}(\omega)\right|\left|\tilde{E} _{2}(\Omega-\omega)\right|\\ P(\omega,\Omega)=\phi_{1}(\omega)+\phi_{2}(\Omega-\omega)\end{split}  \tag{6}\]  
where \(\phi_{1}\) and \(\phi_{2}\) are the spectral phase of the pulses. The spectra of the pulses are measured independently and used as a constraint to the reconstruction problem, thus \(\phi_{1}\) and \(\phi_{2}\) are the unknown functions to be determined. The reconstruction algorithm starts with solving the 1D phase-retrieval problem for an arbitrary row, _i.e._, the arbitrary value of \(\Omega\), in the trace by using a Gerchberg-Saxton algorithm:  
\[\left|E_{\Omega}(\tau)\right|=\left|\int_{-\infty}^{+\infty}d\omega G_{\Omega} (\omega)\exp\{iP_{\Omega}(\omega)\}\exp(i\omega\tau)\right| \tag{7}\]  
where \(\left|E_{\Omega}(\tau)\right|\) is given by the square root of \(I(\Omega,\tau)\) and \(G_{\Omega}(\omega)\) is given by the measured spectrum of the pulse. The solution of the 1D phase-retrieval problem is used as the initial guess for the neighboring row until all the rows are covered. The phase information is contained in a function, \(h(\omega,\Omega)=P(\omega,\Omega)+F(\Omega)\), with \(P\) defined in Equation (6) and \(F\) being an arbitrary function. The error of each row between the measured data and the computed result is calculated. A modified function \(G_{mod}(\omega,\Omega)\) is generated by omitting rows with high error, which reduces the computational complexity in the next step. The spectral phase \(\phi_{1}\) and \(\phi_{2}\) are reconstructed by using a singular value decomposition (SVD) algorithm with \(G_{mod}\) and \(h\) as the input. The arbitrary function \(F\) is eliminated in the last step. Figure 6: (**A**) Simulated VAMPIRE spectrogram generated with the signal in (**B**) and a filtered signal Gaussian. (**C**) Rate of convergence plots.