[[paramchap]] == Param functions == Pairings are initialized from _pairing parameters_, which are objects of type `pbc_param_t`. Some applications can ignore this data type because `pairing_init_set_str()` handles it behind the scenes: it reads a string as a `pbc_param_t`, then initializes a pairing with these parameters. include::gen/param.txt[] [[paramgenchap]] === Param generation === These were used to prepare the sample parameters in the +param+ subdirectory. We label the pairing families with capital letters roughly in the order of discovery, so we can refer to them easily. Type A is fastest. Type D is a good choice when elements should be short but is slower. Type F has even shorter elements but is slower still. The speed differences are hardware-dependent, and also change when preprocessing is used. Type B and C are unimplemented. The +pbc_cm_t+ data type holds CM parameters that are used to generate type D and G curves. include::gen/cminfo.txt[] include::gen/aparam.txt[] include::gen/a1param.txt[] include::gen/dparam.txt[] include::gen/eparam.txt[] include::gen/fparam.txt[] include::gen/gparam.txt[]