예제 #1
0
파일: tbm_and.cs 프로젝트: 0xCM/arrows
 public void bm_and_32x32x32g()
 {
     for (var i = 0; i < SampleSize; i++)
     {
         var A  = Random.BitMatrix <N32, uint>();
         var B  = Random.BitMatrix <N32, uint>();
         var C1 = BitMatrix.and(in A, in B);
         var C2 = BitMatrix32.From(C1);
         var C3 = BitMatrix32.From(A) & BitMatrix32.From(B);
         Claim.yea(C2 == C3);
     }
 }
예제 #2
0
파일: tbm_and.cs 프로젝트: 0xCM/arrows
        public void bm_and_32x32_check()
        {
            for (var i = 0; i < SampleSize; i++)
            {
                var A = Random.BitMatrix(n32);
                var B = Random.BitMatrix(n32);

                var xBytes = A.Bytes.Replicate();
                var yBytes = B.Bytes.Replicate();
                var zBytes = gbitspan.and(xBytes, yBytes);
                var expect = BitMatrix32.From(zBytes);

                var C = A & B;
                Claim.yea(expect == C);
            }
        }