title: Permutations of Boolean values in ruby hash
body: <p>I need to implement a function which gets a array with Symbols as parameters like <code>[:a :b :c]</code>, and then returns a array which contains all possible permutations of boolean values mapped to those symbols in a hash</p>
  
  <p>like</p>
  
  <pre><code>[{a: true, b: true, c: true},
  {a: false, b: true, c: true},
  {a: true, b: false, c: true},
  {a: true, b: true, c: false},
  {a: true, b: false, c: false},
  {a: false, b: false, c: true},
  {a: false, b: true, c: false},
  {a: false, b: false, c: false}]
  </code></pre>
  
  <p>what is a elegant way to implement such a thing in ruby?</p>