Hey Jon,

thanks for the code. I will work through it.

I am wondering in general if its possible to encode any arbitrary "state 
machine" in minikanren and let minikanren search for a path
between some State A and some State B.

Similar like Lesslie Lamport can do it with his TLA+ Model checker.

He explains this principle nicely in this video, with the "Water Jug 
Puzzle" as example:

https://lamport.azurewebsites.net/video/video4.html

What do you think?

bye,

Daniel


Am Montag, 3. Juli 2017 22:16:06 UTC+2 schrieb Smock Jonathan:
>
> Hey Daniel,
>
> I realized I could put it behind a gist link:  
> https://gist.github.com/jonsmock/3e4abf488bfcc064f33373a3d090e027
>
> Don't look if you want to think it through, but feel free if you're stuck. 
> The invitation to offer hints is still open as well.
>
> I think my code could be cleaned up, but I did get my recursive version 
> working (once I noticed I had hardcoded the order of the final solution 
> list).
>
> Let me know if you need help!
>
> Thanks,
> Jon
>
> On Mon, Jul 3, 2017 at 3:36 PM, Smock Jonathan <[email protected] 
> <javascript:>> wrote:
>
>> Hi Daniel,
>>
>> I did this one just now:  
>> https://en.wikipedia.org/wiki/Fox,_goose_and_bag_of_beans_puzzle
>>
>> It looks like I can solve it, but I'm having trouble making my solution 
>> fully recursive. Instead I had to create 8 fresh variables for the initial 
>> state, the 6 intermediate states, and the final solution state. With that, 
>> my solution comes back very quickly.
>>
>> Do you want to see code, or do you want hints? I don't want to spoil it, 
>> if you want to keep working through it.
>>
>> I will say the final gotcha for me was in encoding the final solution. I 
>> keep a list of which animals/items are on each side of the river, and while 
>> I can give a list of animals/items of the initial state, I can't hardcode 
>> the list on the ending state.  Instead I use a list with 3 fresh variables. 
>> This ensures the farmer ends with all 3 items on the other side, but it 
>> doesn't constraint the the order of the list to any particular order. Does 
>> that make sense?
>>
>> Let me know how I can help! Good luck!
>>
>> Jon
>>
>> On Mon, Jul 3, 2017 at 11:06 AM, Daniel S <[email protected] 
>> <javascript:>> wrote:
>>
>>> Hello,
>>>
>>> anyone solved the River Crossing Puzzle (
>>> https://en.wikipedia.org/wiki/River_crossing_puzzle)
>>> with minikanren yet?
>>>
>>> bye
>>>
>>> Daniel
>>>
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "minikanren" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected] <javascript:>.
>>> To post to this group, send email to [email protected] 
>>> <javascript:>.
>>> Visit this group at https://groups.google.com/group/minikanren.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"minikanren" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/minikanren.
For more options, visit https://groups.google.com/d/optout.

Reply via email to