Uniform Random Generation of Decomposable Structures Using Floating-Point Arithmetic
Résumé
The {\em recursive method\/} formalized by Nijenhuis and Wilf \cite{NiWi78} and systematized by Flajolet, Van Cutsem and Zimmermann \cite{FlZiVa94}, is extended here to floating-point arithmetic. The resulting ADZ method enables one to generate decomposable data structures --- both labelled or unlabelled --- uniformly at random, in expected $O(n^{1+\epsilon})$ time and space, after a preprocessing phase of $O(n^{2+\epsilon})$ time, which reduces to $O(n^{1+\epsilon})$ for context-free grammars.