orthonym.rules.polyazane#
Note
Internal API. Names and behaviour may change between releases.
Polyazane parent-hydride family / /.
Acyclic chains of nitrogen atoms joined by N-N bonds:
saturated: NN -> hydrazine, NNN -> triazane, NNNN -> tetraazane,… unsaturated: N=N -> diazene, N=NN -> triazene, N=NNN -> tetraaz-1-ene
- (di-/trinuclear omit the ene locant, (d):2937;
tetraazene on keep it – tetraaz-1-ene vs -2-ene differ)
- azo: R-N=N-R -> dimethyldiazene / diphenyldiazene
(diazene omits locants — each N is =N-;
substituted hydrazine: CNN -> methylhydrazine (N-N keeps 1,1-/1,2- locants)
hydrazine and diazene are retained / preselected PINs (NOT “diazane” /
“diimide”); the longer members are systematic <multiplier>azane / …az-n-ene
: no elision of the multiplier vowel -> “tetraazane”).
Graph classifier (NOT SMARTS — feedback_smarts_and_seniority). Fail-closed: an amine (no N-N bond), a diamine (N-C-C-N), hydroxylamine (N-O), a hydrazone (C=N-N: an ylidene substituent), an azide (N=N=N: two cumulated double bonds), or any charged / ring / radical species fails a guard and cascades onward.
- orthonym.rules.polyazane.name_polyazane(mol)#
Return the PIN for a polyazane-family parent hydride, else None (fail-closed cascade-continuation). Pure: no mol mutation.