nl_tokens: / * Perform a DFS postorder traversal labeling each node v with its traversal order lim ( v ) and the minimum traversal number of any of its descendants low ( v ) . This provides an efficient way to test whether u is an ancestor of v since low ( u ) < = lim ( v ) < = lim ( u ) if and only if u is an ancestor .
pl_tokens: function computeLowLim ( tree ) { var postOrderNum = 0 ; function dfs ( n ) { var children = tree . successors ( n ) ; var low = postOrderNum ; for ( var c in children ) { var child = children [ c ] ; dfs ( child ) ; low = Math . min ( low , <mask> . node ( child ) . low ) ; } tree . node ( n ) . low = low ; tree . node ( n ) . lim = postOrderNum ++ ; } dfs ( tree . graph ( ) . root ) ; }