cook_corn-0


Synsets

Transition Paths By Task Scope Objects

graph TD; initial-buttern01(initial: butter.n.01); future-melted__buttern01(future: melted__butter.n.01); recipe-half__buttern01-melting(recipe: half__butter.n.01-melting); half__buttern01(half__butter.n.01); recipe-buttern01-melting(recipe: butter.n.01-melting); recipe-buttern01-slicing(recipe: butter.n.01-slicing); recipe-uncooked-half__buttern01-dicing(recipe: uncooked-half__butter.n.01-dicing); diced__buttern01(diced__butter.n.01); recipe-diced__buttern01-melting(recipe: diced__butter.n.01-melting); initial-buttern01 --> recipe-buttern01-melting; initial-buttern01 --> recipe-buttern01-slicing; recipe-half__buttern01-melting --> future-melted__buttern01; half__buttern01 --> recipe-half__buttern01-melting; half__buttern01 --> recipe-uncooked-half__buttern01-dicing; recipe-buttern01-melting --> future-melted__buttern01; recipe-buttern01-slicing --> half__buttern01; recipe-uncooked-half__buttern01-dicing --> diced__buttern01; diced__buttern01 --> recipe-diced__buttern01-melting; recipe-diced__buttern01-melting --> future-melted__buttern01;

Scenes

Full Definition

(define (problem cook_corn-0)
    (:domain omnigibson)

    (:objects
        sweet_corn.n.02_1 sweet_corn.n.02_2 sweet_corn.n.02_3 sweet_corn.n.02_4 - sweet_corn.n.02
        stove.n.01_1 - stove.n.01
        electric_refrigerator.n.01_1 - electric_refrigerator.n.01
        tupperware.n.01_1 - tupperware.n.01
        stockpot.n.01_1 - stockpot.n.01
        butter.n.01_1 - butter.n.01
        melted__butter.n.01_1 - melted__butter.n.01
        water.n.06_1 - water.n.06
        sink.n.01_1 - sink.n.01
        floor.n.01_1 - floor.n.01
        agent.n.01_1 - agent.n.01
    )
    
    (:init 
        (inside sweet_corn.n.02_1 electric_refrigerator.n.01_1) 
        (inside sweet_corn.n.02_2 electric_refrigerator.n.01_1) 
        (inside sweet_corn.n.02_3 electric_refrigerator.n.01_1) 
        (inside sweet_corn.n.02_4 electric_refrigerator.n.01_1) 
        (inside butter.n.01_1 tupperware.n.01_1)
        (inside tupperware.n.01_1 electric_refrigerator.n.01_1)
        (ontop stockpot.n.01_1 stove.n.01_1) 
        (not 
            (cooked sweet_corn.n.02_1)
        ) 
        (not 
            (cooked sweet_corn.n.02_2)
        ) 
        (not 
            (cooked sweet_corn.n.02_3)
        ) 
        (not 
            (cooked sweet_corn.n.02_4)
        ) 
        (future melted__butter.n.01_1)
        (insource sink.n.01_1 water.n.06_1)
        (inroom stove.n.01_1 kitchen) 
        (inroom electric_refrigerator.n.01_1 kitchen) 
        (inroom sink.n.01_1 kitchen) 
        (inroom floor.n.01_1 kitchen) 
        (ontop agent.n.01_1 floor.n.01_1)
    )
    
    (:goal 
        (and 
            (forall 
                (?sweet_corn.n.02 - sweet_corn.n.02) 
                (and 
                    (cooked ?sweet_corn.n.02)
                    (covered ?sweet_corn.n.02 ?melted__butter.n.01_1)
                )
            )
            (real ?melted__butter.n.01_1)
        )
    )
)
  

Debugging: All Possible Recipes Resulting in Future Synsets

graph TD; future-melted__buttern01(future: melted__butter.n.01); recipe-half__buttern01-melting(recipe: half__butter.n.01-melting); recipe-buttern01-melting(recipe: butter.n.01-melting); initial-buttern01(initial: butter.n.01); missing-diced__buttern01(missing: diced__butter.n.01); recipe-buttern01-slicing(recipe: butter.n.01-slicing); missing-half__buttern01(missing: half__butter.n.01); recipe-uncooked-half__buttern01-dicing(recipe: uncooked-half__butter.n.01-dicing); recipe-diced__buttern01-melting(recipe: diced__butter.n.01-melting); recipe-half__buttern01-melting --> future-melted__buttern01; recipe-buttern01-melting --> future-melted__buttern01; initial-buttern01 --> recipe-buttern01-melting; initial-buttern01 --> recipe-buttern01-slicing; missing-diced__buttern01 --> recipe-diced__buttern01-melting; recipe-buttern01-slicing --> missing-half__buttern01; missing-half__buttern01 --> recipe-half__buttern01-melting; missing-half__buttern01 --> recipe-uncooked-half__buttern01-dicing; recipe-uncooked-half__buttern01-dicing --> missing-diced__buttern01; recipe-diced__buttern01-melting --> future-melted__buttern01;