Skip to content

A library for a 2 parameter markov model random number generator

Notifications You must be signed in to change notification settings

dj-on-github/markov2p

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A python library for the markov 2 parameter RNG model

To follow along, you kind of need the paper, which isn't published yet

import markov2p as m

Compute markov params from bias and serial correlation coefficient
    p01,p10 = m.biasscc_2_p(bias,scc)

Compute probability of a symbol appearing from a generator with specific parameters
    symbol_probability = m.symbol_prob(p01,p10,symbol,bitwdith)

Compute the most probable symbol to be generated from a model with a specified set of parameters.
    mps = m.most_probable_symbol = (p01,p10,bitwidth)

Compute the per-bit entropy, the most common symbol value and the probability of the most common symbol of a model with specified parameters.

    entropy,mcv_prob,mcv = p_to_entropy(p01,p10,bitwidth)

Choose a set of parameters that generate data with a specified entropy. There are an infinite number of such parameters, unless the entropy is 1.0. So this choose one randomly from the available set of parameters that generate data with the chosen min entropy.
    p01,p10 = pick_point(desired_entropy,epsilon,entropy,bitwidth)

About

A library for a 2 parameter markov model random number generator

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages