[Haskell-cafe] Vague: Assembly line process

Martin Drautzburg Martin.Drautzburg at web.de
Mon Jun 14 13:16:22 EDT 2010

Hello all,

this is a problem which has haunted me for some time. If this is simply 
hillarious, please tell me so. Or it may be some well known unsolvable 

An assembly process takes inputs and produces outputs. I could say a Process 
is a function

canProduce :: [Input]->[Output]->Bool

which tells me if the outputs can be produced from the inputs

There may be a similar function which tells me if the inputs are completely 
consumed to procude the output.

The inputs do not determine the exact outputs. Think of a Process which 
combines a List of Ints into pairs, such that the input ints are consumed and 
each input Int occurs in only one position in the output. There are many ways 
to do this. Still for any set of input Ints and output pairs I could decide 
if the output can be produced from the input.

Likewise the Input is not determined by the output. There may be lots of 
choices from what I could build my output (buy from different vendors).

When I know more about the inputs and outputs my choices get more and more 
limited. I would like to to pass inputs and/or outputs to "something" and I 
would like to get a "something" which is more restricted, but still 
essentially a thing which tells me if the outputs can be produced from the 

I just cannot find a way to even THINK about this problem in a reasonable 
general way.


More information about the Haskell-Cafe mailing list