cooking_breakfast-0


Synsets

Transition Paths By Task Scope Objects

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

Scenes

Full Definition

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

    (:objects
        raw_egg.n.01_1 raw_egg.n.01_2 - raw_egg.n.01
        bowl.n.01_1 bowl.n.01_2 - bowl.n.01
        electric_refrigerator.n.01_1 - electric_refrigerator.n.01
        butter.n.01_1 - butter.n.01
        melted__butter.n.01_1 - melted__butter.n.01
        countertop.n.01_1 - countertop.n.01
        frying_pan.n.01_1 - frying_pan.n.01
        saucepan.n.01_1 - saucepan.n.01
        wooden_spoon.n.02_1 - wooden_spoon.n.02
        bratwurst.n.01_1 bratwurst.n.01_2 - bratwurst.n.01
        plate.n.04_1 - plate.n.04
        floor.n.01_1 - floor.n.01
        stove.n.01_1 - stove.n.01
        agent.n.01_1 - agent.n.01
    )
    
    (:init 
        (inside raw_egg.n.01_1 bowl.n.01_1) 
        (inside raw_egg.n.01_2 bowl.n.01_2) 
        (inside bowl.n.01_1 electric_refrigerator.n.01_1)
        (inside bowl.n.01_2 electric_refrigerator.n.01_1)
        (inside butter.n.01_1 electric_refrigerator.n.01_1) 
        (ontop frying_pan.n.01_1 countertop.n.01_1) 
        (ontop saucepan.n.01_1 countertop.n.01_1)
        (ontop wooden_spoon.n.02_1 countertop.n.01_1)
        (inside bratwurst.n.01_1 electric_refrigerator.n.01_1) 
        (inside bratwurst.n.01_2 electric_refrigerator.n.01_1) 
        (ontop plate.n.04_1 countertop.n.01_1) 
        (future melted__butter.n.01_1)
        (inroom electric_refrigerator.n.01_1 kitchen) 
        (inroom countertop.n.01_1 kitchen) 
        (inroom stove.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)
            (forall 
                (?raw_egg.n.01 - raw_egg.n.01)
                (and 
                    (cooked ?raw_egg.n.01)
                    (ontop ?raw_egg.n.01 ?plate.n.04_1)
                )
            )
            (forall 
                (?bratwurst.n.01 - bratwurst.n.01)
                (and 
                    (cooked ?bratwurst.n.01)
                    (ontop ?bratwurst.n.01 ?plate.n.04_1)   
                    (covered ?bratwurst.n.01 ?melted__butter.n.01_1)             
                )
            )
        )
    )
)
  

Debugging: All Possible Recipes Resulting in Future Synsets

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