------ VOCAB ------
Factor lander_module := S[0]
Factor current_position := S[1:3]
Factor target_position := S[3:5]
Factor nose_direction := S[5]
Feature up := ...
Proposition facing_up := nose_direction = up

Goal land_on_target := current_position = target_position
Action fire_thrusters = ...
Action turn_nose_right = ...
Action turn_nose_left = ...
Action turn_nose_up = ...
Action turn_nose_down = ...

Option slow_down := init (nose_direction = up)
	Execute ...

============================
======== USING GPT3 ========
============================ * denotes a generated line
----------------------------------------
Giving 2 pairs
----------------------------------------
Original: if the distance between the current_position and the target_position is decreasing, then slow_down
Rephrased: it is a good tactic to slow_down if the current_position is getting closer to the target_position

Original: if the target_position_y_coordinate is less than current_position_y_coordinate, you should turn_nose_left then fire_thrusters
Rephrased: you should turn_nose_left and fire_thrusters if you see the target_position is to the left of the current_position

Original: it is a good strategy to turn_nose_up if the current_position_x is within 5 spaces of target_position_x
Rephrased: *it is a good tactic to turn_nose_up if the current_position_x is getting close to target_position_x

----------------------------------------
Giving 2 pairs with tangential variables
----------------------------------------
Original: if the target_position_y_coordinate is less than current_position_y_coordinate, you should turn_nose_left then fire_thrusters
Rephrased: you should turn_nose_left and fire_boosters if you see the target_position is to the left of the current_position

Original: if the distance between the current_position and the target_position is decreasing, then slow_down
Rephrased: you should decrease_speed if you see that the distance between your current_position and the target_position is decreasing

Original: it is a good strategy to turn_nose_up and slow_down if the current_position_x is within 10 spaces of target_position_x
Rephrased:*

Original: if your target_position_x is equal to current_position_x, you will be rewarded 10 for getting close to the target
Rephrased:

--------------------
Using "put differently,"
--------------------
If the target_position_y_coordinate is less than current_position_y_coordinate, you should turn_nose_left then fire_thrusters
Put differently,you should turn_nose_left and fire_boosters if you see the target_position is to the left of the current_position

if the distance between the current_position and the target_position is decreasing, then slow_down
Put differently,you should decrease_speed if you see that the distance between your current_position and the target_position is decreasing

it is a good strategy to turn_nose_up and slow_down if the current_position_x is within 10 spaces of target_position_x
Put differently,you should turn_nose_up and decrease_speed if you see that the current_position_x is within 10 spaces of the target_position_x

you should not turn_nose_right and fire_thrusters if the target is behind you
Put differently, if the target is behind you, do not point_nose_right and fire_thrusters

if your target_position_x is equal to current_position_x, you will be rewarded 10 for getting close to the target
Put differently, *if your target_position_x is equal to your current_position_x, you will get 10 points for getting close to the target

it is advantageous to *point_nose_left and fire_boosters if the target_position_y is within 10 spaces of the current_position_y
Put differently, it is advantageous to point_nose_left and fire_boosters if you see that the target_position_y is within 10 spaces of the current_position_y

--------------------
aggressive paraphrasing
--------------------
If the target_position_x_coordinate is less than current_position_x_coordinate, you should turn_nose_left then fire_thrusters
Put differently,you should point the lunar_lander nose left and fire_boosters if you see the target_position is to the left of the current_position

if the distance between the current_position_y_coordinate and the target_position_y_coordinate is decreasing, then slow_down
Put differently,you should decrease_speed if you see that the distance between your current_position approaching the target_position

it is a good strategy to turn_nose_up and slow_down if the current_position_x is within 10 spaces of target_position_x
Put differently,you should turn_nose_up and decrease_speed if you see that the current_position_x close to the target_position_x

if your target_position_x is equal to current_position_x, you will be rewarded 10 for getting close to the target
Put differently, it is a good idea to align your target_position_x and current_position_x since you will get a 10 point reward

you should not turn_nose_right and fire_thrusters if the target is behind you
Put differently, * you should not point the lunar_lander nose right and fire_boosters if you see that the target is behind you

it is a good tactic to *turn_nose_down when you are close to the target_position_y
*Put differently, you should point the lunar_lander nose down when you are close to the target_position_y

--------------------
aggressive paraphrasing, no variables
--------------------
If the landing spot is to the left of the lander, you should turn left then fire thrusters to adjust
Put differently,you should move the position of the lander nose to the left and fire boosters if you see the target is to the right of your current position

if the lander is getting closer to the target position, then you should slow down the lander
Put differently,you should decrease the lander speed if you see that the distance between your lander's current position is approaching the target's position

it is a good strategy to point the lander up and slow down if the lander's current position is within 10 spaces of the lander
Put differently,you should turn the lander's nose up and slow down if you see that the lander is getting closer to the ground

if the lander is directly above the target position, you will be rewarded 10 for getting close to the target
Put differently, it is a good idea to align your lander's x coordinate and target's x coordinate since you will get a 10 point reward

you should not turn the lander's nose to the right and fire the lander boosters if the target is behind you
Put differently,you should 

you will lose the game if you hit the mountain
Put differently, you will win the game if you do not hit the mountain and you place the lander on the target position

the lander must land on the target position in order to win the game
Put differently,

--------------------
aggressive paraphrasing, no variables
--------------------
If the landing spot is to the left of the lander, you should turn left then fire thrusters to adjust
In other words,you should move the position of the lander nose to the left and fire boosters if you see the target is to the right of your current position

if the lander is getting closer to the target position, then you should slow down the lander
In other words,you should decrease the lander speed if you see that the distance between your lander's current position is approaching the target's position

it is a good strategy to point the lander up and slow down if the lander's current position is within 10 spaces of the lander
In other words,you should turn the lander's nose up and slow down if you see that the lander is getting closer to the ground

if the lander is directly above the target position, you will be rewarded 10 for getting close to the target
In other words, it is a good idea to align your lander's x coordinate and target's x coordinate since you will get a 10 point reward

you will lose the game if you hit the mountain
In other words, you will win the game if you do not hit the mountain and you place the lander on the target position


------ OBSERVATIONS ------
- how technical/specific should the NL be? do we assume the model can abstract the correct language?
	- "current_position" is "getting closer" == "current_position - target_position is decreasing"
- not good at generating "original" sentences
- not good at coming up with variations? it will just reuse what i've put as prompts before, but not paraphrase very well

------ notes from will ------
- don't use current_position; use natural language – "your current position"
- is it kosher to use the same model to generate the dataset as we're using to test?
- do we need multiple NL sentences to map to the same RL statement?
- text to program, program back to text
