> bitcomb
> ([ = [: +/"1 [: #: [: i. 2 ^ ]) #"2 [: #: [: i. 2 ^ ]

The verb bitcomb is really neat and performs great for small arguments,


   stp 111
  2 |. o combbool 4
  2 |. o CombBool 4
  2 |. o combbit  4
  2 |. o CombBit  4
  2      bitcomb  4
)
┌───────────────────┬─────┬─────────────┬─────────────┐
│Sentence           │Space│Time         │Space * Time │
├───────────────────┼─────┼─────────────┼─────────────┤
│  2 |. o combbool 4│9600 │1.10256214e_5│0.105845966  │
├───────────────────┼─────┼─────────────┼─────────────┤
│  2 |. o CombBool 4│5632 │9.54247007e_6│0.0537431914 │
├───────────────────┼─────┼─────────────┼─────────────┤
│  2 |. o combbit  4│9344 │1.0507813e_5 │0.0981850044 │
├───────────────────┼─────┼─────────────┼─────────────┤
│  2 |. o CombBit  4│5376 │6.45041388e_6│0.034677425  │
├───────────────────┼─────┼─────────────┼─────────────┤
│  2      bitcomb  4│2048 │1.74205558e_6│0.00356772983│
└───────────────────┴─────┴─────────────┴─────────────┘

However, it seems that for larger arguments becomes one of those cases
where terseness and performance do not correlate,

   stp 111
  8 |. o combbool 17
  8 |. o CombBool 17
  8 |. o combbit  17
  8 |. o CombBit  17
  8      bitcomb  17
)
┌────────────────────┬────────┬──────────────┬────────────┐
│Sentence            │Space   │Time          │Space * Time│
├────────────────────┼────────┼──────────────┼────────────┤
│  8 |. o combbool 17│1577856 │0.00133505444 │2106.52366  │
├────────────────────┼────────┼──────────────┼────────────┤
│  8 |. o CombBool 17│1310080 │0.00108952077 │1427.35937  │
├────────────────────┼────────┼──────────────┼────────────┤
│  8 |. o combbit  17│1052800 │0.00085835258 │903.673597  │
├────────────────────┼────────┼──────────────┼────────────┤
│  8 |. o CombBit  17│1051776 │0.000817412425│859.73477   │
├────────────────────┼────────┼──────────────┼────────────┤
│  8      bitcomb  17│10487168│0.00810307353 │84978.2934  │
└────────────────────┴────────┴──────────────┴────────────┘

Moreover, it eventually fails whereas the other explicit and tacit versions
do not (on my machine),

   60 bitcomb 63
|limit error: bitcomb
|   60     bitcomb 63
|[-33]

   stp 1
  60 |. o combbool 63
  60 |. o CombBool 63
  60 |. o combbit  63
  60 |. o CombBit  63
)
┌─────────────────────┬────────┬─────────────┬────────────┐
│Sentence             │Space   │Time         │Space * Time│
├─────────────────────┼────────┼─────────────┼────────────┤
│  60 |. o combbool 63│17328768│0.0652426668 │1130575.04  │
├─────────────────────┼────────┼─────────────┼────────────┤
│  60 |. o CombBool 63│12994816│0.0614299063 │798270.329  │
├─────────────────────┼────────┼─────────────┼────────────┤
│  60 |. o combbit  63│8390784 │0.00865312296│72606.4857  │
├─────────────────────┼────────┼─────────────┼────────────┤
│  60 |. o CombBit  63│8390784 │0.00678184458│56904.993   │
└─────────────────────┴────────┴─────────────┴────────────┘

   stp 1
  60 |. o combbool 64
  60 |. o CombBool 64

)

┌─────────────────────┬─────────┬───────────┬────────────┐
│Sentence             │Space    │Time       │Space * Time│
├─────────────────────┼─────────┼───────────┼────────────┤
│  60 |. o combbool 64│285764736│0.941179538│268955922   │
├─────────────────────┼─────────┼───────────┼────────────┤
│  60 |. o CombBool 64│214321920│0.933799114│200133619   │
└─────────────────────┴─────────┴───────────┴────────────┘

Perhaps there is a way to repair it.  I do not know.


On Sat, Nov 11, 2017 at 4:48 AM, Linda Alvord <[email protected]>
wrote:

> Also since tacit has been an issue:
>
> bitcomb
> ([ = [: +/"1 [: #: [: i. 2 ^ ]) #"2 [: #: [: i. 2 ^ ]
>
> Linda
>
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to