cook_a_turkey-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-buttern01-slicing(recipe: butter.n.01-slicing); half__buttern01(half__butter.n.01); recipe-uncooked-half__buttern01-dicing(recipe: uncooked-half__butter.n.01-dicing); diced__buttern01(diced__butter.n.01); recipe-buttern01-melting(recipe: butter.n.01-melting); recipe-half__buttern01-melting(recipe: half__butter.n.01-melting); recipe-diced__buttern01-melting(recipe: diced__butter.n.01-melting); initial-buttern01 --> recipe-buttern01-slicing; initial-buttern01 --> recipe-buttern01-melting; recipe-buttern01-slicing --> half__buttern01; half__buttern01 --> recipe-uncooked-half__buttern01-dicing; half__buttern01 --> recipe-half__buttern01-melting; recipe-uncooked-half__buttern01-dicing --> diced__buttern01; diced__buttern01 --> recipe-diced__buttern01-melting; recipe-buttern01-melting --> future-melted__buttern01; recipe-half__buttern01-melting --> future-melted__buttern01; recipe-diced__buttern01-melting --> future-melted__buttern01;

Scenes

Full Definition

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

    (:objects
        turkey.n.04_1 - turkey.n.04
        oven.n.01_1 - oven.n.01
        wax_paper.n.01_1 - wax_paper.n.01
        rosemary.n.02_1 - rosemary.n.02
        rosemary__shaker.n.01_1 - rosemary__shaker.n.01
        frying_pan.n.01_1 - frying_pan.n.01
        cabinet.n.01_1 - cabinet.n.01
        butter.n.01_1 - butter.n.01
        melted__butter.n.01_1 - melted__butter.n.01
        floor.n.01_1 - floor.n.01
        agent.n.01_1 - agent.n.01
    )
    
    (:init 
        (ontop frying_pan.n.01_1 oven.n.01_1) 
        (ontop turkey.n.04_1 wax_paper.n.01_1) 
        (inside wax_paper.n.01_1 oven.n.01_1)
        (insource rosemary__shaker.n.01_1 rosemary.n.02_1) 
        (inside rosemary__shaker.n.01_1 cabinet.n.01_1)
        (inside butter.n.01_1 cabinet.n.01_1) 
        (not 
            (cooked turkey.n.04_1)
        ) 
        (future melted__butter.n.01_1)
        (inroom oven.n.01_1 kitchen) 
        (inroom cabinet.n.01_1 kitchen) 
        (inroom floor.n.01_1 kitchen) 
        (ontop agent.n.01_1 floor.n.01_1)
    )
    
    (:goal 
        (and 
            (real ?melted__butter.n.01_1)
            (inside ?turkey.n.04_1 ?frying_pan.n.01_1)
            (covered ?turkey.n.04_1 ?melted__butter.n.01_1)
            (covered ?turkey.n.04_1 ?rosemary.n.02_1)
            (cooked ?turkey.n.04_1)
        )
    )
)
  

Debugging: All Possible Recipes Resulting in Future Synsets

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