dyadic.check<- function( n,cut.p=2){ # checks that n is of the form # n=p*2^m where p <= cut.p n2<- as.integer(n) while( n2 > cut.p) { if(n2%%2!=0 ) { cat(n, "must equal p*2^m where p is less than or equal to ", cut.p , fill=TRUE) return(FALSE) } n2<- n2/2 } return(TRUE) }