public override Register Clone()
        {
            Register reg = new BinaryRegister(this.n);

            this.polinom.CopyTo(reg.polinom, 0);
            return(reg);
        }
        public SCHVNRegister(NotationSystem notSystem)
            : base(notSystem)
        {
            this.schvnSys = notSystem;
            double binaryNDouble = Math.Log(notSystem.alpha, Math.E) * this.n / Math.Log(2, Math.E);
            int    binaryNInt    = (int)Math.Ceiling(binaryNDouble);

            this.Diapason = Math.Pow(2, binaryNDouble) - 1;

            binarySys = new NotationSystem(binaryNInt, 2, 0);
            binaryReg = new BinaryRegister(binarySys);

            CollapsingNumberOfBits = GetCollapsingNumberOfBits();
        }