The pilots of an Air France plane that crashed into the Atlantic in 2009 lacked adequate training, French investigators have found.
France's BEA authority said pilots had failed to discuss repeated stall warnings and did not have the training to deal with the hazard. Air France rejected the accusation.
BEA called for mandatory training in high-altitude stalling for all pilots.
All 228 people on board the Airbus 330 from Brazil to France were killed.
'No passenger alert'
BEA head Jean-Paul Troadec said that "the situation was salvageable" during the flight's final minutes.
Investigators said an account of those minutes, captured on flight recorders, concluded that the crew had failed to "formally identify the loss of altitude" despite an alarm ringing for nearly a minute.
"The first event which triggered it all is the disconnection of the automatic pilot following the loss of the speed indicators, very probably after they were frozen by ice crystals," said Mr Troadec.
"At this time the pilot should have initiated a procedure known as 'Unreliable IAS (indicated air speed)', a procedure which consists of taking an angle of five degrees, but the angle they took was far superior.
"That is why the plane flew upwards, the plane took a rapid vertical flight of 7,000 feet/minute... The angle they took was too much," Mr Troadec said.
The BEA report said the co-pilots in charge of the plane when the emergency began "had received no high-altitude training for unreliable IAS (indicated air speed) procedure and manual air craft handling".
The report also said that the pilots failed to alert passengers to the crisis as they struggled to regain control.
The authority issued 10 new safety recommendations, including mandatory training for all pilots in France to ensure they could handle a high-altitude stall.
A statement from Air France rejected the BEA's findings, saying that "nothing at this stage can allow the crew's technical competence to be blamed" for the crash.
"The crew on duty showed professionalism and stayed committed until the end to operating the flight. Air France salutes their courage and determination in these extreme conditions," it said.
"The altitude-loss alarm was activated and deactivated several times, contradicting the real status of the aircraft, which contributed strongly to the crew's difficulty in analysing the situation," Air France said.
Airbus said it welcomed the report and would give full support to the process, so that the industry could "benefit from any lessons to be learnt from this event".
Air France and Airbus are being investigated for alleged manslaughter in connection with the crash.
"The BEA establishes the facts and makes recommendations based on those facts," AFP quoted Environment and Transport Minister Nathalie Kosciusko-Morizet as saying on RTL radio.
"As to who is responsible, that is up to the courts," she added.
Flight AF 447 went down on 1 June 2009 after running into an intense high-altitude thunderstorm, four hours into a flight from Rio de Janeiro in Brazil to Paris.
The wreckage of the plane was discovered after a long search of 10,000 sq km (3,860 sq miles) of sea floor.