Fig. 1: Overview of KSNP algorithm.
From: KSNP: a fast de Bruijn graph-based haplotyping tool approaching data-in time cost

KSNP is currently implemented for diploid genome. a The input files of KSNP. b Heterozygous SNPs (blue and orange rectangles) detected on reads. c The featured k-mers (k-SNPs) extracted from SNP strings on long reads (R1, R2,…), e.g., k = 3, are used to construct the DBG. The transitive edges (dotted arrows) caused by the deletion errors in reads are excluded in the graph construction. A number marked on an edge represents the corresponding edge depth, equivalent to the number of reads supporting the edge. d Considering the inherent complementarity of the two haplotypes in diploid genome, the edges in two subgraphs are merged. The merged graph is self-symmetric and retains all the information of the two haplotypes H0 and H1. Bubbles and small tips caused by the genotype errors in reads are heuristically pruned during graph traversal. e After graph pruning, one haplotype is assembled directly from the graph, and the other is obtained by complementation.