Extended Data Fig. 1: Criteria of learning.

Independence: the same set of 100 input strands were used for training and testing, satisfying the independence criteria. Integration: training patterns presented in any desired order were stored into two 100-bit memories, satisfying the integration criteria. Generality: while above-average examples of handwritten digits were used for training, a wider range of digits were correctly classified for testing, satisfying the generality criteria. Stability: some testing experiments were performed days after training, satisfying the stability criteria. The wait time is mainly limited by DNA degradation in magnesium, and in principle could be extended to at least weeks, or months if stored in a sodium buffer, and years if the molecules are lyophilized. Accuracy: handwritten digits outside of a 20% margin in the weighted sum space were used for testing, indicating a lower bound of 53% classification accuracy for ‘0’ and 83% for ‘1’ (same as the top plots in Fig. S31d, with more details explained in Supplementary Note 5.12). Reusability: each trained DNA neural network was distributed into 24 aliquots for distinct tests (12 per class) in parallel. Flexility: training and testing inputs were all binary signals with high and low concentrations representing ON and OFF states, respectively. Learned memories were composed of analog signals representing the average of all training patterns, but could only be used to classify binary tests.